@charset "UTF-8";
/* 
=======================================
Table of Contents
=======================================
*/
/**
 * Foundation for Sites
 * Version 6.9.0
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal.large, .reveal.small, .reveal.tiny, .reveal {
    right: auto;
    left: auto;
    margin: 0 auto;
  }
}
/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

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

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

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: 0;
  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: #fefefe;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

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

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

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

[data-whatinput=mouse] button {
  outline: 0;
}
button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto;
}

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 {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  -webkit-box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
          box-shadow: inset 0 1px 2px rgba(10, 10, 10, 0.1);
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}
[type=text]:focus, [type=password]:focus, [type=date]:focus, [type=datetime]:focus, [type=datetime-local]:focus, [type=month]:focus, [type=week]:focus, [type=email]:focus, [type=number]:focus, [type=search]:focus, [type=tel]:focus, [type=time]:focus, [type=url]:focus, [type=color]:focus,
textarea:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #cacaca;
          box-shadow: 0 0 5px #cacaca;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}

textarea {
  max-width: 100%;
}
textarea[rows] {
  height: auto;
}

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

[type=submit],
[type=button] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border-radius: 0;
}

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

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

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

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

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

::placeholder {
  color: #cacaca;
}

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

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

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

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

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

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

.input-group {
  display: table;
  width: 100%;
  margin-bottom: 1rem;
}
.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;
  display: table-cell;
  vertical-align: middle;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  width: 1%;
  height: 100%;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
}

.input-group-button {
  padding-top: 0;
  padding-bottom: 0;
  text-align: center;
  width: 1%;
  height: 100%;
}
.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  height: 2.4375rem;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 1rem;
}

.input-group .input-group-button {
  display: table-cell;
}

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

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

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

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -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;
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="32" height="24" viewBox="0 0 32 24"><polygon points="0,0 32,0 16,24" style="fill: rgb%28138, 138, 138%29"></polygon></svg>');
}
@media screen and (min-width: 0\0 ) {
  select {
    background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg==");
  }
}
select:focus {
  outline: none;
  border: 1px solid #8a8a8a;
  background-color: #fefefe;
  -webkit-box-shadow: 0 0 5px #cacaca;
          box-shadow: 0 0 5px #cacaca;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
}
select:disabled {
  background-color: #e6e6e6;
  cursor: not-allowed;
}
select::-ms-expand {
  display: none;
}
select[multiple] {
  height: auto;
  background-image: none;
}
select:not([multiple]) {
  padding-top: 0;
  padding-bottom: 0;
}

.is-invalid-input:not(:focus) {
  border-color: #cc4b37;
  background-color: rgb(249, 236.1, 234.1);
}
.is-invalid-input:not(:focus)::-webkit-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::-moz-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus):-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::-ms-input-placeholder {
  color: #cc4b37;
}
.is-invalid-input:not(:focus)::placeholder {
  color: #cc4b37;
}

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

.form-error {
  display: none;
  margin-top: -0.5rem;
  margin-bottom: 1rem;
  font-size: 0.75rem;
  font-weight: bold;
  color: #cc4b37;
}
.form-error.is-visible {
  display: block;
}

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

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

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

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

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

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

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

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

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

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

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

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

@media 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: #1779ba;
  text-decoration: none;
  cursor: pointer;
}
a:hover, a:focus {
  color: rgb(19.78, 104.06, 159.96);
}
a img {
  border: 0;
}

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

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

li {
  font-size: inherit;
}

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

ol {
  margin-left: 1.25rem;
}

ul ul, 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 1rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #cacaca;
}
blockquote, blockquote p {
  line-height: 1.6;
  color: #8a8a8a;
}

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

figure {
  margin: 0;
}

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

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

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

.stat {
  font-size: 2.5rem;
  line-height: 1;
}
p + .stat {
  margin-top: -1rem;
}

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

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

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

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

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

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

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

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

@media 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 #8a8a8a;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  @page {
    margin: 0.5cm;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  .print-break-inside {
    page-break-inside: auto;
  }
}
.row {
  max-width: 75rem;
  margin-right: auto;
  margin-left: auto;
}
.row::before, .row::after {
  display: table;
  content: " ";
}
.row::after {
  clear: both;
}
.row.collapse > .column, .row.collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}
.row .row {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}
@media print, screen and (min-width: 40em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
@media print, screen and (min-width: 64em) {
  .row .row {
    margin-right: -0.9375rem;
    margin-left: -0.9375rem;
  }
}
.row .row.collapse {
  margin-right: 0;
  margin-left: 0;
}
.row.expanded {
  max-width: none;
}
.row.expanded .row {
  margin-right: auto;
  margin-left: auto;
}
.row:not(.expanded) .row {
  max-width: none;
}
.row.gutter-small > .column, .row.gutter-small > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}
.row.gutter-medium > .column, .row.gutter-medium > .columns {
  padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}

.column, .columns {
  float: left;
  width: 100%;
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}
@media print, screen and (min-width: 40em) {
  .column, .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
}
.column, .columns, .column:last-child:not(:first-child) {
  float: left;
  clear: none;
}
.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
  float: right;
}
.column.end:last-child:last-child, .end.columns:last-child:last-child {
  float: left;
}

.column.row.row, .row.row.columns {
  float: none;
}

.row .column.row.row, .row .row.row.columns {
  margin-right: 0;
  margin-left: 0;
  padding-right: 0;
  padding-left: 0;
}

.small-1 {
  width: 8.3333333333%;
}

.small-push-1 {
  position: relative;
  left: 8.3333333333%;
}

.small-pull-1 {
  position: relative;
  left: -8.3333333333%;
}

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

.small-2 {
  width: 16.6666666667%;
}

.small-push-2 {
  position: relative;
  left: 16.6666666667%;
}

.small-pull-2 {
  position: relative;
  left: -16.6666666667%;
}

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

.small-3 {
  width: 25%;
}

.small-push-3 {
  position: relative;
  left: 25%;
}

.small-pull-3 {
  position: relative;
  left: -25%;
}

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

.small-4 {
  width: 33.3333333333%;
}

.small-push-4 {
  position: relative;
  left: 33.3333333333%;
}

.small-pull-4 {
  position: relative;
  left: -33.3333333333%;
}

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

.small-5 {
  width: 41.6666666667%;
}

.small-push-5 {
  position: relative;
  left: 41.6666666667%;
}

.small-pull-5 {
  position: relative;
  left: -41.6666666667%;
}

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

.small-6 {
  width: 50%;
}

.small-push-6 {
  position: relative;
  left: 50%;
}

.small-pull-6 {
  position: relative;
  left: -50%;
}

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

.small-7 {
  width: 58.3333333333%;
}

.small-push-7 {
  position: relative;
  left: 58.3333333333%;
}

.small-pull-7 {
  position: relative;
  left: -58.3333333333%;
}

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

.small-8 {
  width: 66.6666666667%;
}

.small-push-8 {
  position: relative;
  left: 66.6666666667%;
}

.small-pull-8 {
  position: relative;
  left: -66.6666666667%;
}

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

.small-9 {
  width: 75%;
}

.small-push-9 {
  position: relative;
  left: 75%;
}

.small-pull-9 {
  position: relative;
  left: -75%;
}

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

.small-10 {
  width: 83.3333333333%;
}

.small-push-10 {
  position: relative;
  left: 83.3333333333%;
}

.small-pull-10 {
  position: relative;
  left: -83.3333333333%;
}

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

.small-11 {
  width: 91.6666666667%;
}

.small-push-11 {
  position: relative;
  left: 91.6666666667%;
}

.small-pull-11 {
  position: relative;
  left: -91.6666666667%;
}

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

.small-12 {
  width: 100%;
}

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

.small-up-1 > .column, .small-up-1 > .columns {
  float: left;
  width: 100%;
}
.small-up-1 > .column:nth-of-type(1n), .small-up-1 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-1 > .column:nth-of-type(1n+1), .small-up-1 > .columns:nth-of-type(1n+1) {
  clear: both;
}
.small-up-1 > .column:last-child, .small-up-1 > .columns:last-child {
  float: left;
}

.small-up-2 > .column, .small-up-2 > .columns {
  float: left;
  width: 50%;
}
.small-up-2 > .column:nth-of-type(1n), .small-up-2 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-2 > .column:nth-of-type(2n+1), .small-up-2 > .columns:nth-of-type(2n+1) {
  clear: both;
}
.small-up-2 > .column:last-child, .small-up-2 > .columns:last-child {
  float: left;
}

.small-up-3 > .column, .small-up-3 > .columns {
  float: left;
  width: 33.3333333333%;
}
.small-up-3 > .column:nth-of-type(1n), .small-up-3 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-3 > .column:nth-of-type(3n+1), .small-up-3 > .columns:nth-of-type(3n+1) {
  clear: both;
}
.small-up-3 > .column:last-child, .small-up-3 > .columns:last-child {
  float: left;
}

.small-up-4 > .column, .small-up-4 > .columns {
  float: left;
  width: 25%;
}
.small-up-4 > .column:nth-of-type(1n), .small-up-4 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-4 > .column:nth-of-type(4n+1), .small-up-4 > .columns:nth-of-type(4n+1) {
  clear: both;
}
.small-up-4 > .column:last-child, .small-up-4 > .columns:last-child {
  float: left;
}

.small-up-5 > .column, .small-up-5 > .columns {
  float: left;
  width: 20%;
}
.small-up-5 > .column:nth-of-type(1n), .small-up-5 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-5 > .column:nth-of-type(5n+1), .small-up-5 > .columns:nth-of-type(5n+1) {
  clear: both;
}
.small-up-5 > .column:last-child, .small-up-5 > .columns:last-child {
  float: left;
}

.small-up-6 > .column, .small-up-6 > .columns {
  float: left;
  width: 16.6666666667%;
}
.small-up-6 > .column:nth-of-type(1n), .small-up-6 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-6 > .column:nth-of-type(6n+1), .small-up-6 > .columns:nth-of-type(6n+1) {
  clear: both;
}
.small-up-6 > .column:last-child, .small-up-6 > .columns:last-child {
  float: left;
}

.small-up-7 > .column, .small-up-7 > .columns {
  float: left;
  width: 14.2857142857%;
}
.small-up-7 > .column:nth-of-type(1n), .small-up-7 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-7 > .column:nth-of-type(7n+1), .small-up-7 > .columns:nth-of-type(7n+1) {
  clear: both;
}
.small-up-7 > .column:last-child, .small-up-7 > .columns:last-child {
  float: left;
}

.small-up-8 > .column, .small-up-8 > .columns {
  float: left;
  width: 12.5%;
}
.small-up-8 > .column:nth-of-type(1n), .small-up-8 > .columns:nth-of-type(1n) {
  clear: none;
}
.small-up-8 > .column:nth-of-type(8n+1), .small-up-8 > .columns:nth-of-type(8n+1) {
  clear: both;
}
.small-up-8 > .column:last-child, .small-up-8 > .columns:last-child {
  float: left;
}

.small-collapse > .column, .small-collapse > .columns {
  padding-right: 0;
  padding-left: 0;
}
.small-collapse .row {
  margin-right: 0;
  margin-left: 0;
}

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

.small-uncollapse > .column, .small-uncollapse > .columns {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
}

.small-centered {
  margin-left: auto;
  margin-right: auto;
}
.small-centered, .small-centered:last-child:not(:first-child) {
  float: none;
  clear: both;
}

.small-uncentered, .small-push-0, .small-pull-0 {
  position: static;
  margin-right: 0;
  margin-left: 0;
}
.small-uncentered, .small-uncentered:last-child:not(:first-child), .small-push-0, .small-push-0:last-child:not(:first-child), .small-pull-0, .small-pull-0:last-child:not(:first-child) {
  float: left;
  clear: none;
}
.small-uncentered:last-child:not(:first-child), .small-push-0:last-child:not(:first-child), .small-pull-0:last-child:not(:first-child) {
  float: right;
}

@media print, screen and (min-width: 40em) {
  .medium-1 {
    width: 8.3333333333%;
  }
  .medium-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .medium-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .medium-offset-0 {
    margin-left: 0%;
  }
  .medium-2 {
    width: 16.6666666667%;
  }
  .medium-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .medium-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .medium-offset-1 {
    margin-left: 8.3333333333%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
  }
  .medium-pull-3 {
    position: relative;
    left: -25%;
  }
  .medium-offset-2 {
    margin-left: 16.6666666667%;
  }
  .medium-4 {
    width: 33.3333333333%;
  }
  .medium-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .medium-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .medium-offset-3 {
    margin-left: 25%;
  }
  .medium-5 {
    width: 41.6666666667%;
  }
  .medium-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .medium-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .medium-offset-4 {
    margin-left: 33.3333333333%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
  }
  .medium-pull-6 {
    position: relative;
    left: -50%;
  }
  .medium-offset-5 {
    margin-left: 41.6666666667%;
  }
  .medium-7 {
    width: 58.3333333333%;
  }
  .medium-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .medium-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .medium-offset-6 {
    margin-left: 50%;
  }
  .medium-8 {
    width: 66.6666666667%;
  }
  .medium-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .medium-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .medium-offset-7 {
    margin-left: 58.3333333333%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
  }
  .medium-pull-9 {
    position: relative;
    left: -75%;
  }
  .medium-offset-8 {
    margin-left: 66.6666666667%;
  }
  .medium-10 {
    width: 83.3333333333%;
  }
  .medium-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .medium-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .medium-offset-9 {
    margin-left: 75%;
  }
  .medium-11 {
    width: 91.6666666667%;
  }
  .medium-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .medium-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .medium-offset-10 {
    margin-left: 83.3333333333%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-11 {
    margin-left: 91.6666666667%;
  }
  .medium-up-1 > .column, .medium-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .medium-up-1 > .column:nth-of-type(1n), .medium-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-1 > .column:nth-of-type(1n+1), .medium-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .medium-up-1 > .column:last-child, .medium-up-1 > .columns:last-child {
    float: left;
  }
  .medium-up-2 > .column, .medium-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .medium-up-2 > .column:nth-of-type(1n), .medium-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-2 > .column:nth-of-type(2n+1), .medium-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .medium-up-2 > .column:last-child, .medium-up-2 > .columns:last-child {
    float: left;
  }
  .medium-up-3 > .column, .medium-up-3 > .columns {
    float: left;
    width: 33.3333333333%;
  }
  .medium-up-3 > .column:nth-of-type(1n), .medium-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-3 > .column:nth-of-type(3n+1), .medium-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .medium-up-3 > .column:last-child, .medium-up-3 > .columns:last-child {
    float: left;
  }
  .medium-up-4 > .column, .medium-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .medium-up-4 > .column:nth-of-type(1n), .medium-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-4 > .column:nth-of-type(4n+1), .medium-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .medium-up-4 > .column:last-child, .medium-up-4 > .columns:last-child {
    float: left;
  }
  .medium-up-5 > .column, .medium-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .medium-up-5 > .column:nth-of-type(1n), .medium-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-5 > .column:nth-of-type(5n+1), .medium-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .medium-up-5 > .column:last-child, .medium-up-5 > .columns:last-child {
    float: left;
  }
  .medium-up-6 > .column, .medium-up-6 > .columns {
    float: left;
    width: 16.6666666667%;
  }
  .medium-up-6 > .column:nth-of-type(1n), .medium-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-6 > .column:nth-of-type(6n+1), .medium-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .medium-up-6 > .column:last-child, .medium-up-6 > .columns:last-child {
    float: left;
  }
  .medium-up-7 > .column, .medium-up-7 > .columns {
    float: left;
    width: 14.2857142857%;
  }
  .medium-up-7 > .column:nth-of-type(1n), .medium-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-7 > .column:nth-of-type(7n+1), .medium-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .medium-up-7 > .column:last-child, .medium-up-7 > .columns:last-child {
    float: left;
  }
  .medium-up-8 > .column, .medium-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .medium-up-8 > .column:nth-of-type(1n), .medium-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .medium-up-8 > .column:nth-of-type(8n+1), .medium-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .medium-up-8 > .column:last-child, .medium-up-8 > .columns:last-child {
    float: left;
  }
  .medium-collapse > .column, .medium-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .medium-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .medium-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .medium-uncollapse > .column, .medium-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
  .medium-centered {
    margin-left: auto;
    margin-right: auto;
  }
  .medium-centered, .medium-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .medium-uncentered, .medium-push-0, .medium-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0;
  }
  .medium-uncentered, .medium-uncentered:last-child:not(:first-child), .medium-push-0, .medium-push-0:last-child:not(:first-child), .medium-pull-0, .medium-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none;
  }
  .medium-uncentered:last-child:not(:first-child), .medium-push-0:last-child:not(:first-child), .medium-pull-0:last-child:not(:first-child) {
    float: right;
  }
}
@media print, screen and (min-width: 64em) {
  .large-1 {
    width: 8.3333333333%;
  }
  .large-push-1 {
    position: relative;
    left: 8.3333333333%;
  }
  .large-pull-1 {
    position: relative;
    left: -8.3333333333%;
  }
  .large-offset-0 {
    margin-left: 0%;
  }
  .large-2 {
    width: 16.6666666667%;
  }
  .large-push-2 {
    position: relative;
    left: 16.6666666667%;
  }
  .large-pull-2 {
    position: relative;
    left: -16.6666666667%;
  }
  .large-offset-1 {
    margin-left: 8.3333333333%;
  }
  .large-3 {
    width: 25%;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
  }
  .large-pull-3 {
    position: relative;
    left: -25%;
  }
  .large-offset-2 {
    margin-left: 16.6666666667%;
  }
  .large-4 {
    width: 33.3333333333%;
  }
  .large-push-4 {
    position: relative;
    left: 33.3333333333%;
  }
  .large-pull-4 {
    position: relative;
    left: -33.3333333333%;
  }
  .large-offset-3 {
    margin-left: 25%;
  }
  .large-5 {
    width: 41.6666666667%;
  }
  .large-push-5 {
    position: relative;
    left: 41.6666666667%;
  }
  .large-pull-5 {
    position: relative;
    left: -41.6666666667%;
  }
  .large-offset-4 {
    margin-left: 33.3333333333%;
  }
  .large-6 {
    width: 50%;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
  }
  .large-pull-6 {
    position: relative;
    left: -50%;
  }
  .large-offset-5 {
    margin-left: 41.6666666667%;
  }
  .large-7 {
    width: 58.3333333333%;
  }
  .large-push-7 {
    position: relative;
    left: 58.3333333333%;
  }
  .large-pull-7 {
    position: relative;
    left: -58.3333333333%;
  }
  .large-offset-6 {
    margin-left: 50%;
  }
  .large-8 {
    width: 66.6666666667%;
  }
  .large-push-8 {
    position: relative;
    left: 66.6666666667%;
  }
  .large-pull-8 {
    position: relative;
    left: -66.6666666667%;
  }
  .large-offset-7 {
    margin-left: 58.3333333333%;
  }
  .large-9 {
    width: 75%;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
  }
  .large-pull-9 {
    position: relative;
    left: -75%;
  }
  .large-offset-8 {
    margin-left: 66.6666666667%;
  }
  .large-10 {
    width: 83.3333333333%;
  }
  .large-push-10 {
    position: relative;
    left: 83.3333333333%;
  }
  .large-pull-10 {
    position: relative;
    left: -83.3333333333%;
  }
  .large-offset-9 {
    margin-left: 75%;
  }
  .large-11 {
    width: 91.6666666667%;
  }
  .large-push-11 {
    position: relative;
    left: 91.6666666667%;
  }
  .large-pull-11 {
    position: relative;
    left: -91.6666666667%;
  }
  .large-offset-10 {
    margin-left: 83.3333333333%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-11 {
    margin-left: 91.6666666667%;
  }
  .large-up-1 > .column, .large-up-1 > .columns {
    float: left;
    width: 100%;
  }
  .large-up-1 > .column:nth-of-type(1n), .large-up-1 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-1 > .column:nth-of-type(1n+1), .large-up-1 > .columns:nth-of-type(1n+1) {
    clear: both;
  }
  .large-up-1 > .column:last-child, .large-up-1 > .columns:last-child {
    float: left;
  }
  .large-up-2 > .column, .large-up-2 > .columns {
    float: left;
    width: 50%;
  }
  .large-up-2 > .column:nth-of-type(1n), .large-up-2 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-2 > .column:nth-of-type(2n+1), .large-up-2 > .columns:nth-of-type(2n+1) {
    clear: both;
  }
  .large-up-2 > .column:last-child, .large-up-2 > .columns:last-child {
    float: left;
  }
  .large-up-3 > .column, .large-up-3 > .columns {
    float: left;
    width: 33.3333333333%;
  }
  .large-up-3 > .column:nth-of-type(1n), .large-up-3 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-3 > .column:nth-of-type(3n+1), .large-up-3 > .columns:nth-of-type(3n+1) {
    clear: both;
  }
  .large-up-3 > .column:last-child, .large-up-3 > .columns:last-child {
    float: left;
  }
  .large-up-4 > .column, .large-up-4 > .columns {
    float: left;
    width: 25%;
  }
  .large-up-4 > .column:nth-of-type(1n), .large-up-4 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-4 > .column:nth-of-type(4n+1), .large-up-4 > .columns:nth-of-type(4n+1) {
    clear: both;
  }
  .large-up-4 > .column:last-child, .large-up-4 > .columns:last-child {
    float: left;
  }
  .large-up-5 > .column, .large-up-5 > .columns {
    float: left;
    width: 20%;
  }
  .large-up-5 > .column:nth-of-type(1n), .large-up-5 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-5 > .column:nth-of-type(5n+1), .large-up-5 > .columns:nth-of-type(5n+1) {
    clear: both;
  }
  .large-up-5 > .column:last-child, .large-up-5 > .columns:last-child {
    float: left;
  }
  .large-up-6 > .column, .large-up-6 > .columns {
    float: left;
    width: 16.6666666667%;
  }
  .large-up-6 > .column:nth-of-type(1n), .large-up-6 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-6 > .column:nth-of-type(6n+1), .large-up-6 > .columns:nth-of-type(6n+1) {
    clear: both;
  }
  .large-up-6 > .column:last-child, .large-up-6 > .columns:last-child {
    float: left;
  }
  .large-up-7 > .column, .large-up-7 > .columns {
    float: left;
    width: 14.2857142857%;
  }
  .large-up-7 > .column:nth-of-type(1n), .large-up-7 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-7 > .column:nth-of-type(7n+1), .large-up-7 > .columns:nth-of-type(7n+1) {
    clear: both;
  }
  .large-up-7 > .column:last-child, .large-up-7 > .columns:last-child {
    float: left;
  }
  .large-up-8 > .column, .large-up-8 > .columns {
    float: left;
    width: 12.5%;
  }
  .large-up-8 > .column:nth-of-type(1n), .large-up-8 > .columns:nth-of-type(1n) {
    clear: none;
  }
  .large-up-8 > .column:nth-of-type(8n+1), .large-up-8 > .columns:nth-of-type(8n+1) {
    clear: both;
  }
  .large-up-8 > .column:last-child, .large-up-8 > .columns:last-child {
    float: left;
  }
  .large-collapse > .column, .large-collapse > .columns {
    padding-right: 0;
    padding-left: 0;
  }
  .large-collapse .row {
    margin-right: 0;
    margin-left: 0;
  }
  .expanded.row .large-collapse.row {
    margin-right: 0;
    margin-left: 0;
  }
  .large-uncollapse > .column, .large-uncollapse > .columns {
    padding-right: 0.9375rem;
    padding-left: 0.9375rem;
  }
  .large-centered {
    margin-left: auto;
    margin-right: auto;
  }
  .large-centered, .large-centered:last-child:not(:first-child) {
    float: none;
    clear: both;
  }
  .large-uncentered, .large-push-0, .large-pull-0 {
    position: static;
    margin-right: 0;
    margin-left: 0;
  }
  .large-uncentered, .large-uncentered:last-child:not(:first-child), .large-push-0, .large-push-0:last-child:not(:first-child), .large-pull-0, .large-pull-0:last-child:not(:first-child) {
    float: left;
    clear: none;
  }
  .large-uncentered:last-child:not(:first-child), .large-push-0:last-child:not(:first-child), .large-pull-0:last-child:not(:first-child) {
    float: right;
  }
}
.column-block {
  margin-bottom: 1.25rem;
}
.column-block > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .column-block {
    margin-bottom: 1.875rem;
  }
  .column-block > :last-child {
    margin-bottom: 0;
  }
}

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  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;
  padding: 0.85em 1em;
}
[data-whatinput=mouse] .button {
  outline: 0;
}
.button.tiny {
  font-size: 0.6rem;
}
.button.small {
  font-size: 0.75rem;
}
.button.large {
  font-size: 1.25rem;
}
.button.expanded {
  display: block;
  width: 100%;
  margin-right: 0;
  margin-left: 0;
}
.button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button:hover, .button:focus {
  background-color: rgb(19.55, 102.85, 158.1);
  color: #fefefe;
}
.button.primary, .button.primary.disabled, .button.primary[disabled], .button.primary.disabled:hover, .button.primary[disabled]:hover, .button.primary.disabled:focus, .button.primary[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button.primary:hover, .button.primary:focus {
  background-color: rgb(18.4, 96.8, 148.8);
  color: #fefefe;
}
.button.secondary, .button.secondary.disabled, .button.secondary[disabled], .button.secondary.disabled:hover, .button.secondary[disabled]:hover, .button.secondary.disabled:focus, .button.secondary[disabled]:focus {
  background-color: #767676;
  color: #fefefe;
}
.button.secondary:hover, .button.secondary:focus {
  background-color: rgb(94.4, 94.4, 94.4);
  color: #fefefe;
}
.button.success, .button.success.disabled, .button.success[disabled], .button.success.disabled:hover, .button.success[disabled]:hover, .button.success.disabled:focus, .button.success[disabled]:focus {
  background-color: #3adb76;
  color: #0a0a0a;
}
.button.success:hover, .button.success:focus {
  background-color: rgb(34.2386266094, 187.3613733906, 91.3030042918);
  color: #0a0a0a;
}
.button.warning, .button.warning.disabled, .button.warning[disabled], .button.warning.disabled:hover, .button.warning[disabled]:hover, .button.warning.disabled:focus, .button.warning[disabled]:focus {
  background-color: #ffae00;
  color: #0a0a0a;
}
.button.warning:hover, .button.warning:focus {
  background-color: rgb(204, 139.2, 0);
  color: #0a0a0a;
}
.button.alert, .button.alert.disabled, .button.alert[disabled], .button.alert.disabled:hover, .button.alert[disabled]:hover, .button.alert.disabled:focus, .button.alert[disabled]:focus {
  background-color: #cc4b37;
  color: #fefefe;
}
.button.alert:hover, .button.alert:focus {
  background-color: rgb(165.0996015936, 58.6103585657, 42.1003984064);
  color: #fefefe;
}
.button.hollow, .button.hollow:hover, .button.hollow:focus, .button.hollow.disabled, .button.hollow.disabled:hover, .button.hollow.disabled:focus, .button.hollow[disabled], .button.hollow[disabled]:hover, .button.hollow[disabled]:focus {
  background-color: transparent;
}
.button.hollow, .button.hollow.disabled, .button.hollow[disabled], .button.hollow.disabled:hover, .button.hollow[disabled]:hover, .button.hollow.disabled:focus, .button.hollow[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow:hover, .button.hollow:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button.hollow.primary, .button.hollow.primary.disabled, .button.hollow.primary[disabled], .button.hollow.primary.disabled:hover, .button.hollow.primary[disabled]:hover, .button.hollow.primary.disabled:focus, .button.hollow.primary[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button.hollow.primary:hover, .button.hollow.primary:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button.hollow.secondary, .button.hollow.secondary.disabled, .button.hollow.secondary[disabled], .button.hollow.secondary.disabled:hover, .button.hollow.secondary[disabled]:hover, .button.hollow.secondary.disabled:focus, .button.hollow.secondary[disabled]:focus {
  border: 1px solid #767676;
  color: #767676;
}
.button.hollow.secondary:hover, .button.hollow.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button.hollow.success, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button.hollow.success:hover, .button.hollow.success:focus {
  border-color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button.hollow.warning, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button.hollow.warning:hover, .button.hollow.warning:focus {
  border-color: rgb(127.5, 87, 0);
  color: rgb(127.5, 87, 0);
}
.button.hollow.alert, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button.hollow.alert:hover, .button.hollow.alert:focus {
  border-color: rgb(103.187250996, 36.6314741036, 26.312749004);
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button.clear, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
  color: #1779ba;
}
.button.clear:hover, .button.clear:focus {
  color: rgb(11.5, 60.5, 93);
}
.button.clear.primary, .button.clear.primary.disabled, .button.clear.primary[disabled], .button.clear.primary.disabled:hover, .button.clear.primary[disabled]:hover, .button.clear.primary.disabled:focus, .button.clear.primary[disabled]:focus {
  color: #1779ba;
}
.button.clear.primary:hover, .button.clear.primary:focus {
  color: rgb(11.5, 60.5, 93);
}
.button.clear.secondary, .button.clear.secondary.disabled, .button.clear.secondary[disabled], .button.clear.secondary.disabled:hover, .button.clear.secondary[disabled]:hover, .button.clear.secondary.disabled:focus, .button.clear.secondary[disabled]:focus {
  color: #767676;
}
.button.clear.secondary:hover, .button.clear.secondary:focus {
  color: #3b3b3b;
}
.button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus {
  color: #3adb76;
}
.button.clear.success:hover, .button.clear.success:focus {
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus {
  color: #ffae00;
}
.button.clear.warning:hover, .button.clear.warning:focus {
  color: rgb(127.5, 87, 0);
}
.button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus {
  color: #cc4b37;
}
.button.clear.alert:hover, .button.clear.alert:focus {
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.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: #1779ba;
}
.button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
  border-top-color: #1779ba;
}
.button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
  border-top-color: #767676;
}
.button.dropdown.hollow.success::after, .button.dropdown.clear.success::after {
  border-top-color: #3adb76;
}
.button.dropdown.hollow.warning::after, .button.dropdown.clear.warning::after {
  border-top-color: #ffae00;
}
.button.dropdown.hollow.alert::after, .button.dropdown.clear.alert::after {
  border-top-color: #cc4b37;
}
.button.arrow-only::after {
  top: -0.1em;
  float: none;
  margin-left: 0;
}

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

.button-group {
  margin-bottom: 1rem;
  font-size: 0;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
}
.button-group::after {
  clear: both;
}
.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded {
  margin-right: -1px;
}
.button-group.expanded::before, .button-group.expanded::after {
  display: none;
}
.button-group.expanded .button:first-child:last-child {
  width: calc(100% - 1px);
}
.button-group.expanded .button:first-child:nth-last-child(2), .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(2):last-child, .button-group.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(3), .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.3333333333% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(3):last-child, .button-group.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(4), .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(4):last-child, .button-group.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(5), .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(5):last-child, .button-group.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.expanded .button:first-child:nth-last-child(6), .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.6666666667% - 1px);
  margin-right: 1px;
}
.button-group.expanded .button:first-child:nth-last-child(6):last-child, .button-group.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.primary .button, .button-group.primary .button.disabled, .button-group.primary .button[disabled], .button-group.primary .button.disabled:hover, .button-group.primary .button[disabled]:hover, .button-group.primary .button.disabled:focus, .button-group.primary .button[disabled]:focus {
  background-color: #1779ba;
  color: #fefefe;
}
.button-group.primary .button:hover, .button-group.primary .button:focus {
  background-color: rgb(18.4, 96.8, 148.8);
  color: #fefefe;
}
.button-group.secondary .button, .button-group.secondary .button.disabled, .button-group.secondary .button[disabled], .button-group.secondary .button.disabled:hover, .button-group.secondary .button[disabled]:hover, .button-group.secondary .button.disabled:focus, .button-group.secondary .button[disabled]:focus {
  background-color: #767676;
  color: #fefefe;
}
.button-group.secondary .button:hover, .button-group.secondary .button:focus {
  background-color: rgb(94.4, 94.4, 94.4);
  color: #fefefe;
}
.button-group.success .button, .button-group.success .button.disabled, .button-group.success .button[disabled], .button-group.success .button.disabled:hover, .button-group.success .button[disabled]:hover, .button-group.success .button.disabled:focus, .button-group.success .button[disabled]:focus {
  background-color: #3adb76;
  color: #0a0a0a;
}
.button-group.success .button:hover, .button-group.success .button:focus {
  background-color: rgb(34.2386266094, 187.3613733906, 91.3030042918);
  color: #0a0a0a;
}
.button-group.warning .button, .button-group.warning .button.disabled, .button-group.warning .button[disabled], .button-group.warning .button.disabled:hover, .button-group.warning .button[disabled]:hover, .button-group.warning .button.disabled:focus, .button-group.warning .button[disabled]:focus {
  background-color: #ffae00;
  color: #0a0a0a;
}
.button-group.warning .button:hover, .button-group.warning .button:focus {
  background-color: rgb(204, 139.2, 0);
  color: #0a0a0a;
}
.button-group.alert .button, .button-group.alert .button.disabled, .button-group.alert .button[disabled], .button-group.alert .button.disabled:hover, .button-group.alert .button[disabled]:hover, .button-group.alert .button.disabled:focus, .button-group.alert .button[disabled]:focus {
  background-color: #cc4b37;
  color: #fefefe;
}
.button-group.alert .button:hover, .button-group.alert .button:focus {
  background-color: rgb(165.0996015936, 58.6103585657, 42.1003984064);
  color: #fefefe;
}
.button-group.hollow .button, .button-group.hollow .button:hover, .button-group.hollow .button:focus, .button-group.hollow .button.disabled, .button-group.hollow .button.disabled:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled], .button-group.hollow .button[disabled]:hover, .button-group.hollow .button[disabled]:focus {
  background-color: transparent;
}
.button-group.hollow .button, .button-group.hollow .button.disabled, .button-group.hollow .button[disabled], .button-group.hollow .button.disabled:hover, .button-group.hollow .button[disabled]:hover, .button-group.hollow .button.disabled:focus, .button-group.hollow .button[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button-group.hollow .button:hover, .button-group.hollow .button:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button-group.hollow.primary .button, .button-group.hollow.primary .button.disabled, .button-group.hollow.primary .button[disabled], .button-group.hollow.primary .button.disabled:hover, .button-group.hollow.primary .button[disabled]:hover, .button-group.hollow.primary .button.disabled:focus, .button-group.hollow.primary .button[disabled]:focus, .button-group.hollow .button.primary, .button-group.hollow .button.primary.disabled, .button-group.hollow .button.primary[disabled], .button-group.hollow .button.primary.disabled:hover, .button-group.hollow .button.primary[disabled]:hover, .button-group.hollow .button.primary.disabled:focus, .button-group.hollow .button.primary[disabled]:focus {
  border: 1px solid #1779ba;
  color: #1779ba;
}
.button-group.hollow.primary .button:hover, .button-group.hollow.primary .button:focus, .button-group.hollow .button.primary:hover, .button-group.hollow .button.primary:focus {
  border-color: rgb(11.5, 60.5, 93);
  color: rgb(11.5, 60.5, 93);
}
.button-group.hollow.secondary .button, .button-group.hollow.secondary .button.disabled, .button-group.hollow.secondary .button[disabled], .button-group.hollow.secondary .button.disabled:hover, .button-group.hollow.secondary .button[disabled]:hover, .button-group.hollow.secondary .button.disabled:focus, .button-group.hollow.secondary .button[disabled]:focus, .button-group.hollow .button.secondary, .button-group.hollow .button.secondary.disabled, .button-group.hollow .button.secondary[disabled], .button-group.hollow .button.secondary.disabled:hover, .button-group.hollow .button.secondary[disabled]:hover, .button-group.hollow .button.secondary.disabled:focus, .button-group.hollow .button.secondary[disabled]:focus {
  border: 1px solid #767676;
  color: #767676;
}
.button-group.hollow.secondary .button:hover, .button-group.hollow.secondary .button:focus, .button-group.hollow .button.secondary:hover, .button-group.hollow .button.secondary:focus {
  border-color: #3b3b3b;
  color: #3b3b3b;
}
.button-group.hollow.success .button, .button-group.hollow.success .button.disabled, .button-group.hollow.success .button[disabled], .button-group.hollow.success .button.disabled:hover, .button-group.hollow.success .button[disabled]:hover, .button-group.hollow.success .button.disabled:focus, .button-group.hollow.success .button[disabled]:focus, .button-group.hollow .button.success, .button-group.hollow .button.success.disabled, .button-group.hollow .button.success[disabled], .button-group.hollow .button.success.disabled:hover, .button-group.hollow .button.success[disabled]:hover, .button-group.hollow .button.success.disabled:focus, .button-group.hollow .button.success[disabled]:focus {
  border: 1px solid #3adb76;
  color: #3adb76;
}
.button-group.hollow.success .button:hover, .button-group.hollow.success .button:focus, .button-group.hollow .button.success:hover, .button-group.hollow .button.success:focus {
  border-color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button-group.hollow.warning .button, .button-group.hollow.warning .button.disabled, .button-group.hollow.warning .button[disabled], .button-group.hollow.warning .button.disabled:hover, .button-group.hollow.warning .button[disabled]:hover, .button-group.hollow.warning .button.disabled:focus, .button-group.hollow.warning .button[disabled]:focus, .button-group.hollow .button.warning, .button-group.hollow .button.warning.disabled, .button-group.hollow .button.warning[disabled], .button-group.hollow .button.warning.disabled:hover, .button-group.hollow .button.warning[disabled]:hover, .button-group.hollow .button.warning.disabled:focus, .button-group.hollow .button.warning[disabled]:focus {
  border: 1px solid #ffae00;
  color: #ffae00;
}
.button-group.hollow.warning .button:hover, .button-group.hollow.warning .button:focus, .button-group.hollow .button.warning:hover, .button-group.hollow .button.warning:focus {
  border-color: rgb(127.5, 87, 0);
  color: rgb(127.5, 87, 0);
}
.button-group.hollow.alert .button, .button-group.hollow.alert .button.disabled, .button-group.hollow.alert .button[disabled], .button-group.hollow.alert .button.disabled:hover, .button-group.hollow.alert .button[disabled]:hover, .button-group.hollow.alert .button.disabled:focus, .button-group.hollow.alert .button[disabled]:focus, .button-group.hollow .button.alert, .button-group.hollow .button.alert.disabled, .button-group.hollow .button.alert[disabled], .button-group.hollow .button.alert.disabled:hover, .button-group.hollow .button.alert[disabled]:hover, .button-group.hollow .button.alert.disabled:focus, .button-group.hollow .button.alert[disabled]:focus {
  border: 1px solid #cc4b37;
  color: #cc4b37;
}
.button-group.hollow.alert .button:hover, .button-group.hollow.alert .button:focus, .button-group.hollow .button.alert:hover, .button-group.hollow .button.alert:focus {
  border-color: rgb(103.187250996, 36.6314741036, 26.312749004);
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button-group.clear .button, .button-group.clear .button:hover, .button-group.clear .button:focus, .button-group.clear .button.disabled, .button-group.clear .button.disabled:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled], .button-group.clear .button[disabled]:hover, .button-group.clear .button[disabled]:focus {
  border-color: transparent;
  background-color: transparent;
}
.button-group.clear .button, .button-group.clear .button.disabled, .button-group.clear .button[disabled], .button-group.clear .button.disabled:hover, .button-group.clear .button[disabled]:hover, .button-group.clear .button.disabled:focus, .button-group.clear .button[disabled]:focus {
  color: #1779ba;
}
.button-group.clear .button:hover, .button-group.clear .button:focus {
  color: rgb(11.5, 60.5, 93);
}
.button-group.clear.primary .button, .button-group.clear.primary .button.disabled, .button-group.clear.primary .button[disabled], .button-group.clear.primary .button.disabled:hover, .button-group.clear.primary .button[disabled]:hover, .button-group.clear.primary .button.disabled:focus, .button-group.clear.primary .button[disabled]:focus, .button-group.clear .button.primary, .button-group.clear .button.primary.disabled, .button-group.clear .button.primary[disabled], .button-group.clear .button.primary.disabled:hover, .button-group.clear .button.primary[disabled]:hover, .button-group.clear .button.primary.disabled:focus, .button-group.clear .button.primary[disabled]:focus {
  color: #1779ba;
}
.button-group.clear.primary .button:hover, .button-group.clear.primary .button:focus, .button-group.clear .button.primary:hover, .button-group.clear .button.primary:focus {
  color: rgb(11.5, 60.5, 93);
}
.button-group.clear.secondary .button, .button-group.clear.secondary .button.disabled, .button-group.clear.secondary .button[disabled], .button-group.clear.secondary .button.disabled:hover, .button-group.clear.secondary .button[disabled]:hover, .button-group.clear.secondary .button.disabled:focus, .button-group.clear.secondary .button[disabled]:focus, .button-group.clear .button.secondary, .button-group.clear .button.secondary.disabled, .button-group.clear .button.secondary[disabled], .button-group.clear .button.secondary.disabled:hover, .button-group.clear .button.secondary[disabled]:hover, .button-group.clear .button.secondary.disabled:focus, .button-group.clear .button.secondary[disabled]:focus {
  color: #767676;
}
.button-group.clear.secondary .button:hover, .button-group.clear.secondary .button:focus, .button-group.clear .button.secondary:hover, .button-group.clear .button.secondary:focus {
  color: #3b3b3b;
}
.button-group.clear.success .button, .button-group.clear.success .button.disabled, .button-group.clear.success .button[disabled], .button-group.clear.success .button.disabled:hover, .button-group.clear.success .button[disabled]:hover, .button-group.clear.success .button.disabled:focus, .button-group.clear.success .button[disabled]:focus, .button-group.clear .button.success, .button-group.clear .button.success.disabled, .button-group.clear .button.success[disabled], .button-group.clear .button.success.disabled:hover, .button-group.clear .button.success[disabled]:hover, .button-group.clear .button.success.disabled:focus, .button-group.clear .button.success[disabled]:focus {
  color: #3adb76;
}
.button-group.clear.success .button:hover, .button-group.clear.success .button:focus, .button-group.clear .button.success:hover, .button-group.clear .button.success:focus {
  color: rgb(21.3991416309, 117.1008583691, 57.0643776824);
}
.button-group.clear.warning .button, .button-group.clear.warning .button.disabled, .button-group.clear.warning .button[disabled], .button-group.clear.warning .button.disabled:hover, .button-group.clear.warning .button[disabled]:hover, .button-group.clear.warning .button.disabled:focus, .button-group.clear.warning .button[disabled]:focus, .button-group.clear .button.warning, .button-group.clear .button.warning.disabled, .button-group.clear .button.warning[disabled], .button-group.clear .button.warning.disabled:hover, .button-group.clear .button.warning[disabled]:hover, .button-group.clear .button.warning.disabled:focus, .button-group.clear .button.warning[disabled]:focus {
  color: #ffae00;
}
.button-group.clear.warning .button:hover, .button-group.clear.warning .button:focus, .button-group.clear .button.warning:hover, .button-group.clear .button.warning:focus {
  color: rgb(127.5, 87, 0);
}
.button-group.clear.alert .button, .button-group.clear.alert .button.disabled, .button-group.clear.alert .button[disabled], .button-group.clear.alert .button.disabled:hover, .button-group.clear.alert .button[disabled]:hover, .button-group.clear.alert .button.disabled:focus, .button-group.clear.alert .button[disabled]:focus, .button-group.clear .button.alert, .button-group.clear .button.alert.disabled, .button-group.clear .button.alert[disabled], .button-group.clear .button.alert.disabled:hover, .button-group.clear .button.alert[disabled]:hover, .button-group.clear .button.alert.disabled:focus, .button-group.clear .button.alert[disabled]:focus {
  color: #cc4b37;
}
.button-group.clear.alert .button:hover, .button-group.clear.alert .button:focus, .button-group.clear .button.alert:hover, .button-group.clear .button.alert:focus {
  color: rgb(103.187250996, 36.6314741036, 26.312749004);
}
.button-group.no-gaps .button {
  margin-right: -0.0625rem;
}
.button-group.no-gaps .button + .button {
  border-left-color: transparent;
}
.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  width: 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded, .button-group.stacked-for-small.expanded, .button-group.stacked-for-medium.expanded {
  margin-right: -1px;
}
.button-group.stacked.expanded::before, .button-group.stacked.expanded::after, .button-group.stacked-for-small.expanded::before, .button-group.stacked-for-small.expanded::after, .button-group.stacked-for-medium.expanded::before, .button-group.stacked-for-medium.expanded::after {
  display: none;
}
.button-group.stacked.expanded .button:first-child:last-child, .button-group.stacked-for-small.expanded .button:first-child:last-child, .button-group.stacked-for-medium.expanded .button:first-child:last-child {
  width: calc(100% - 1px);
}
.button-group.stacked.expanded .button:first-child:nth-last-child(2), .button-group.stacked.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button {
  display: inline-block;
  width: calc(50% - 1px);
  margin-right: 1px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(2):first-child:nth-last-child(2) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(3), .button-group.stacked.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button {
  display: inline-block;
  width: calc(33.3333333333% - 1px);
  margin-right: 1px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(3):first-child:nth-last-child(3) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(4), .button-group.stacked.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button {
  display: inline-block;
  width: calc(25% - 1px);
  margin-right: 1px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(4):first-child:nth-last-child(4) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(5), .button-group.stacked.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button {
  display: inline-block;
  width: calc(20% - 1px);
  margin-right: 1px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(5):first-child:nth-last-child(5) ~ .button:last-child {
  margin-right: -6px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(6), .button-group.stacked.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6), .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6), .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button {
  display: inline-block;
  width: calc(16.6666666667% - 1px);
  margin-right: 1px;
}
.button-group.stacked.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked-for-small.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):last-child, .button-group.stacked-for-medium.expanded .button:first-child:nth-last-child(6):first-child:nth-last-child(6) ~ .button:last-child {
  margin-right: -6px;
}
@media print, screen and (min-width: 40em) {
  .button-group.stacked-for-small .button {
    width: auto;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    width: auto;
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .button-group.stacked-for-small.expanded {
    display: block;
  }
  .button-group.stacked-for-small.expanded .button {
    display: block;
    margin-right: 0;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .button-group.stacked-for-medium.expanded {
    display: block;
  }
  .button-group.stacked-for-medium.expanded .button {
    display: block;
    margin-right: 0;
  }
}

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

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

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

.progress {
  height: 1rem;
  margin-bottom: 1rem;
  border-radius: 0;
  background-color: #cacaca;
}
.progress.primary .progress-meter {
  background-color: #1779ba;
}
.progress.secondary .progress-meter {
  background-color: #767676;
}
.progress.success .progress-meter {
  background-color: #3adb76;
}
.progress.warning .progress-meter {
  background-color: #ffae00;
}
.progress.alert .progress-meter {
  background-color: #cc4b37;
}

.progress-meter {
  position: relative;
  display: block;
  width: 0%;
  height: 100%;
  background-color: #1779ba;
}

.progress-meter-text {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  margin: 0;
  font-size: 0.75rem;
  font-weight: bold;
  color: #fefefe;
  white-space: nowrap;
}

.slider {
  position: relative;
  height: 0.5rem;
  margin-top: 1.25rem;
  margin-bottom: 2.25rem;
  background-color: #e6e6e6;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  -ms-touch-action: none;
      touch-action: none;
}

.slider-fill {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  max-width: 100%;
  height: 0.5rem;
  background-color: #cacaca;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.slider-fill.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
}

.slider-handle {
  left: 0;
  z-index: 1;
  cursor: -webkit-grab;
  cursor: grab;
  display: inline-block;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 0;
  background-color: #1779ba;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
[data-whatinput=mouse] .slider-handle {
  outline: 0;
}
.slider-handle:hover {
  background-color: rgb(19.55, 102.85, 158.1);
}
.slider-handle.is-dragging {
  -webkit-transition: all 0s linear;
  transition: all 0s linear;
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

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

.slider.vertical {
  display: inline-block;
  width: 0.5rem;
  height: 12.5rem;
  margin: 0 1.25rem;
  -webkit-transform: scale(1, -1);
          transform: scale(1, -1);
}
.slider.vertical .slider-fill {
  top: 0;
  width: 0.5rem;
  max-height: 100%;
}
.slider.vertical .slider-handle {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1.4rem;
  height: 1.4rem;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.switch {
  position: relative;
  margin-bottom: 1rem;
  outline: 0;
  font-size: 0.875rem;
  font-weight: bold;
  color: #fefefe;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  height: 2rem;
}

.switch-input {
  position: absolute;
  margin-bottom: 0;
  opacity: 0;
}

.switch-paddle {
  position: relative;
  display: block;
  width: 4rem;
  height: 2rem;
  border-radius: 0;
  background: #cacaca;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  font-weight: inherit;
  color: inherit;
  cursor: pointer;
}
input + .switch-paddle {
  margin: 0;
}
.switch-paddle::after {
  position: absolute;
  top: 0.25rem;
  left: 0.25rem;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  border-radius: 0;
  background: #fefefe;
  -webkit-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  content: "";
}
input:checked ~ .switch-paddle {
  background: #1779ba;
}
input:checked ~ .switch-paddle::after {
  left: 2.25rem;
}
input:focus-visible ~ .switch-paddle {
  background: rgb(181.8, 181.8, 181.8);
}
input:focus-visible ~ .switch-paddle::after {
  background: #fefefe;
}
input:checked:focus-visible ~ .switch-paddle {
  background: rgb(19.55, 102.85, 158.1);
}
input:disabled ~ .switch-paddle {
  cursor: not-allowed;
  opacity: 0.5;
}
[data-whatinput=mouse] input:focus ~ .switch-paddle {
  outline: 0;
}

.switch-inactive, .switch-active {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.switch-active {
  left: 8%;
  display: none;
}
input:checked + label > .switch-active {
  display: block;
}

.switch-inactive {
  right: 15%;
}
input:checked + label > .switch-inactive {
  display: none;
}

.switch.tiny {
  height: 1.5rem;
}
.switch.tiny .switch-paddle {
  width: 3rem;
  height: 1.5rem;
  font-size: 0.625rem;
}
.switch.tiny .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 1rem;
  height: 1rem;
}
.switch.tiny input:checked ~ .switch-paddle::after {
  left: 1.75rem;
}

.switch.small {
  height: 1.75rem;
}
.switch.small .switch-paddle {
  width: 3.5rem;
  height: 1.75rem;
  font-size: 0.75rem;
}
.switch.small .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 1.25rem;
  height: 1.25rem;
}
.switch.small input:checked ~ .switch-paddle::after {
  left: 2rem;
}

.switch.large {
  height: 2.5rem;
}
.switch.large .switch-paddle {
  width: 5rem;
  height: 2.5rem;
  font-size: 1rem;
}
.switch.large .switch-paddle::after {
  top: 0.25rem;
  left: 0.25rem;
  width: 2rem;
  height: 2rem;
}
.switch.large input:checked ~ .switch-paddle::after {
  left: 2.75rem;
}

table {
  border-collapse: collapse;
  width: 100%;
  margin-bottom: 1rem;
  border-radius: 0;
}
thead,
tbody,
tfoot {
  border: 1px solid rgb(241.3, 241.3, 241.3);
  background-color: #fefefe;
}

caption {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
}

thead {
  background: rgb(247.65, 247.65, 247.65);
  color: #0a0a0a;
}

tfoot {
  background: rgb(241.3, 241.3, 241.3);
  color: #0a0a0a;
}

thead tr,
tfoot tr {
  background: transparent;
}
thead th,
thead td,
tfoot th,
tfoot td {
  padding: 0.5rem 0.625rem 0.625rem;
  font-weight: bold;
  text-align: left;
}

tbody th,
tbody td {
  padding: 0.5rem 0.625rem 0.625rem;
}

tbody tr:nth-child(even) {
  border-bottom: 0;
  background-color: rgb(241.3, 241.3, 241.3);
}

table.unstriped tbody {
  background-color: #fefefe;
}
table.unstriped tbody tr {
  border-bottom: 1px solid rgb(241.3, 241.3, 241.3);
  background-color: #fefefe;
}

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

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

table.hover thead tr:hover {
  background-color: rgb(242.55, 242.55, 242.55);
}
table.hover tfoot tr:hover {
  background-color: rgb(236.2, 236.2, 236.2);
}
table.hover tbody tr:hover {
  background-color: rgb(248.9, 248.9, 248.9);
}
table.hover:not(.unstriped) tr:nth-of-type(even):hover {
  background-color: rgb(236.15, 236.15, 236.15);
}

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

.badge {
  display: inline-block;
  min-width: 2.1em;
  padding: 0.3em;
  border-radius: 50%;
  font-size: 0.6rem;
  text-align: center;
  background: #1779ba;
  color: #fefefe;
}
.badge.primary {
  background: #1779ba;
  color: #fefefe;
}
.badge.secondary {
  background: #767676;
  color: #fefefe;
}
.badge.success {
  background: #3adb76;
  color: #0a0a0a;
}
.badge.warning {
  background: #ffae00;
  color: #0a0a0a;
}
.badge.alert {
  background: #cc4b37;
  color: #fefefe;
}

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

.callout {
  background-color: rgb(254.85, 254.85, 254.85);
  color: #0a0a0a;
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 1px solid rgba(10, 10, 10, 0.25);
  border-radius: 0;
}
.callout > :first-child {
  margin-top: 0;
}
.callout > :last-child {
  margin-bottom: 0;
}
.callout.primary {
  background-color: rgb(214.8186602871, 235.9894736842, 250.0313397129);
  color: #0a0a0a;
}
.callout.secondary {
  background-color: rgb(234.45, 234.45, 234.45);
  color: #0a0a0a;
}
.callout.success {
  background-color: rgb(225.45, 249.6, 234.45);
  color: #0a0a0a;
}
.callout.warning {
  background-color: rgb(255, 242.85, 216.75);
  color: #0a0a0a;
}
.callout.alert {
  background-color: rgb(247.35, 228, 225);
  color: #0a0a0a;
}
.callout.small {
  padding-top: 0.5rem;
  padding-right: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 0.5rem;
}
.callout.large {
  padding-top: 3rem;
  padding-right: 3rem;
  padding-bottom: 3rem;
  padding-left: 3rem;
}

.card {
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
  border-radius: 0;
  background: #fefefe;
  -webkit-box-shadow: none;
          box-shadow: none;
  overflow: hidden;
  color: #0a0a0a;
}
.card > :last-child {
  margin-bottom: 0;
}

.card-divider {
  padding: 1rem;
  background: #e6e6e6;
}
.card-divider > :last-child {
  margin-bottom: 0;
}

.card-section {
  padding: 1rem;
}
.card-section > :last-child {
  margin-bottom: 0;
}

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

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

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

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

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

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}
.pagination::before, .pagination::after {
  display: table;
  content: " ";
}
.pagination::after {
  clear: both;
}
.pagination li {
  margin-right: 0.0625rem;
  border-radius: 0;
  font-size: 0.875rem;
  display: none;
}
.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}
@media print, screen and (min-width: 40em) {
  .pagination li {
    display: inline-block;
  }
}
.pagination a,
.pagination button {
  display: block;
  padding: 0.1875rem 0.625rem;
  border-radius: 0;
  color: #0a0a0a;
}
.pagination a:hover,
.pagination button:hover {
  background: #e6e6e6;
}
.pagination .current {
  padding: 0.1875rem 0.625rem;
  background: #1779ba;
  color: #fefefe;
  cursor: default;
}
.pagination .disabled {
  padding: 0.1875rem 0.625rem;
  color: #cacaca;
  cursor: not-allowed;
}
.pagination .disabled:hover {
  background: transparent;
}
.pagination .ellipsis::after {
  padding: 0.1875rem 0.625rem;
  content: "…";
  color: #0a0a0a;
}

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

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

.has-tip {
  position: relative;
  display: inline-block;
  border-bottom: dotted 1px #8a8a8a;
  font-weight: bold;
  cursor: help;
}

.tooltip {
  position: absolute;
  top: calc(100% + 0.6495rem);
  z-index: 1200;
  max-width: 10rem;
  padding: 0.75rem;
  border-radius: 0;
  background-color: #0a0a0a;
  font-size: 80%;
  color: #fefefe;
}
.tooltip::before {
  position: absolute;
}
.tooltip.bottom::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-top-width: 0;
  border-color: transparent transparent #0a0a0a;
  bottom: 100%;
}
.tooltip.bottom.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.tooltip.top::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-bottom-width: 0;
  border-color: #0a0a0a transparent transparent;
  top: 100%;
  bottom: auto;
}
.tooltip.top.align-center::before {
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.tooltip.left::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #0a0a0a;
  left: 100%;
}
.tooltip.left.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tooltip.right::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.75rem;
  content: "";
  border-left-width: 0;
  border-color: transparent #0a0a0a transparent transparent;
  right: 100%;
  left: auto;
}
.tooltip.right.align-center::before {
  bottom: auto;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.tooltip.align-top::before {
  bottom: auto;
  top: 10%;
}
.tooltip.align-bottom::before {
  bottom: 10%;
  top: auto;
}
.tooltip.align-left::before {
  left: 10%;
  right: auto;
}
.tooltip.align-right::before {
  left: auto;
  right: 10%;
}

.accordion {
  margin-left: 0;
  background: #fefefe;
  list-style-type: none;
}
.accordion[disabled] .accordion-title {
  cursor: not-allowed;
}

.accordion-item:first-child > :first-child {
  border-radius: 0 0 0 0;
}
.accordion-item:last-child > :last-child {
  border-radius: 0 0 0 0;
}

.accordion-title {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
:last-child:not(.is-active) > .accordion-title {
  border-bottom: 1px solid #e6e6e6;
  border-radius: 0 0 0 0;
}
.accordion-title:hover, .accordion-title:focus {
  background-color: #e6e6e6;
}
.accordion-title::before {
  position: absolute;
  top: 50%;
  right: 1rem;
  margin-top: -0.5rem;
  content: "+";
}
.is-active > .accordion-title::before {
  content: "–";
}

.accordion-content {
  display: none;
  padding: 1rem;
  border: 1px solid #e6e6e6;
  border-bottom: 0;
  background-color: #fefefe;
  color: #0a0a0a;
}
:last-child > .accordion-content:last-child {
  border-bottom: 1px solid #e6e6e6;
}

.media-object {
  display: block;
  margin-bottom: 1rem;
}
.media-object img {
  max-width: none;
}

.media-object-section {
  display: table-cell;
  vertical-align: top;
}
.media-object-section:first-child {
  padding-right: 1rem;
}
.media-object-section:last-child:not(:nth-child(2)) {
  padding-left: 1rem;
}
.media-object-section > :last-child {
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .stack-for-small .media-object-section {
    padding: 0;
    padding-bottom: 1rem;
    display: block;
  }
  .stack-for-small .media-object-section img {
    width: 100%;
  }
}
.media-object-section.middle {
  vertical-align: middle;
}
.media-object-section.bottom {
  vertical-align: bottom;
}

.orbit {
  position: relative;
}

.orbit-container {
  position: relative;
  height: 0;
  margin: 0;
  list-style: none;
  overflow: hidden;
}

.orbit-slide {
  width: 100%;
  position: absolute;
}
.orbit-slide.no-motionui.is-active {
  top: 0;
  left: 0;
}

.orbit-figure {
  margin: 0;
}

.orbit-image {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.orbit-caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  padding: 1rem;
  background-color: rgba(10, 10, 10, 0.5);
  color: #fefefe;
}

.orbit-next, .orbit-previous {
  z-index: 10;
  padding: 1rem;
  color: #fefefe;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
[data-whatinput=mouse] .orbit-next, [data-whatinput=mouse] .orbit-previous {
  outline: 0;
}
.orbit-next:hover, .orbit-previous:hover, .orbit-next:active, .orbit-previous:active, .orbit-next:focus, .orbit-previous:focus {
  background-color: rgba(10, 10, 10, 0.5);
}

.orbit-previous {
  left: 0;
}

.orbit-next {
  left: auto;
  right: 0;
}

.orbit-bullets {
  position: relative;
  margin-top: 0.8rem;
  margin-bottom: 0.8rem;
  text-align: center;
}
[data-whatinput=mouse] .orbit-bullets {
  outline: 0;
}
.orbit-bullets button {
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.1rem;
  border-radius: 50%;
  background-color: #cacaca;
}
.orbit-bullets button:hover {
  background-color: #8a8a8a;
}
.orbit-bullets button.is-active {
  background-color: #8a8a8a;
}

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

.tabs {
  margin: 0;
  border: 1px solid #e6e6e6;
  background: #fefefe;
  list-style-type: none;
}
.tabs::before, .tabs::after {
  display: table;
  content: " ";
}
.tabs::after {
  clear: both;
}

.tabs.vertical > li {
  display: block;
  float: none;
  width: auto;
}

.tabs.simple > li > a {
  padding: 0;
}
.tabs.simple > li > a:hover {
  background: transparent;
}

.tabs.primary {
  background: #1779ba;
}
.tabs.primary > li > a {
  color: #fefefe;
}
.tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
  background: rgb(21.85, 114.95, 176.7);
}

.tabs-title {
  float: left;
}
.tabs-title > a {
  display: block;
  padding: 1.25rem 1.5rem;
  font-size: 0.75rem;
  line-height: 1;
  color: #1779ba;
}
[data-whatinput=mouse] .tabs-title > a {
  outline: 0;
}
.tabs-title > a:hover {
  background: #fefefe;
  color: rgb(19.78, 104.06, 159.96);
}
.tabs-title > a:focus, .tabs-title > a[aria-selected=true] {
  background: #e6e6e6;
  color: #1779ba;
}

.tabs-content {
  border: 1px solid #e6e6e6;
  border-top: 0;
  background: #fefefe;
  color: #0a0a0a;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}

.tabs-content.vertical {
  border: 1px solid #e6e6e6;
  border-left: 0;
}

.tabs-panel {
  display: none;
  padding: 1rem;
}
.tabs-panel.is-active {
  display: block;
}

.thumbnail {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  border: solid 4px #fefefe;
  border-radius: 0;
  -webkit-box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
          box-shadow: 0 0 0 1px rgba(10, 10, 10, 0.2);
  line-height: 0;
}

a.thumbnail {
  -webkit-transition: -webkit-box-shadow 200ms ease-out;
  transition: -webkit-box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out;
  transition: box-shadow 200ms ease-out, -webkit-box-shadow 200ms ease-out;
}
a.thumbnail:hover, a.thumbnail:focus {
  -webkit-box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
          box-shadow: 0 0 6px 1px rgba(23, 121, 186, 0.5);
}
a.thumbnail image {
  -webkit-box-shadow: none;
          box-shadow: none;
}

.menu {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative;
}
[data-whatinput=mouse] .menu li {
  outline: 0;
}
.menu a,
.menu .button {
  line-height: 1;
  text-decoration: none;
  display: block;
  padding: 0.7rem 1rem;
}
.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}
.menu input {
  display: inline-block;
}
.menu li, .menu.horizontal li {
  display: inline-block;
}
.menu.vertical li {
  display: block;
}
.menu.expanded {
  display: table;
  width: 100%;
}
.menu.expanded > li {
  display: table-cell;
  vertical-align: middle;
}
.menu.simple li + li {
  margin-left: 1rem;
}
.menu.simple a {
  padding: 0;
}
@media print, screen and (min-width: 40em) {
  .menu.medium-horizontal li {
    display: inline-block;
  }
  .menu.medium-vertical li {
    display: block;
  }
  .menu.medium-expanded {
    display: table;
    width: 100%;
  }
  .menu.medium-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.medium-simple {
    display: table;
    width: 100%;
  }
  .menu.medium-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}
@media print, screen and (min-width: 64em) {
  .menu.large-horizontal li {
    display: inline-block;
  }
  .menu.large-vertical li {
    display: block;
  }
  .menu.large-expanded {
    display: table;
    width: 100%;
  }
  .menu.large-expanded > li {
    display: table-cell;
    vertical-align: middle;
  }
  .menu.large-simple {
    display: table;
    width: 100%;
  }
  .menu.large-simple > li {
    display: table-cell;
    vertical-align: middle;
  }
}
.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.icons img,
.menu.icons i,
.menu.icons svg {
  vertical-align: middle;
}
.menu.icons img + span,
.menu.icons i + span,
.menu.icons svg + span {
  vertical-align: middle;
}
.menu.icon-top img,
.menu.icon-top i,
.menu.icon-top svg, .menu.icon-right img,
.menu.icon-right i,
.menu.icon-right svg, .menu.icon-bottom img,
.menu.icon-bottom i,
.menu.icon-bottom svg, .menu.icon-left img,
.menu.icon-left i,
.menu.icon-left svg {
  vertical-align: middle;
}
.menu.icon-top img + span,
.menu.icon-top i + span,
.menu.icon-top svg + span, .menu.icon-right img + span,
.menu.icon-right i + span,
.menu.icon-right svg + span, .menu.icon-bottom img + span,
.menu.icon-bottom i + span,
.menu.icon-bottom svg + span, .menu.icon-left img + span,
.menu.icon-left i + span,
.menu.icon-left svg + span {
  vertical-align: middle;
}
.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg, .menu.nested.icon-left li a img,
.menu.nested.icon-left li a i,
.menu.nested.icon-left li a svg {
  margin-right: 0.25rem;
  display: inline-block;
}
.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg, .menu.nested.icon-right li a img,
.menu.nested.icon-right li a i,
.menu.nested.icon-right li a svg {
  margin-left: 0.25rem;
  display: inline-block;
}
.menu.icon-top li a, .menu.nested.icon-top li a {
  text-align: center;
}
.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg, .menu.nested.icon-top li a img,
.menu.nested.icon-top li a i,
.menu.nested.icon-top li a svg {
  display: block;
  margin: 0 auto 0.25rem;
}
.menu.icon-bottom li a, .menu.nested.icon-bottom li a {
  text-align: center;
}
.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg, .menu.nested.icon-bottom li a img,
.menu.nested.icon-bottom li a i,
.menu.nested.icon-bottom li a svg {
  display: block;
  margin: 0.25rem auto 0;
}
.menu .is-active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu .active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu.align-left {
  text-align: left;
}
.menu.align-right {
  text-align: right;
}
.menu.align-right .submenu li {
  text-align: left;
}
.menu.align-right.vertical .submenu li {
  text-align: right;
}
.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}
.menu.align-center {
  text-align: center;
}
.menu.align-center .submenu li {
  text-align: left;
}
.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

.menu-centered > .menu {
  text-align: center;
}
.menu-centered > .menu .submenu li {
  text-align: left;
}

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

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

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

.accordion-menu li {
  width: 100%;
}
.accordion-menu a {
  padding: 0.7rem 1rem;
}
.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem;
}
.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem;
}
.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-bottom-width: 0;
  border-color: #1779ba transparent transparent;
  position: absolute;
  top: 50%;
  margin-top: -3px;
  right: 1rem;
}
.accordion-menu.align-left .is-accordion-submenu-parent > a::after {
  right: 1rem;
  left: auto;
}
.accordion-menu.align-right .is-accordion-submenu-parent > a::after {
  right: auto;
  left: 1rem;
}
.accordion-menu .is-accordion-submenu-parent[aria-expanded=true] > a::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

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

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

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

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

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

.is-drilldown {
  position: relative;
  overflow: hidden;
}
.is-drilldown li {
  display: block;
}
.is-drilldown.animate-height {
  -webkit-transition: height 0.5s;
  transition: height 0.5s;
}

.drilldown a {
  padding: 0.7rem 1rem;
  background: #fefefe;
}
.drilldown .is-drilldown-submenu {
  position: absolute;
  top: 0;
  left: 100%;
  z-index: -1;
  width: 100%;
  background: #fefefe;
  -webkit-transition: -webkit-transform 0.15s linear;
  transition: -webkit-transform 0.15s linear;
  transition: transform 0.15s linear;
  transition: transform 0.15s linear, -webkit-transform 0.15s linear;
}
.drilldown .is-drilldown-submenu.is-active {
  z-index: 1;
  display: block;
  -webkit-transform: translateX(-100%);
          transform: translateX(-100%);
}
.drilldown .is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
}
.drilldown .is-drilldown-submenu a {
  padding: 0.7rem 1rem;
}
.drilldown .nested.is-drilldown-submenu {
  margin-right: 0;
  margin-left: 0;
}
.drilldown .drilldown-submenu-cover-previous {
  min-height: 100%;
}
.drilldown .is-drilldown-submenu-parent > a {
  position: relative;
}
.drilldown .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
  position: absolute;
  top: 50%;
  margin-top: -6px;
  right: 1rem;
}
.drilldown.align-left .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
  right: 1rem;
  left: auto;
}
.drilldown.align-right .is-drilldown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 1rem;
}
.drilldown .js-drilldown-back > a::before {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.75rem;
}

.dropdown.menu > li.opens-left > .is-dropdown-submenu {
  top: 100%;
  right: 0;
  left: auto;
}
.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 100%;
  right: auto;
  left: 0;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a {
  position: relative;
  padding-right: 1.5rem;
}
.dropdown.menu > li.is-dropdown-submenu-parent > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-bottom-width: 0;
  border-color: #1779ba transparent transparent;
  right: 5px;
  left: auto;
  margin-top: -3px;
}
[data-whatinput=mouse] .dropdown.menu a {
  outline: 0;
}
.dropdown.menu > li > a {
  background: #fefefe;
  padding: 0.7rem 1rem;
}
.dropdown.menu > li.is-active > a {
  background: transparent;
  color: #1779ba;
}
.no-js .dropdown.menu ul {
  display: none;
}
.dropdown.menu .nested.is-dropdown-submenu {
  margin-right: 0;
  margin-left: 0;
}
.dropdown.menu.vertical > li .is-dropdown-submenu {
  top: 0;
}
.dropdown.menu.vertical > li.opens-left > .is-dropdown-submenu {
  top: 0;
  right: 100%;
  left: auto;
}
.dropdown.menu.vertical > li.opens-right > .is-dropdown-submenu {
  right: auto;
  left: 100%;
}
.dropdown.menu.vertical > li > a::after {
  right: 14px;
}
.dropdown.menu.vertical > li.opens-left > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-left-width: 0;
  border-color: transparent #1779ba transparent transparent;
  right: auto;
  left: 5px;
}
.dropdown.menu.vertical > li.opens-right > a::after {
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px;
  content: "";
  border-right-width: 0;
  border-color: transparent transparent transparent #1779ba;
}
@media print, screen and (min-width: 40em) {
  .dropdown.menu.medium-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.medium-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.medium-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-bottom-width: 0;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px;
  }
  .dropdown.menu.medium-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.medium-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto;
  }
  .dropdown.menu.medium-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.medium-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.medium-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-left-width: 0;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.medium-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-right-width: 0;
    border-color: transparent transparent transparent #1779ba;
  }
}
@media print, screen and (min-width: 64em) {
  .dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
    top: 100%;
    right: 0;
    left: auto;
  }
  .dropdown.menu.large-horizontal > li.opens-right > .is-dropdown-submenu {
    top: 100%;
    right: auto;
    left: 0;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
    position: relative;
    padding-right: 1.5rem;
  }
  .dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-bottom-width: 0;
    border-color: #1779ba transparent transparent;
    right: 5px;
    left: auto;
    margin-top: -3px;
  }
  .dropdown.menu.large-vertical > li .is-dropdown-submenu {
    top: 0;
  }
  .dropdown.menu.large-vertical > li.opens-left > .is-dropdown-submenu {
    top: 0;
    right: 100%;
    left: auto;
  }
  .dropdown.menu.large-vertical > li.opens-right > .is-dropdown-submenu {
    right: auto;
    left: 100%;
  }
  .dropdown.menu.large-vertical > li > a::after {
    right: 14px;
  }
  .dropdown.menu.large-vertical > li.opens-left > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-left-width: 0;
    border-color: transparent #1779ba transparent transparent;
    right: auto;
    left: 5px;
  }
  .dropdown.menu.large-vertical > li.opens-right > a::after {
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px;
    content: "";
    border-right-width: 0;
    border-color: transparent transparent transparent #1779ba;
  }
}
.dropdown.menu.align-right .is-dropdown-submenu.first-sub {
  top: 100%;
  right: 0;
  left: auto;
}

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

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

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

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(254, 254, 254, 0.25);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}
.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}
.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}
.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}
.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e6e6e6;
  position: fixed;
}
[data-whatinput=mouse] .off-canvas {
  outline: 0;
}
.off-canvas.is-transition-push {
  z-index: 12;
}
.off-canvas.is-closed {
  visibility: hidden;
}
.off-canvas.is-transition-overlap {
  z-index: 13;
}
.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}
.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-absolute {
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  background: #e6e6e6;
  position: absolute;
}
[data-whatinput=mouse] .off-canvas-absolute {
  outline: 0;
}
.off-canvas-absolute.is-transition-push {
  z-index: 12;
}
.off-canvas-absolute.is-closed {
  visibility: hidden;
}
.off-canvas-absolute.is-transition-overlap {
  z-index: 13;
}
.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}
.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  width: 250px;
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}
@media print, screen and (min-width: 40em) {
  .position-left {
    width: 250px;
    -webkit-transform: translateX(-250px);
            transform: translateX(-250px);
  }
}
.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-250px);
            transform: translateX(-250px);
  }
}
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(250px);
            transform: translateX(250px);
  }
}

.position-left.is-transition-push {
  -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  width: 250px;
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}
@media print, screen and (min-width: 40em) {
  .position-right {
    width: 250px;
    -webkit-transform: translateX(250px);
            transform: translateX(250px);
  }
}
.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content .off-canvas.position-right {
    -webkit-transform: translateX(250px);
            transform: translateX(250px);
  }
}
.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content.is-open-right.has-transition-push {
    -webkit-transform: translateX(-250px);
            transform: translateX(-250px);
  }
}

.position-right.is-transition-push {
  -webkit-box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}
@media print, screen and (min-width: 40em) {
  .position-top {
    height: 250px;
    -webkit-transform: translateY(-250px);
            transform: translateY(-250px);
  }
}
.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-250px);
            transform: translateY(-250px);
  }
}
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content.is-open-top.has-transition-push {
    -webkit-transform: translateY(250px);
            transform: translateY(250px);
  }
}

.position-top.is-transition-push {
  -webkit-box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}
@media print, screen and (min-width: 40em) {
  .position-bottom {
    height: 250px;
    -webkit-transform: translateY(250px);
            transform: translateY(250px);
  }
}
.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY(250px);
            transform: translateY(250px);
  }
}
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}
@media print, screen and (min-width: 40em) {
  .off-canvas-content.is-open-bottom.has-transition-push {
    -webkit-transform: translateY(-250px);
            transform: translateY(-250px);
  }
}

.position-bottom.is-transition-push {
  -webkit-box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
}

.off-canvas-content {
  -webkit-transform: none;
          transform: none;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.off-canvas-content.has-transition-overlap, .off-canvas-content.has-transition-push {
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}
.off-canvas-content.has-transition-push {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
  .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-medium .close-button {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: none;
    width: auto;
    overflow: visible;
    -webkit-transition: none;
    transition: none;
  }
  .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}
html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden;
}
html.is-reveal-open.zf-has-scroll {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
html.is-reveal-open body {
  overflow-y: hidden;
}

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

.reveal {
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
}
[data-whatinput=mouse] .reveal {
  outline: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column, .reveal .columns {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal {
    width: 600px;
    max-width: 75rem;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 40em) {
  .reveal.tiny {
    width: 30%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 40em) {
  .reveal.small {
    width: 50%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 40em) {
  .reveal.large {
    width: 90%;
    max-width: 75rem;
  }
}
.reveal.full {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  min-height: 100%;
  margin-left: 0;
  border: 0;
  border-radius: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .reveal {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0;
  }
}
.reveal.without-overlay {
  position: fixed;
}

.sticky-container {
  position: relative;
}

.sticky {
  position: relative;
  z-index: 0;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.sticky.is-stuck {
  position: fixed;
  z-index: 5;
  width: 100%;
}
.sticky.is-stuck.is-at-top {
  top: 0;
}
.sticky.is-stuck.is-at-bottom {
  bottom: 0;
}

.sticky.is-anchored {
  position: relative;
  right: auto;
  left: auto;
}
.sticky.is-anchored.is-at-bottom {
  bottom: 0;
}

.title-bar {
  padding: 0.5rem;
  background: #0a0a0a;
  color: #fefefe;
}
.title-bar::before, .title-bar::after {
  display: table;
  content: " ";
}
.title-bar::after {
  clear: both;
}
.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left {
  float: left;
}

.title-bar-right {
  float: right;
  text-align: right;
}

.title-bar-title {
  display: inline-block;
  vertical-align: middle;
  font-weight: bold;
}

.top-bar {
  padding: 0.5rem;
}
.top-bar::before, .top-bar::after {
  display: table;
  content: " ";
}
.top-bar::after {
  clear: both;
}
.top-bar,
.top-bar ul {
  background-color: #e6e6e6;
}
.top-bar input {
  max-width: 200px;
  margin-right: 1rem;
}
.top-bar .input-group-field {
  width: 100%;
  margin-right: 0;
}
.top-bar input.button {
  width: auto;
}

.top-bar .top-bar-left,
.top-bar .top-bar-right {
  width: 100%;
}

@media print, screen and (min-width: 40em) {
  .top-bar .top-bar-left,
  .top-bar .top-bar-right {
    width: auto;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    width: 100%;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    width: 100%;
  }
}

.top-bar-title {
  display: inline-block;
  float: left;
  padding: 0.5rem 1rem 0.5rem 0;
}
.top-bar-title .menu-icon {
  bottom: 2px;
}

.top-bar-left {
  float: left;
}

.top-bar-right {
  float: right;
}

.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: " ";
}
.clearfix::after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Icons */
@font-face {
  font-family: "slick";
  src: url("./fonts/slick.eot");
  src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"), url("./fonts/slick.woff") format("woff"), url("./fonts/slick.ttf") format("truetype"), url("./fonts/slick.svg#slick") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -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: 20px;
  line-height: 1;
  color: white;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

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

.slick-next {
  right: -25px;
}
[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: -25px;
  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;
}
.slick-dots li button {
  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: 6px;
  line-height: 20px;
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before {
  color: black;
  opacity: 0.75;
}

.slick-loading .slick-list {
  background: #fff url("./../images/vendors/ajax-loader.gif") center center no-repeat;
}

/* 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;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  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;
}

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
      user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}
.mfp-preloader a {
  color: #CCC;
}
.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
          box-shadow: none;
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
}
.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-arrow:active {
  margin-top: -54px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
}
.mfp-arrow:before, .mfp-arrow:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}
.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}
.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}
.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px;
}
.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
  right: 0;
}
.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}
.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}
.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}
.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}
.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
   * Remove all paddings around the image on small screen
   */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
/* ==========================================================================
   1. General (Foundation Overrides)
   ========================================================================== */
/* ==========================================================================
   1. General (Foundation Overrides)
   ========================================================================== */
body {
  font-family: "Roboto", sans-serif;
  color: #0a0a0a;
  font-weight: 400;
  line-height: 1.7;
  margin: 0;
}
body.slide-active {
  overflow-x: hidden;
}
body {
  opacity: 1;
  -webkit-transition-duration: 0.7s;
          transition-duration: 0.7s;
  -webkit-transition-property: opacity;
  transition-property: opacity;
}
body.fade {
  opacity: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  margin-bottom: 1rem;
  color: #0a0a0a;
  text-transform: capitalize;
}

h1 {
  font-size: 2.25rem;
  line-height: 1;
}
@media print, screen and (min-width: 64em) {
  h1 {
    font-size: 4.5rem;
  }
}

h2 {
  font-size: 2rem;
}
@media print, screen and (min-width: 64em) {
  h2 {
    font-size: 2.5rem;
  }
}

h4 {
  text-transform: uppercase;
  color: #eb212e;
  font-size: 1.5rem;
}

p {
  color: #0a0a0a;
}

a {
  color: #eb212e;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
a:hover {
  color: #666666;
}

ul,
ol {
  margin-right: 0;
  margin-bottom: 0;
}

ul {
  list-style: none;
}

table {
  min-width: 100%;
  margin-bottom: 0;
  border: 0;
}

table tr td,
table thead tr th {
  text-align: center;
}

table thead tr th {
  color: #fefefe;
  background: #707070;
}

.bg-img {
  background-color: #333;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hidden {
  display: none !important;
}

.product-paragraph {
  color: #000;
  margin-bottom: 0.5rem;
  text-align: left;
  margin-right: 1rem;
}

.info--limit {
  line-height: 1.2em;
  overflow: hidden;
  margin-bottom: 0;
}
.info--height {
  height: 6em;
}

.parallax {
  position: relative;
  overflow: hidden;
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .parallax {
    display: none;
  }
}
.parallax h1,
.parallax h2 {
  position: relative;
  padding: 3rem;
  top: 25%;
  color: #fefefe;
}
@media print, screen and (min-width: 64em) {
  .parallax h1,
  .parallax h2 {
    padding: 4.5rem 5.4375rem;
  }
}
.parallax h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  background-color: rgba(0, 0, 0, 0.5);
  margin-bottom: 0;
  letter-spacing: -0.35rem;
}
@media print, screen and (min-width: 64em) {
  .parallax h1 {
    font-size: 6.5rem;
  }
}
.parallax h1 .title {
  margin-right: 1rem;
}
.parallax h1 .subtitle {
  color: #eb212e;
  font-style: normal;
  font-weight: 500;
  font-size: 2.5rem;
  letter-spacing: -3px;
  text-transform: uppercase;
}
.parallax h1 .subtitle span {
  color: #fefefe;
  font-weight: 300;
  font-size: 2.5rem;
  text-transform: lowercase;
}
.parallax .img {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #333;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
.parallax .img .bg-top {
  background-position: center top;
}
.parallax .img:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
}

.white-popup {
  background: #fefefe;
  margin: 20px auto;
  max-width: 400px;
  padding: 20px;
  position: relative;
  width: auto;
}
.white-popup .popup-header {
  font-size: 1.2rem;
}
.white-popup .button-group {
  margin-bottom: 0;
  overflow: auto;
}

.no-results {
  color: #0a0a0a;
  font-size: 2rem;
  font-weight: 400;
  text-transform: uppercase;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  z-index: 10;
  color: white;
  display: none;
}
.overlay--nav {
  display: block;
  top: 3.2rem;
}

.primary {
  color: #eb212e;
}

.primary-bg {
  background-color: #eb212e;
}

.primary-btn {
  border-radius: 4px;
  padding: 0.8rem 1.9rem;
  margin: 0;
  font-weight: 700;
}
.primary-btn a {
  color: #fefefe;
}

.red-bg {
  background-color: #eb212e;
}

.black-font {
  color: #333;
}

.red {
  color: #eb212e;
}

.white {
  color: #fefefe;
}

.button {
  max-width: 166px;
  width: 100%;
  border-radius: 100px;
  font-size: 0.7rem;
  letter-spacing: unset;
  font-weight: 600;
  padding: 0.75rem;
  border: 2px solid #0a0a0a;
  background-color: #0a0a0a;
}
.button:hover {
  border-color: #666666;
}

.no-margin {
  margin-bottom: 0;
}

.button.secondary {
  background-color: #e7e7e7;
  color: #323232;
}

.black,
.button.black {
  background-color: #000000;
}

.button,
.text-uppercase {
  text-transform: uppercase;
}

.button-group .button {
  padding-right: 0;
  padding-left: 0;
}

.font-light {
  font-weight: 300;
}

.font-normal {
  font-weight: 400;
}

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

.font-heavy {
  font-weight: 900;
}

.font-italic {
  font-style: italic;
}

.g-recaptcha {
  margin-bottom: 0.5rem;
  display: inline-block;
}

#captchaCheck {
  float: left;
  margin-left: 1rem;
  text-transform: uppercase;
}

.padded {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.padded.extra {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.padded.short {
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.padded-left {
  padding-left: 0.5rem;
}

.padded-right {
  padding-right: 0.5rem;
}

.container-padding--b {
  padding-bottom: 4rem;
}

.accordion .accordion-navigation > .content {
  padding-right: 0;
  padding-left: 0;
}

.accordion-item:first-child > :first-child {
  font-weight: 700;
}

.anchor {
  position: relative;
  top: -3rem;
  display: block;
  visibility: hidden;
}

.full-width {
  width: 100%;
  max-width: 100%;
}

.menu.simple > li > a {
  padding: 0;
}

.fixed {
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
}

.title-bar,
.top-bar {
  padding: 0;
}

.top-bar,
.top-bar ul {
  background-color: transparent;
}

.top-bar ul.is-dropdown-submenu {
  background-color: rgb(255, 255, 255);
  border: 0px;
}

.dropdown.menu .is-dropdown-submenu-parent.is-down-arrow > a::after {
  right: 0px;
}

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

.dropdown.menu > li.is-dropdown-submenu-parent > a:after {
  border-color: #eb212e transparent transparent;
  right: 0px;
  display: none;
}

.dropdown.menu.vertical > li.opens-right > a::after {
  border-color: transparent transparent transparent #eb212e;
  right: 5px;
}

.dropdown.menu > li > a:hover,
.dropdown.menu > li > ul li a:hover,
.dropdown.menu > li.is-active > a {
  color: #eb212e;
}

.dropdown.menu > li > ul li a {
  padding: 0.5rem 0rem;
}

.dropdown.menu > li.opens-right > .is-dropdown-submenu {
  top: 154%;
  min-width: 280px;
  padding-bottom: 20px;
}

address {
  font-style: normal;
}

#instafeed .column, #instafeed .columns {
  padding: 1px;
}

@media only screen and (min-width: 40.063em) {
  .int.site-content .h2 {
    font-size: 2.6rem;
  }
}
/********* VIDEO *********/
#videos {
  margin-top: 3rem;
}
#videos a:hover {
  color: #666;
}
#videos a::before {
  background: rgba(255, 255, 255, 0);
}
#videos p {
  font-size: 1.6rem;
}
#videos #next-button {
  background-color: #fff;
}
#videos #video-container .column a, #videos #video-container .columns a {
  position: relative;
  display: block;
}

.white-popup--wide {
  max-width: 700px;
}

.hover-item-link {
  display: block;
  padding: 1rem 0;
}

.hover-item {
  position: relative;
  display: block;
  -webkit-transition: border-color 0.3s ease-in-out;
  transition: border-color 0.3s ease-in-out;
  text-align: center;
}
.hover-item:hover .hover-item__img {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.hover-item__header {
  line-height: 1.2;
  margin-bottom: 0;
  font-size: 1.2rem;
}
.hover-item__header,
.hover-item h6 small {
  color: #545454;
}
.hover-item__img {
  -webkit-transition: -webkit-all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

@media screen and (max-width: 480px) {
  h2 {
    font-size: 1.25rem;
  }
  h3 {
    font-size: 2rem;
  }
  h5 {
    font-size: 1.5rem;
  }
  p {
    font-size: 1rem;
  }
}
.popup-bkg .mfp-img {
  background-color: #fff;
}

.popup-bkg .mfp-image-holder .mfp-close {
  color: #000;
  right: 0;
}

.social-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.social-menu > div {
  margin-right: 1rem;
}
.social-menu a {
  color: #fefefe;
  font-size: 1.75rem;
}

.row {
  max-width: 90rem;
}

.page-header {
  text-align: left;
  color: #fefefe;
  /*  margin-bottom:1rem;
    @include breakpoint (large) {
      margin-bottom:3rem;
    }*/
}
.page-header .row {
  width: 100%;
}
.page-header h1 {
  font-family: "Roboto", sans-serif;
  color: #0a0a0a;
  font-size: 2rem;
  margin-bottom: 0.5rem;
  font-weight: 300;
}
@media print, screen and (min-width: 40em) {
  .page-header h1 {
    margin-bottom: 1rem;
    letter-spacing: -0.05rem;
  }
}
@media print, screen and (min-width: 64em) {
  .page-header h1 {
    font-size: 2.75rem;
  }
}
.page-header h1 {
  /*
  &:after {
    content: '';
    height: 6px;
    background-color: $primary-color;
    display: block;
    width: 100%;
    max-width:214px;
    margin:0 auto;
  }*/
}
.page-header p {
  display: inline-block;
  line-height: 2;
}
@media print, screen and (min-width: 64em) {
  .page-header p {
    border-bottom-width: 2px;
    margin-bottom: 1rem;
    max-width: 370px;
  }
}
.page-header {
  /*
  .background-image {
    background-position: center top;
    background-size:cover;
    background-repeat:no-repeat;
    background-color:$black;
    @media screen and (min-width:1200px){
      background-attachment: fixed;
      background-size:140%;
    }
  }*/
}
.page-header .page-title {
  padding: 2rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .page-header .page-title {
    padding-top: 3rem;
  }
}

/*
.page-header {
  @include breakpoint (large) {
    //height:100vh;
  }
  h1 {
    font-size:1.5rem;
    @include breakpoint (large) {
      font-size:3rem;
    }
  }
  img {
    width:100%;
  }
  .row {

    @include breakpoint (large) {
      padding:0 2.8125rem;
    }
  }
  .page-title {
    padding:1rem 0;
    @include breakpoint (large) {
      padding:4rem 0;
    }
    p {
      font-size:.75rem;
      @include breakpoint (medium) {
        font-size:1rem;
      }
      @include breakpoint (large) {
        font-size:1.15rem;
      }
    }
  }
}
*/
.page-content {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .page-content {
    margin-bottom: 4rem;
  }
}

.loading-page {
  position: fixed;
  z-index: 9999;
  height: 100vh;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  border: 600px solid #eb212e;
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.loading-page.close {
  border: 0px solid #eb212e;
}
.loading-page-popup {
  position: fixed;
  z-index: 9999;
  height: 100vh;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  border: 600px solid rgba(0, 0, 0, 0.7);
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  text-align: center;
  display: none;
  opacity: 0;
}
.loading-page-popup.show {
  opacity: 1;
  display: block;
}
.loading-page-popup.fancybox-margin {
  opacity: 0;
  display: none;
}
@-webkit-keyframes rotating /* Safari and Chrome */ {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes rotating {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
.loading-page-popup .rotating {
  -webkit-animation: rotating 1s linear infinite;
  animation: rotating 1s linear infinite;
  font-size: 3rem;
}

[data-fc-sidecart] #fc nav .fc-fixed-button-right .fc-sidecart-button {
  background: #336699;
}
[data-fc-sidecart] #fc .fc-action--checkout--button {
  background: #336699;
}
[data-fc-sidecart] #fc .fc-action--checkout--button:hover {
  color: #333333;
}

#fitment-popup {
  padding: 2rem;
}
#fitment-popup .fitment-popup-icon {
  text-align: center;
  color: #eb212e;
  font-size: 2rem;
}
#fitment-popup h4 {
  font-size: 1.15rem;
  color: #0a0a0a;
  font-weight: 700;
}
#fitment-popup select {
  text-transform: uppercase;
  background-position: right center;
  padding: 1rem;
  font-size: 0.85rem;
  font-weight: 700;
  color: #0a0a0a;
  height: auto;
  border-radius: 2px;
}
#fitment-popup .button {
  width: 100%;
  background-color: #eb212e;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
}
#fitment-popup #fitmentClear {
  font-size: 0.8rem;
  text-transform: uppercase;
  padding: 1rem;
  font-weight: 600;
  text-decoration: underline;
  color: #333333;
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#fitment-popup #fitmentClear:hover {
  color: #eb212e;
}

.processing {
  text-align: center;
  color: #fefefe;
  background: transparent;
}
.processing .mfp-close {
  display: none;
}
.processing.white {
  background: transparent !important;
}

#newsletter-popup {
  text-align: center;
  max-width: 580px;
  padding: 3rem;
}
#newsletter-popup i {
  color: #eb212e;
  font-size: 2.5rem;
}
#newsletter-popup h4 {
  text-transform: uppercase;
  font-weight: 700;
  color: #0a0a0a;
  font-size: 1.25rem;
}
#newsletter-popup p {
  line-height: 1.3;
}
#newsletter-popup .title {
  margin-bottom: 2rem;
}
#newsletter-popup .icon {
  margin-bottom: 0.5rem;
}
#newsletter-popup .content {
  margin-bottom: 3rem;
}
#newsletter-popup #mc_embed_signup input {
  padding: 1rem;
  height: auto;
  border-radius: 3px;
  font-weight: 700;
  letter-spacing: 0.1rem;
  font-size: 0.8rem;
  text-transform: uppercase;
}
#newsletter-popup #mc_embed_signup input::-webkit-input-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #666666;
  opacity: 1; /* Firefox */
}
#newsletter-popup #mc_embed_signup input::-moz-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #666666;
  opacity: 1; /* Firefox */
}
#newsletter-popup #mc_embed_signup input:-ms-input-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #666666;
  opacity: 1; /* Firefox */
}
#newsletter-popup #mc_embed_signup input::-ms-input-placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #666666;
  opacity: 1; /* Firefox */
}
#newsletter-popup #mc_embed_signup input::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #666666;
  opacity: 1; /* Firefox */
}
#newsletter-popup #mc_embed_signup input:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #666666;
}
#newsletter-popup #mc_embed_signup input::-ms-input-placeholder { /* Microsoft Edge */
  color: #666666;
}
#newsletter-popup #mc_embed_signup input.button {
  margin-left: 0.25rem;
  border-radius: 2px;
  padding: 0;
  width: 175px;
  height: 54px;
}

/* ==========================================================================
   9. Pagination
   ========================================================================== */
.pagination li a {
  font-size: 1rem;
  text-transform: uppercase;
}
.pagination .current {
  background-color: #eb212e;
}

/* ==========================================================================
   10. Forms
   ========================================================================== */
/* honeypot */
.ohnohoney {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  width: 0;
  z-index: -1;
}

/* loader */
.lds-ellipsis,
.lds-ellipsis div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
  color: #b9b9b9;
}

.lds-ellipsis div {
  position: absolute;
  top: 33.33333px;
  width: 13.33333px;
  height: 13.33333px;
  border-radius: 50%;
  background: currentColor;
  -webkit-animation-timing-function: cubic-bezier(0, 1, 1, 0);
          animation-timing-function: cubic-bezier(0, 1, 1, 0);
}

.lds-ellipsis div:nth-child(1) {
  left: 8px;
  -webkit-animation: lds-ellipsis1 0.6s infinite;
          animation: lds-ellipsis1 0.6s infinite;
}

.lds-ellipsis div:nth-child(2) {
  left: 8px;
  -webkit-animation: lds-ellipsis2 0.6s infinite;
          animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(3) {
  left: 32px;
  -webkit-animation: lds-ellipsis2 0.6s infinite;
          animation: lds-ellipsis2 0.6s infinite;
}

.lds-ellipsis div:nth-child(4) {
  left: 56px;
  -webkit-animation: lds-ellipsis3 0.6s infinite;
          animation: lds-ellipsis3 0.6s infinite;
}

@-webkit-keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes lds-ellipsis1 {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@-webkit-keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  100% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }
}
@-webkit-keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(24px, 0);
            transform: translate(24px, 0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  100% {
    -webkit-transform: translate(24px, 0);
            transform: translate(24px, 0);
  }
}
/* ==========================================================================
   11. Popups
   ========================================================================== */
.mfp-wrap {
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(3px);
}

/* ==========================================================================
   12. youtube
   ========================================================================== */
.ytp-pause-overlay, #player-controls, #player-control-overlay {
  display: none !important;
}

.t-uppercase {
  text-transform: uppercase;
}
.t-center {
  text-align: center;
}
@media print, screen and (max-width: 39.99875em) {
  .t-center--sm {
    text-align: center;
  }
}
.t-right {
  text-align: right;
}

.color--gray {
  color: #cacaca;
}

.margin--tb {
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}

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

.f-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* ==========================================================================
   Header
   ========================================================================== */
header {
  background: rgb(0, 0, 0);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  width: 100%;
  /*@include breakpoint (medium) {
    background: linear-gradient(90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,1) 40%, rgba(51,51,51,1) 60%, rgba(51,51,51,1) 100%);
  }*/
}
header.main {
  padding: 0.75rem 0.5rem;
}
@media print, screen and (min-width: 40em) {
  header.main {
    padding: 0;
  }
}
header .row {
  max-width: 81.25rem;
}
header .top-bar {
  margin-bottom: 0;
}
header.sticky.is-anchored.is-at-bottom {
  bottom: auto;
}
header.sticky.is-anchored {
  position: fixed;
  top: 0 !important;
}
header .css-1id3nfn {
  fill: none;
  stroke: #fefefe;
}
header #svg-megamenu-open {
  width: 18px;
  height: 18px;
  fill: #fefefe;
  stroke-width: 1rem;
}
header .header-left, header .header-center, header .header-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fefefe;
}
header .header-left svg path, header .header-left span {
  color: #fefefe;
  stroke: #fefefe;
}
header .header-left button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  margin-left: 1rem;
  font-size: 0.85rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 40em) {
  header .header-left button {
    margin-left: 0;
  }
}
header .header-left button:focus {
  background-color: transparent;
}
header .header-left .css-1whbpkn {
  padding: 0 0.5rem;
}
header .header-center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
header .header-center .header-logo {
  max-width: 220px;
}
header .header-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
header .header-right a {
  color: #fefefe;
}
@media print, screen and (min-width: 40em) {
  header .header-right .header-social ul > li {
    margin-left: 0.5rem;
  }
}
header .header-right .header-social ul > li:first-child {
  margin-left: 0;
  padding-right: 0;
}
header .header-right .header-social ul > li a {
  padding: 0 0.5rem;
  font-weight: 400;
  letter-spacing: unset;
}
header .header-right .header-social ul > li .footer-social-divider {
  width: 1px;
  height: 16px;
  background-color: #999999;
  margin-top: 5px;
  margin-bottom: 5px;
}
header .header-right .header-social i {
  height: auto;
}
header.megamenu-active {
  background-color: #0a0a0a;
}
header.megamenu-active a {
  color: #fefefe;
}
header.megamenu-active {
  /*.header-left .css-1id3nfn, .header-left span {
    stroke:$white;
    color:$white;
    fill:$white;
  }*/
}
header .megamenu {
  color: #fefefe;
  height: 100vh;
  position: relative;
}
@media print, screen and (min-width: 40em) {
  header .megamenu {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  header .megamenu {
    padding-left: 3rem;
    padding-right: 3rem;
    height: 75vh;
  }
}
header .megamenu a {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  background: transparent;
  text-transform: uppercase;
}
header .megamenu a.menu-brands i {
  margin-left: 2rem;
}
@media print, screen and (min-width: 40em) {
  header .megamenu a.menu-brands i {
    display: none;
  }
}
header .megamenu h2 {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  color: #fefefe;
}
header .megamenu-menu ul.dropdown.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-bottom: 1.75rem;
}
header .megamenu-menu ul.dropdown.menu:last-child {
  margin-bottom: 0;
}
header .megamenu-menu ul.dropdown.menu > li a {
  margin: 0;
  padding: 0.25rem 1rem;
  text-transform: capitalize;
  background-color: transparent;
}
@media print, screen and (min-width: 64em) {
  header .megamenu-menu ul.dropdown.menu > li a {
    padding-left: 0;
  }
}
header .megamenu-menu {
  /*
  ul.menu {
    > li {
      &:nth-child(4), &:nth-child(7) {
        margin-bottom:1rem;
      }
      &:nth-last-child(-n+4){
        a {
          font-size:1rem;
          font-weight:400;
        }
      }
    }
  }*/
}
header .megamenu-menu-title {
  font-size: 1.125rem;
  font-weight: 700;
  text-transform: uppercase;
}
header .megamenu .megamenu-gallery {
  padding-bottom: 2rem;
  overflow: auto;
  height: 100vh;
  position: absolute;
  top: 0;
  right: -640px;
  left: 640px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
header .megamenu .megamenu-gallery.active {
  right: 0;
  left: 0;
  background-color: #0a0a0a;
}
header .megamenu .megamenu-gallery.active .close-menu-brands {
  text-transform: capitalize;
  font-size: 1rem;
  font-weight: 400;
  display: block;
  padding: 0.5rem;
  margin-bottom: 0.5rem;
}
header .megamenu .megamenu-gallery.active .close-menu-brands i {
  margin-right: 1rem;
}
@media print, screen and (min-width: 40em) {
  header .megamenu .megamenu-gallery {
    padding-top: 1rem;
    position: static;
  }
}
@media print, screen and (max-width: 39.99875em) {
  header .megamenu .megamenu-gallery-container {
    position: absolute;
  }
}
header .megamenu .megamenu-gallery a:hover .image img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
header .megamenu .megamenu-gallery a:hover .image span {
  opacity: 1;
}
header .megamenu .megamenu-gallery-item {
  margin-bottom: 1rem;
}
header .megamenu .megamenu-gallery-item .image {
  margin-bottom: 0.5rem;
  overflow: hidden;
  position: relative;
}
header .megamenu .megamenu-gallery-item .image img {
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
header .megamenu .megamenu-gallery-item .brand {
  text-align: center;
}
header .megamenu .megamenu-gallery-item .brand img {
  width: 50%;
  max-height: 36px;
}
@media print, screen and (min-width: 40em) {
  header .megamenu .megamenu-gallery-item .brand img {
    width: auto;
    max-height: 38px;
  }
}
header .megamenu .megamenu-gallery-item-hover-over {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(0, 0, 0, 0.7);
  font-weight: 400;
  text-transform: uppercase;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
header .megamenu .megamenu-gallery-item .discover-more {
  padding-top: 2rem;
  text-align: center;
  font-size: 1.125rem;
  font-weight: 700;
}
header .megamenu .megamenu-gallery-item .discover-more i {
  margin-left: 1rem;
}
header .megamenu .megamenu-gallery {
  /*.end {
    min-height:140px;
    @media (min-width: 484px) and (max-width: 640px) {
      min-height:155px;
    }
    @include breakpoint (large) {
      min-height:182px;
    }
  }*/
}
header .is-drilldown {
  max-width: 370px !important;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  header .is-drilldown {
    min-height: 466.125px !important;
  }
}

header .row {
  max-width: 81.25rem;
}
@media print, screen and (min-width: 40em) {
  header .top-bar {
    padding-left: 1rem;
    padding-right: 1rem;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    /*
    &.row {
      padding-left:2rem;
      padding-right:2rem;
    }*/
    max-width: none;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
  header .top-bar .top-bar-title {
    width: 20%;
  }
  header .top-bar .top-bar-title {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  header .top-bar #responsive-menu {
    width: 68%;
  }
  header .top-bar #responsive-menu .top-bar-right, header .top-bar #responsive-menu .top-bar-right > ul {
    width: 100%;
  }
  header .top-bar #responsive-menu .top-bar-right > ul:first-child {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  header .top-bar .nav-menu-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    width: 12%;
  }
  header .top-bar .nav-menu-right a {
    font-size: 0.85rem;
    background-color: #333333;
    text-transform: uppercase;
    border-radius: 50px;
    letter-spacing: 0.025rem;
  }
  header .top-bar .nav-menu-right a:hover {
    background-color: #999999;
  }
  header .top-bar .nav-menu-right ul {
    margin-left: 0;
  }
}
@media print, screen and (min-width: 64em) {
  header .top-bar {
    height: 80px;
    padding-left: 3rem;
    padding-right: 3rem;
  }
}
header .top-bar a {
  font-size: 0.85rem;
  font-weight: 500;
  text-transform: uppercase;
  position: relative;
  letter-spacing: 0.1rem;
}
header .top-bar a.active-page:before {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  bottom: -0.6rem;
  display: block;
  background-color: #eb212e;
  height: 3px;
  width: 100%;
}
header .top-bar .top-bar-left {
  padding: 8px 0;
  padding-right: 2%;
}
header .top-bar .hp-btn-links a {
  font-size: 1.2rem;
  padding-left: 1.8rem;
  padding-right: 1.8rem;
  margin-left: 8px;
}
header .top-bar-title {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 64em) {
  header .top-bar-title .header-logo img {
    max-width: none;
  }
}
header .top-bar-title .header-logo a {
  display: inline-block;
  text-align: center;
}
header .top-bar-title .mobile-nav-menu-right ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 0;
}
header .top-bar-title .mobile-nav-menu-right ul a {
  padding: 0.5rem;
}
header {
  /*  .header-logo {
      width: 200px;
      position: relative;
      height: 1px;
      top: -5px;

      a {
        position: absolute;
        z-index: 10;
      }
    }*/
}
header .nav-menu-right li {
  display: inline-block;
}
header .nav-menu-right li a {
  font-size: 1.25rem;
  padding: 1rem;
}

/* mobile */
.menu-icon.dark:hover:after, .menu-icon.dark:after {
  background: #ffffff;
  -webkit-box-shadow: 0 7px 0 #ffffff, 0 14px 0 #ffffff;
          box-shadow: 0 7px 0 #ffffff, 0 14px 0 #ffffff;
}

/* Media Queries */
@media screen and (max-width: 480px) {
  .menu > li:not(.menu-text) > a {
    padding: 0.7rem 0.5rem;
  }
  header .top-bar .top-bar-left {
    padding-top: 20px;
  }
}
@media screen and (max-width: 1023px) {
  header {
    padding: 0;
  }
  header .menu.nav-social {
    display: block;
  }
  header .top-bar-title {
    width: 100%;
    /*      padding-right: 15px;
          padding-left: 15px;*/
  }
  header .top-bar-title span {
    float: right;
  }
  header .top-bar-title img {
    width: 60%;
  }
  header .top-bar .top-bar-left,
  header .top-bar .top-bar-right {
    border-right: 0px;
    width: 100%;
  }
  header .top-bar .top-bar-right {
    padding: 10px 20px 20px;
  }
  header .top-bar .top-bar-left li {
    padding-left: 20px;
    padding-right: 20px;
    border-bottom: 1px solid #eeeeee;
  }
  header .top-bar .top-bar-left ul ul div div {
    border-right: 0;
    margin: 0;
  }
  header .top-bar .top-bar-left ul ul div div:last-child {
    border: none;
  }
  header .top-bar .top-bar-left .dropdown.menu .submenu li {
    padding-left: 0;
    padding-right: 0;
    border-bottom: 0;
    border-top: 1px solid #eeeeee;
  }
  header.fixed {
    position: inherit;
  }
  .menu-icon::after {
    background-color: #999999;
    -webkit-box-shadow: 0 7px 0 #999999, 0 14px 0 #999999;
            box-shadow: 0 7px 0 #999999, 0 14px 0 #999999;
  }
  .menu > li {
    display: inherit;
  }
  .dropdown.menu .submenu {
    position: relative;
    border: 0;
  }
}
@media only screen and (max-width: 1212px) {
  header .top-bar a {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 1262px) {
  header .top-bar .top-bar-left {
    padding-right: 0;
  }
}
/* ==========================================================================
   3. Top bar
   ========================================================================== */
.sticky-container {
  z-index: 20;
}

header.main {
  position: relative;
  z-index: 10;
}
@media print, screen and (max-width: 74.99875em) {
  header.main {
    position: fixed;
    width: 100%;
  }
}

/*#content {
  padding-top:56px;
  @include breakpoint (large) {
    padding-top:112px;
  }
  @media screen and (min-width:1200px) {
    padding-top:0;
  }
  @include breakpoint (small only) {
    &.hp {
      padding-top:56px;
    }
  }
}*/
.basket-icon {
  color: #767676;
  padding-right: 2px;
}

header {
  /*/// Pencil Navigation ///*/
}
header .pencil-top-bar {
  height: 44px;
  text-transform: uppercase;
  font-size: 0.75rem;
  background-color: #eb212e;
  color: #fefefe;
  letter-spacing: 0.05rem;
  font-weight: 700;
}
header .pencil-top-bar a {
  color: #0a0a0a;
  font-size: 0.7rem;
}
header .pencil-top-bar a:hover {
  color: #fefefe;
}
header .pencil-top-bar .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 64em) {
  header .pencil-top-bar .row {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  header .pencil-top-bar .row > div:nth-child(2) {
    text-align: center;
  }
  header .pencil-top-bar .row > div:last-child {
    text-align: right;
  }
}
header .pencil-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-transform: uppercase;
}
header .pencil-top .pencil-top-login {
  margin-left: 2rem;
  padding: 0.65rem;
  padding-top: 1rem;
  background-color: #0a0a0a;
}
header .pencil-top .pencil-top-login a {
  color: #fefefe;
  font-weight: 700;
}
header .pencil-top .pencil-top-login a:hover {
  color: #eb212e;
}
header .pencil-top .pencil-top-search {
  padding-bottom: 0rem;
  margin-left: 1rem;
}
header .pencil-top .pencil-top-search form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
header .pencil-top .pencil-top-search input {
  margin-bottom: 0;
  height: 1.25rem;
  max-width: 200px;
  padding: 0;
  -webkit-box-shadow: 0 0 5px #cccccc;
          box-shadow: 0 0 5px #cccccc;
}
header .pencil-top .pencil-top-search button {
  width: 65%;
  text-transform: uppercase;
}
header .pencil-top-announcement {
  color: white;
  height: 100%;
}
header .pencil-top-menu .menu > li:not(.menu-text) > a {
  text-transform: uppercase;
  color: #cacaca;
  font-family: "Teko", sans-serif;
  font-weight: bold;
  font-size: 0.9rem;
  line-height: 1.5 !important;
  margin: 0;
  padding: 1rem 0.8rem;
}
@media (min-width: 1024px) and (max-width: 1200px) {
  header .pencil-top-menu .menu > li:not(.menu-text) > a {
    padding: 1rem 0.3rem;
  }
}
header .pencil-top-menu .menu > li:not(.menu-text) > a:hover {
  color: white;
}
header .pencil-top-announcement {
  font-family: "Teko", sans-serif;
  padding: 8px 0;
  white-space: nowrap;
}
header .announcement-large {
  font-size: 1.4rem;
  font-weight: 500;
  text-transform: uppercase;
}
@media (min-width: 1024px) and (max-width: 1200px) {
  header .announcement-large {
    font-size: 1.1rem;
  }
}
header .announcement-small {
  font-size: 1rem;
  font-weight: 500;
}
@media (min-width: 1024px) and (max-width: 1200px) {
  header .announcement-small {
    font-size: 0.9;
  }
}
header {
  /*/// Main Navigation ///*/
}
@media print, screen and (min-width: 40em) {
  header .top-bar {
    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;
  }
}
@media only screen and (min-width: 64rem) {
  header .top-bar {
    height: 105px;
  }
}
header .top-bar .menu.icon-top > li > a {
  color: #8a8a8a;
}
@media screen and (max-width: 64rem) {
  header .top-bar .menu.icon-top > li > a {
    text-align: left;
    font-size: 1.3rem;
    padding: 0.5rem;
  }
  header .top-bar .menu.icon-top > li > a i {
    display: none;
  }
}
header .top-bar .first-sub {
  left: 0 !important;
  right: 0 !important;
  top: 44px !important;
}
@media only screen and (max-width: 64rem) {
  header .top-bar .header-logo {
    top: 0;
  }
}
@media print, screen and (min-width: 40em) {
  header .top-bar #responsive-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}

.dropdown.menu.large-horizontal > li.opens-left > .is-dropdown-submenu {
  list-style: none;
  margin: 0;
  border-top: 0;
  background-color: rgba(0, 0, 0, 0.9);
  padding-bottom: 1rem;
  min-width: 272px;
}

.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > ul {
  list-style: none;
}

.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a {
  padding-right: 0.1rem;
}
.dropdown.menu.large-horizontal > li.is-dropdown-submenu-parent > a:after {
  display: none;
}

.dropdown.menu > li > ul li a {
  display: block;
  font-weight: 600;
  padding-left: 0.75rem;
  padding-right: 0.75rem;
  line-height: 1;
}

@media only screen and (max-width: 1360px) {
  .dropdown.menu > li:last-child .first-sub, .dropdown.menu > li:nth-child(7) .first-sub {
    left: auto !important;
  }
}

@media only screen and (max-width: 64rem) {
  header .menu > li:not(.menu-text) > a {
    margin-left: 0;
  }
}

/*
header .menu>li:not(.menu-text) {
  &:first-child {
    a {
      margin-left:0;
    }
  }
  > a {
    @media screen and (min-width:1490px) {
      margin-left:2.25rem;
    }
  }
}*/
/* ==========================================================================
   2. Header
   ========================================================================== */
/* mobile */
.menu-icon {
  height: auto;
}
.menu-icon:hover:after, .menu-icon:after {
  display: none;
}
.menu-icon {
  font-weight: 700;
  text-transform: uppercase;
  width: auto;
  font-size: 1.25rem;
  color: #0a0a0a;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.menu-icon:hover {
  color: #eb212e;
}

header .top-bar .header-mobile-only {
  margin-left: 0;
  margin: 1rem 0;
}
header .top-bar .header-mobile-only a {
  font-size: 0.85rem;
  background-color: #333333;
  color: #fefefe;
  text-transform: uppercase;
  border-radius: 50px;
  letter-spacing: 0.025rem;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  header .top-bar .header-mobile-only {
    display: none;
  }
}

header {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  -webkit-box-shadow: none;
          box-shadow: none;
}
header nav {
  -webkit-box-shadow: none;
          box-shadow: none;
}
@media print, screen and (max-width: 63.99875em) {
  header nav #responsive-menu {
    width: 100%;
    border-top: 1px solid #fefefe;
    padding-top: 1rem;
    clear: both;
  }
}
header nav #responsive-menu .top-bar-right {
  background-color: #fefefe;
}
header nav #responsive-menu .top-bar-right .is-drilldown {
  max-width: none;
  width: 100%;
}
header nav #responsive-menu .top-bar-right .is-drilldown a {
  background-color: transparent;
  margin-bottom: 1rem;
  padding: 0;
}
header nav #responsive-menu .top-bar-right .is-drilldown .drilldown .is-drilldown-submenu-parent > a::after {
  border-color: transparent transparent transparent #fefefe;
  right: 0;
}
header nav #responsive-menu .top-bar-right .is-drilldown .drilldown .is-drilldown-submenu {
  margin: 0;
  width: 100%;
  height: 100vh;
  background: rgb(0, 0, 0);
}
header nav #responsive-menu .top-bar-right .is-drilldown .drilldown .is-drilldown-submenu .js-drilldown-back {
  border-bottom: 1px solid #fefefe;
  margin-bottom: 2rem;
}
header nav #responsive-menu .top-bar-right .is-drilldown .drilldown .is-drilldown-submenu .js-drilldown-back > a::before {
  border-color: transparent #eb212e transparent transparent;
}
header nav #responsive-menu .mobile-nav-menu-right {
  width: 100%;
  float: left;
  padding: 0 1.5rem;
}
header nav #responsive-menu .mobile-nav-menu-right > ul {
  border-top: 1px solid #fefefe;
  padding: 1rem 0;
}

.menu-open {
  /*&.sticky-container {*/
  /*  background-color:$black;*/
  /*}*/
}
.menu-open header .top-bar {
  padding: 0;
}
.menu-open header .top-bar-title {
  background-color: #0a0a0a;
}
.menu-open header .menu-icon {
  color: #999999;
}
.menu-open header .menu-icon:hover {
  color: #eb212e;
}
.menu-open header nav {
  background-color: rgba(0, 0, 0, 0.9);
  height: 100vh;
  margin-left: 0;
}
.menu-open header nav .top-bar-right {
  height: 100vh;
  padding: 0;
}
.menu-open header nav .top-bar-right .is-drilldown {
  width: 100%;
  max-width: none !important;
  height: 100vh;
  padding: 1rem 2rem;
}
.menu-open header nav .top-bar-right .is-drilldown-submenu.is-active {
  background-color: rgba(0, 0, 0, 0.8);
  margin-left: 0;
  padding: 1rem 2rem;
}
.menu-open header nav .top-bar-right .is-drilldown-submenu.is-active a {
  color: #fefefe;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  display: block;
  line-height: 1;
}
.menu-open header nav .top-bar-right .is-drilldown-submenu.is-active .js-drilldown-back {
  border-bottom: 1px solid #fefefe;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.menu-open header nav .top-bar-right .is-drilldown-submenu.is-active .js-drilldown-back > a::before {
  border-color: transparent #fefefe transparent transparent;
}
.menu-open header nav .top-bar-right .is-drilldown-submenu-parent > a::after {
  border-color: transparent transparent transparent #fefefe;
}
.menu-open header nav .top-bar-right .menu > li:not(.menu-text) > a {
  color: #fefefe;
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  margin: 0;
}
.menu-open header nav .top-bar-right .header-mobile-only {
  display: block;
}

/* Media Queries */
@media screen and (max-width: 480px) {
  .menu > li:not(.menu-text) > a {
    padding: 0.7rem 0.5rem;
  }
  header .top-bar .top-bar-left {
    padding-top: 20px;
  }
}
@media screen and (max-width: 1023px) {
  header {
    padding: 0;
  }
  header .menu.nav-social {
    display: block;
  }
  header .top-bar-title {
    width: 100%;
    /*      padding-right: 15px;
          padding-left: 15px;*/
    padding: 15px;
  }
  header .top-bar-title span {
    float: right;
  }
  header .top-bar-title img {
    width: 60%;
  }
  header .top-bar .top-bar-left,
  header .top-bar .top-bar-right {
    border-right: 0px;
    width: 100%;
  }
  header .top-bar .top-bar-right {
    padding: 10px 20px 20px;
  }
  header .top-bar .top-bar-left li {
    padding-left: 20px;
    padding-right: 20px;
    border-bottom: 1px solid #eeeeee;
  }
  header .top-bar .top-bar-left ul ul div div {
    border-right: 0;
    margin: 0;
  }
  header .top-bar .top-bar-left ul ul div div:last-child {
    border: none;
  }
  header .top-bar .top-bar-left .dropdown.menu .submenu li {
    padding-left: 0;
    padding-right: 0;
    border-bottom: 0;
    border-top: 1px solid #eeeeee;
  }
  header.fixed {
    position: inherit;
  }
  .menu-icon::after {
    background-color: #999999;
    -webkit-box-shadow: 0 7px 0 #999999, 0 14px 0 #999999;
            box-shadow: 0 7px 0 #999999, 0 14px 0 #999999;
  }
  .menu > li {
    display: inherit;
  }
  .dropdown.menu .submenu {
    position: relative;
    border: 0;
  }
}
@media only screen and (max-width: 1212px) {
  header .top-bar a {
    font-size: 1rem;
  }
  header .top-bar a i {
    font-size: 1.25rem;
  }
}
@media only screen and (max-width: 1262px) {
  header .top-bar .top-bar-left {
    padding-right: 0;
  }
}
/*
.header {
  z-index:90;
  width:100%;
  background-color:$white;
  top:0;
  border-bottom:1px solid $grayC;


  &.home,&.wheels,&.gallery,&.wheel-detail {
    border-bottom:1px solid rgba(255,255,255,.7);
    border-bottom:0;
    position:fixed;
    background-color:rgba(0,0,0,0);
    transition:all .2s ease-in-out;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -o-transform: translateY(0);
    transform:translateY(0);
    &.notAtTop {
      background-color:rgba(0,0,0,1);
    }
    &.closeUp {
      -webkit-transform: translateY(-100%);
      -moz-transform: translateY(-100%);
      -o-transform: translateY(-100%);
      transform:translateY(-100%);
    }
    a {
      text-transform: uppercase;
      font-weight:400;
      font-family:$heading-font-family;
      font-size:1.85rem;
      letter-spacing: 2px;
      color:$light-gray;
      transition: all .2s ease-in-out;
      &:hover {
        color:$primary-color;
      }
    }
  }
  &.wheel-detail {
    &.notAtTop {
      a {
        color:$light-gray;
        &:hover {
          color:$primary-color;
        }
      }
      .menu-icon {
        color:$primary-color;
        &:hover {
          color:$white;
        }
      }
    }
  }
  &.about {
    position:absolute;
    background-color:transparent;
  }
  a {
    text-transform: uppercase;
    font-weight:500;
    font-family:$heading-font-family;
    font-size:1.25rem;
    //letter-spacing: 2px;
    color:$gray3;
    transition: all .2s ease-in-out;
    &:hover {
      color:$primary-color;
    }
  }
  &-logo {
    padding:.5rem;
    img {
      max-width:60%;
    }
    @include breakpoint (medium) {
      padding-left:3rem;  
      padding-right:1.5rem;
      border-right:1px solid $grayC;
      img {
        max-width:none;
      }
    }
    img {
      width:100%;
    }
  }
  .top-bar-left {
    padding-top:1.5rem;
  }
  .top-bar {
    display:block;
    top:0!important;
    @include breakpoint (medium) {
      background-color:$white;
      border-bottom:1px solid $grayC;
    }
    &-title {
      margin-right:0;
    }
    .menu-icon {
      font-size:1.85rem;
      color:$primary-color;
      background-color:transparent;
      border:0;
      height:auto;
      width:auto;
      padding-left:.75rem;
      padding-right:.75rem;
      padding-top:3px;
      transition: all .2s ease-in-out;
      display:flex;
      align-items: center;
      &:hover {
        color:$light-gray;
      }
      &:after {
        height:3px;
        background-color:$blue;
        box-shadow: 0 9px 0 $blue, 0 18px 0 $blue;
        transition: all .2s ease-out;
        display: none;
      }
      &:hover:after {
        background: $light-gray;
        box-shadow: 0 9px 0 $light-gray, 0 18px 0 $light-gray;
      }
      &.dark {
        &:after {
          background-color:$blue;
          box-shadow: 0 9px 0 $blue, 0 18px 0 $blue;
          transition: all .2s ease-out;
        }
        &:hover:after {
          background: $red;
          box-shadow: 0 9px 0 $red, 0 18px 0 $red;
        }
      }
      span {
        color:$gray9;
        text-transform: uppercase;
        margin-right:1.5rem;
        font-size:1.5rem;
        font-weight:400;
        letter-spacing: -1px;
      }
    }
  }
  &.home, &.wheels, &.about, &.gallery {
    background-color:transparent;
    a {
      color:$light-gray;
      &:hover {
        color:$primary-color;
      }
    }
    .top-bar {
      display:flex;
      background-color:transparent;
      border-bottom:0;
      &-left {
        padding-top:1rem;
      }
    &-title {
      width:100%;
      display:flex;
      justify-content: space-between;
      padding:.5rem;
      @include breakpoint (large) {
        padding:1rem 3rem;
      }
      .header-logo {
        border:0;
        padding:0;
      }
      .menu-icon {
        color:$white;
        &:hover {
          color:$gray3;
        }
        &:after {
          background-color:$white;
          height:3px;
          box-shadow: 0 9px 0 $white, 0 18px 0 $white;

        }
        &:hover:after {
          background: $gray9;
          box-shadow: 0 9px 0 $gray9, 0 18px 0 $gray9;
        }
        &.dark {
          &:after {
            background-color:$white;
            box-shadow: 0 9px 0 $white, 0 18px 0 $white;
          }
          &:hover:after {
            background: $gray9;
            box-shadow: 0 9px 0 $gray9, 0 18px 0 $gray9;
          }
        }
      }
    }
  }
  }

  // cart icons display
  .cart-menu {
    display:flex;
    align-items: center;
    margin-right:.75rem;
    a {
      font-size:1.25rem;
      color:$gray9;
      &:hover {
        color:$blue;
      }
    }
    &-item {
      margin-left:1.5rem;
    }
  }

  // mobile sticky
  &.intNotAtTop {
    .top-bar {
      background-color:rgba(0,0,0,.7);
      position:fixed;
      width:100%;
      z-index:5;
      border-bottom:1px solid $grayC;
    }
  }
}



/// Navigation Menu ///////////////
.responsive-menu {
  .dropdown.menu {
    .is-dropdown-submenu-parent {
        &:hover a, &:active a {
          color:$red;
        }
      > a {
        padding-right:.5rem;
      }
      &.is-active.opens-left {
        > a {
          &:after {
            border: none;
          }
        }
      }
    }
    &.submenu {
      background-color:$white;
      text-transform: capitalize;
      a {
        color:$black;
        font-weight:300;

      }
      &.is-dropdown-submenu {
        position:static;
        @include breakpoint (large) {
          position:absolute;
          z-index:100;
        }
      }
    }
    > li {
      a {
        i {
          padding-left:.5rem;
          font-size:.75rem
        }
      }
      &.is-active > a {
        color:$black;
      }
    }
    &.vertical {
      li {        
        background-color:$white;
        @include breakpoint (large) {
          background-color:transparent;
        }
      }
      &.submenu {
        background-color:transparent;
        &.dropdown.menu{
          top:73px; 
        }
        li {
          background-color:$blue;
          font-familY:$heading-font-family;
          color:$white;
          font-size:1.1rem;
          font-weight:400;
          a {
            background-color:$blue;
            color:$white;
            font-size:1.1rem;
            font-weight:400;
            letter-spacing:0;
            padding:1rem;
            line-height:1.3;
            &:hover {
              color:$gray9;
            }
          }
        }
      }
    }
  }
  /// cart
  .shopping {
    padding-right:1rem;
    padding-top:2rem;
    @include breakpoint (medium) {
      padding-right:3rem;
    }
    ul {
      display:flex;
    }
    &-user, &-basket {
      padding:1rem 0 1rem 1.5rem;
      &:hover {
        color:$black;
      }
    }
    &-user {
      color:$gray9;
    }
    &-basket {
      color:$primary-color;
    }
  }
}
*/
.off-canvas.position-left {
  left: 0;
}

.is-off-canvas-open {
  overflow: hidden;
}

.js-off-canvas-overlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 11;
  width: 100%;
  height: 100%;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s ease;
  transition: opacity 0.5s ease, visibility 0.5s ease;
  background: rgba(0, 0, 0, 0.75);
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
}

.js-off-canvas-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}

.js-off-canvas-overlay.is-closable {
  cursor: pointer;
}

.js-off-canvas-overlay.is-overlay-absolute {
  position: absolute;
}

.js-off-canvas-overlay.is-overlay-fixed {
  position: fixed;
}

.off-canvas-wrapper {
  position: relative;
  overflow: hidden;
}

.off-canvas {
  position: fixed;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: #e6e6e6;
}

[data-whatinput=mouse] .off-canvas {
  outline: 0;
}

.off-canvas.is-transition-push {
  z-index: 12;
}

.off-canvas.is-closed {
  visibility: hidden;
}

.off-canvas.is-transition-overlap {
  z-index: 13;
}

.off-canvas.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-absolute {
  position: absolute;
  z-index: 12;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background: #e6e6e6;
}

[data-whatinput=mouse] .off-canvas-absolute {
  outline: 0;
}

.off-canvas-absolute.is-transition-push {
  z-index: 12;
}

.off-canvas-absolute.is-closed {
  visibility: hidden;
}

.off-canvas-absolute.is-transition-overlap {
  z-index: 13;
}

.off-canvas-absolute.is-transition-overlap.is-open {
  -webkit-box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
          box-shadow: 0 0 10px rgba(10, 10, 10, 0.7);
}

.off-canvas-absolute.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.position-left {
  top: 0;
  left: 0;
  height: 100%;
  overflow-y: auto;
  width: 375px;
  -webkit-transform: translateX(-375px);
          transform: translateX(-375px);
}

.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-445p375pxx);
          transform: translateX(-445p375pxx);
}

.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(445px);
          transform: translateX(445px);
}

.position-left.is-transition-push {
  -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

@media print, screen and (min-width: 64em) {
  .position-left {
    width: 445px;
    -webkit-transform: translateX(-445px);
            transform: translateX(-445px);
  }
  .off-canvas-content .off-canvas.position-left {
    -webkit-transform: translateX(-445px);
            transform: translateX(-445px);
  }
  .off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  .off-canvas-content.is-open-left.has-transition-push {
    -webkit-transform: translateX(445px);
            transform: translateX(445px);
  }
  .position-left.is-transition-push {
    -webkit-box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
            box-shadow: inset -13px 0 20px -13px rgba(10, 10, 10, 0.25);
  }
}
.position-right {
  top: 0;
  right: 0;
  height: 100%;
  overflow-y: auto;
  width: 250px;
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
          transform: translateX(250px);
}

.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-right.has-transition-push {
  -webkit-transform: translateX(-250px);
          transform: translateX(-250px);
}

.position-right.is-transition-push {
  -webkit-box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 13px 0 20px -13px rgba(10, 10, 10, 0.25);
}

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-top.has-transition-push {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.position-top.is-transition-push {
  -webkit-box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 -13px 20px -13px rgba(10, 10, 10, 0.25);
}

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  height: 250px;
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
          transform: translateY(250px);
}

.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
          transform: translateY(-250px);
}

.position-bottom.is-transition-push {
  -webkit-box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
          box-shadow: inset 0 13px 20px -13px rgba(10, 10, 10, 0.25);
}

.off-canvas-content {
  -webkit-transform: none;
          transform: none;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.off-canvas-content.has-transition-push {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 40em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-medium ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-medium ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-medium ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-medium .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-medium {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-medium ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 64em) {
  .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-left.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-left.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-left {
    margin-left: 250px;
  }
  .position-left.reveal-for-large ~ .off-canvas-content {
    margin-left: 250px;
  }
  .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-right.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-right.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-right {
    margin-right: 250px;
  }
  .position-right.reveal-for-large ~ .off-canvas-content {
    margin-right: 250px;
  }
  .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-top.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-top.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-top {
    margin-top: 250px;
  }
  .position-top.reveal-for-large ~ .off-canvas-content {
    margin-top: 250px;
  }
  .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
    z-index: 12;
    -webkit-transition: none;
    transition: none;
    visibility: visible;
  }
  .position-bottom.reveal-for-large .close-button {
    display: none;
  }
  .off-canvas-content .position-bottom.reveal-for-large {
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas-content.has-reveal-bottom {
    margin-bottom: 250px;
  }
  .position-bottom.reveal-for-large ~ .off-canvas-content {
    margin-bottom: 250px;
  }
}
@media print, screen and (min-width: 40em) {
  .off-canvas.in-canvas-for-medium {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-medium.position-left, .off-canvas.in-canvas-for-medium.position-right, .off-canvas.in-canvas-for-medium.position-top, .off-canvas.in-canvas-for-medium.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-medium .close-button {
    display: none;
  }
}
@media print, screen and (min-width: 64em) {
  .off-canvas.in-canvas-for-large {
    visibility: visible;
    height: auto;
    position: static;
    background: inherit;
    width: inherit;
    overflow: inherit;
    -webkit-transition: inherit;
    transition: inherit;
  }
  .off-canvas.in-canvas-for-large.position-left, .off-canvas.in-canvas-for-large.position-right, .off-canvas.in-canvas-for-large.position-top, .off-canvas.in-canvas-for-large.position-bottom {
    -webkit-box-shadow: none;
            box-shadow: none;
    -webkit-transform: none;
            transform: none;
  }
  .off-canvas.in-canvas-for-large .close-button {
    display: none;
  }
}
.off-canvas > div > div {
  padding-left: 2rem;
  padding-right: 2rem;
}
.off-canvas.position-left {
  /*width:445px; // Need to update js before applying....*/
  width: 375px;
}
@media print, screen and (min-width: 40em) {
  .off-canvas.position-left {
    width: 445px;
  }
}
.off-canvas.position-left {
  text-transform: uppercase;
  font-size: 0.825rem;
  background-color: #fefefe;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.off-canvas.position-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.off-canvas .close-button {
  background-color: #0a0a0a;
  color: #fefefe;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  text-align: left;
  width: 100%;
  right: 0;
  left: 0;
  top: 0;
  padding: 1.25rem 2rem;
  font-size: 0.825rem;
  text-transform: uppercase;
  font-weight: 700;
}
.off-canvas .close-button span {
  font-weight: 200;
  font-size: 3rem;
}
.off-canvas .close-button {
  /*
  padding:.5rem 2rem;
  color:$light-gray;
  margin-bottom:.5rem;
  */
}
.off-canvas .close-button:hover {
  color: #eb212e;
}
.off-canvas .slide-over-container {
  font-size: 0.75rem;
  line-height: 1.5;
  font-weight: 700;
}
.off-canvas .slide-over-container .slide-over-fitment {
  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;
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #e6e6e6;
  margin-bottom: 2rem;
}
.off-canvas .slide-over-container .slide-over-fitment .button {
  white-space: nowrap;
  margin-bottom: 0;
  background-color: #0a0a0a;
  width: 200px;
  height: 58px;
  font-size: 0.75rem;
  letter-spacing: 0.1rem;
  margin-right: 1rem;
}
.off-canvas .slide-over-container .slide-over-fitment .button:hover {
  background-color: #666666;
}
.off-canvas .slide-over-container .slide-over-fitment .fitment-info {
  font-weight: 700;
  max-width: 43%;
}
.off-canvas .slide-over-container .slide-over-filter {
  background-color: #fefefe;
}
.off-canvas .slide-over-container .slide-over-filter select, .off-canvas .slide-over-container .slide-over-filter .button {
  height: 55px;
  padding: 1rem;
}
.off-canvas .slide-over-container .slide-over-filter select {
  background-position: right center;
  border-radius: 2px;
  width: 100%;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
  text-transform: uppercase;
  font-weight: 700;
}
.off-canvas .vertical.menu {
  padding-left: 0;
  padding-top: 3rem;
  margin-top: 0;
}
.off-canvas .vertical.menu > li {
  position: relative;
}
.off-canvas .vertical.menu > li.is-accordion-submenu-parent > a:after {
  content: "+";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  border: none;
  font-size: 1.5rem;
  top: 13px;
  margin-top: 0;
  right: 2rem;
}
.off-canvas .vertical.menu > li.is-accordion-submenu-parent[aria-expanded=true] > a:after {
  content: "-";
  -webkit-transform: none;
          transform: none;
}
.off-canvas .vertical.menu > li > a {
  font-family: "Roboto", sans-serif;
  color: #fefefe;
  text-transform: uppercase;
  font-size: 1.2rem;
  text-decoration: none;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.off-canvas .vertical.menu > li > a:hover {
  color: #333333;
}
.off-canvas .vertical.menu > li > a .fa-caret-down {
  display: none;
}
.off-canvas .vertical.menu.is-accordion-submenu > li::after {
  left: 0;
}
.off-canvas .social-menu {
  padding: 1rem 1rem 2rem;
}
.off-canvas .social-menu a:hover {
  color: #333333;
}

.off-canvas-content.is-open-right .fa-bars:before {
  content: "\f00d";
}

#forceMenu {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

/*
.hide-for-large {
  padding-top:1.5rem;
  padding-right:.5rem;
}*/
#responsive-menu .dropdown.menu .is-dropdown-submenu-parent > a {
  padding-right: 0.5rem;
}

.no-js .top-bar {
  display: none;
}

@media screen and (min-width: 40em) {
  .no-js .top-bar {
    display: block;
  }
  .no-js .title-bar {
    display: none;
  }
}
.header {
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.inventory-no-js {
  display: none;
}

.loading-screen {
  background-color: rgba(0, 0, 0, 0.7);
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  z-index: 9999;
}
.loading-screen i {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 45px;
  height: 45px;
  font-size: 3rem;
  color: #fefefe;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.header-nav-search {
  background-color: #e7e7e7;
  width: 100%;
  display: none;
  border-bottom: 1px solid #cccccc;
}
@media print, screen and (min-width: 64em) {
  .header-nav-search {
    border-bottom: 0;
  }
}
.header-nav-search button {
  cursor: pointer;
  color: #0a0a0a;
}
.header-nav-search-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1rem;
}
@media print, screen and (min-width: 40em) {
  .header-nav-search-container {
    padding-left: 1.9375rem;
    padding-right: 1.9375rem;
  }
}
.header-nav-search .toggle-search {
  font-size: 2rem;
}
.header-nav-search form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header-nav-search form input {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 0;
  width: 280px;
}
@media print, screen and (min-width: 64em) {
  .header-nav-search form input {
    width: 400px;
  }
}
.header-nav-search form input::-webkit-input-placeholder {
  letter-spacing: 0.15rem;
  text-align: center;
}
.header-nav-search form input::-moz-placeholder {
  letter-spacing: 0.15rem;
  text-align: center;
}
.header-nav-search form input:-ms-input-placeholder {
  letter-spacing: 0.15rem;
  text-align: center;
}
.header-nav-search form input::-ms-input-placeholder {
  letter-spacing: 0.15rem;
  text-align: center;
}
.header-nav-search form input::placeholder {
  letter-spacing: 0.15rem;
  text-align: center;
}
.header-nav-search form button {
  padding-left: 0.75rem;
}
@media print, screen and (min-width: 40em) {
  .header-nav-search form button {
    padding: 0 1rem;
  }
}

.mobile-header-wheels-filter {
  background-color: #fefefe;
}
.mobile-header-wheels-filter .filter-sort {
  padding-top: 1rem;
}
.mobile-header-wheels-filter .filter-sort .row {
  max-width: 80rem;
}
.mobile-header-wheels-filter .filter-sort-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  .mobile-header-wheels-filter .filter-sort-top {
    margin-bottom: 1rem;
  }
}
.mobile-header-wheels-filter .filter-sort .button {
  background-color: #fefefe;
  border: 2px solid #666666;
  color: #666666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 1rem;
  margin-bottom: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  width: 100%;
  padding: 0.85rem 1rem;
  font-size: 0.75rem;
}
@media print, screen and (min-width: 64em) {
  .mobile-header-wheels-filter .filter-sort .button {
    width: 220px;
    height: 54px;
    padding: 1rem;
    font-size: 1rem;
  }
}
.mobile-header-wheels-filter .filter-sort .button i {
  font-size: 1rem;
  margin-right: 1rem;
}
.mobile-header-wheels-filter .filter-sort .button:hover {
  background-color: #666666;
  color: #fefefe;
}
.mobile-header-wheels-filter .filter-sort .divider {
  height: 1px;
  background-color: #cccccc;
  width: 100%;
}
.mobile-header-wheels-filter .filter-sort-bottom li {
  display: inline-block;
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  .mobile-header-wheels-filter .filter-sort-bottom li {
    margin: 0;
    margin-right: 1rem;
    margin-bottom: 0.75rem;
  }
}
.mobile-header-wheels-filter .filter-sort-bottom .button {
  background-color: #f7f7f7;
  width: auto;
  height: auto;
  border: 0;
  margin: 0;
  font-size: 0.8rem;
  font-weight: 600;
}
.mobile-header-wheels-filter .filter-sort-bottom .button.active-filter-series {
  background-color: #0a0a0a;
  color: #fefefe;
}
.mobile-header-wheels-filter .filter-sort-bottom .button.active-filter-count {
  background-color: transparent;
}
.mobile-header-wheels-filter .filter-sort-bottom .button.active-filter-count:hover {
  color: #666666;
}
.mobile-header-wheels-filter .filter-sort-bottom .button i {
  margin: 0;
  margin-left: 1rem;
  font-weight: 600;
}

.header-fitment-mobile {
  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;
  padding-top: 1rem;
  padding-bottom: 1rem;
  background-color: #e6e6e6;
  padding-left: 2rem;
  padding-right: 2rem;
}
.header-fitment-mobile .button {
  white-space: nowrap;
  margin-bottom: 0;
  background-color: #0a0a0a;
  width: 200px;
  height: 58px;
  font-size: 0.75rem;
  letter-spacing: 0.1rem;
  margin-right: 1rem;
}
.header-fitment-mobile .fitment-info {
  font-weight: 700;
  max-width: 43%;
  font-size: 0.75rem;
  line-height: 1.5;
  text-transform: uppercase;
}

footer {
  position: relative;
}
footer .footer-top {
  padding-top: 1.25rem;
  text-align: center;
}
footer .footer-top .footer-social span, footer .footer-top .footer-social ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
footer .footer-top .footer-social span {
  margin-right: 0.5rem;
  font-weight: 600;
}
footer .footer-top .footer-social ul {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
footer .footer-top .footer-social ul a {
  color: #333333;
  font-size: 1.25rem;
  padding: 1rem;
}
footer .footer-top .footer-social ul a:hover {
  color: #eb212e;
}
footer .footer-top .footer-social ul li {
  margin-right: 0.5rem;
}
footer .footer-body {
  background-color: #f8f8f8;
  padding: 2rem 0;
}
@media print, screen and (min-width: 64em) {
  footer .footer-body {
    padding: 4rem 0;
  }
}
footer .footer-body h5 {
  font-size: 1.125rem;
  font-weight: 600;
  font-family: "Roboto", sans-serif;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  footer .footer-body h5 {
    font-size: 1.5rem;
  }
}
footer .footer-body ul {
  margin-left: 0;
}
footer .footer-body ul a {
  color: #333333;
  background-color: transparent;
}
footer .footer-body ul a:hover {
  color: #eb212e;
}
footer .footer-body .footer-logo {
  max-width: 200px;
  margin-bottom: 3rem;
}
@media print, screen and (min-width: 64em) {
  footer .footer-body .footer-logo {
    margin-bottom: 2rem;
  }
}
footer .footer-body .footer-menu {
  margin-bottom: 2rem;
}
footer .footer-bottom {
  background-color: #0a0a0a;
  height: 50vh;
  background-size: cover;
  background-attachment: fixed;
  background-position: center;
}
@media print, screen and (min-width: 64em) {
  footer .footer-bottom {
    height: 10vh;
  }
}

/*.hp {
  p {
    font-weight:400;
    font-size:1.1rem;
  }
}*/
.section {
  color: #0a0a0a;
  font-weight: 400;
  position: relative;
}
.section:after {
  content: " ";
  position: absolute;
}
.section > div {
  position: relative;
}
.section-background img {
  width: 100%;
  visibility: hidden;
}
@media print, screen and (max-width: 63.99875em) {
  .section-background img {
    display: none;
  }
}
.section-background-image {
  background-size: cover;
  background-position: center;
}
@media print, screen and (min-width: 64em) {
  .section-background-image {
    height: 100vh;
  }
}
.section-content {
  background-color: rgba(255, 255, 255, 0.4);
  padding: 0;
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.section-content-container {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .section-content-container {
    padding: 0;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .section-content-container p {
    font-size: 0.9rem;
  }
}
.section-title-divider {
  width: 200px;
  height: 8px;
  background-color: #eb212e;
  margin: 0 auto;
  margin-bottom: 1rem;
}
.section-button {
  text-transform: uppercase;
}
.section-button .cube-button {
  width: 150px;
  text-align: center;
  height: 50px;
  -webkit-transition: -webkit-transform 0.33s;
  transition: -webkit-transform 0.33s;
  transition: transform 0.33s;
  transition: transform 0.33s, -webkit-transform 0.33s; /* Animate the transform properties */
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d; /* <-NB */
}
.section-button .cube-button:hover {
  -webkit-transform: rotateX(90deg);
  transform: rotateX(90deg); /* Text bleed at 90º */
}
.section-button .cube-button .cube-front, .section-button .cube-button .cube-bottom {
  height: 50px;
}
.section-button .cube-button .cube-front {
  -webkit-transform: translateZ(25px);
  transform: translateZ(25px);
}
.section-button .cube-button .cube-bottom {
  -webkit-transform: rotateX(-90deg) translateZ(-25px);
  transform: rotateX(-90deg) translateZ(-25px);
}
.section-button .cube-button a {
  display: block;
  padding: 0.5rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.footer.hp .section-background-image {
  height: 100vh;
  background-size: cover;
  background-position: center;
}
.footer.hp .section-background-image img {
  visibility: hidden;
}

.hero-container h4, .hero-container h1, .hero-container a {
  color: #fefefe;
}
.hero-container h1 {
  text-transform: uppercase;
}
.hero-container .section {
  padding: 0;
  position: relative;
}
.hero-container .section#four .section-content {
  background: transparent;
}
@media print, screen and (min-width: 40em) {
  .hero-container .section#two .section-content-background {
    background-image: url("/images/home/hero/slide-2crave-life.jpg") !important;
  }
}
.hero-container .section#two .subtitle img {
  max-width: 200px;
}
@media print, screen and (min-width: 64em) {
  .hero-container .section#two .subtitle img {
    max-width: none;
  }
}
.hero-container .section#two .section-content .button {
  max-width: none;
}
.hero-container .section-content-background {
  height: 100vh;
  text-align: center;
  background-attachment: scroll;
  background-size: cover;
  background-position: center;
}
@media print, screen and (min-width: 40em) {
  .hero-container .section-content-background {
    background-attachment: fixed;
  }
}
.hero-container .section-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.4);
  height: 100vh;
}
.hero-container .section-content h4 {
  font-weight: 400;
  letter-spacing: 0.25rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hero-container .section-content h4 {
    font-size: 1.5rem;
  }
}
.hero-container .section-content .title {
  margin-bottom: 2rem;
}
.hero-container .section-content .button {
  background: rgba(51, 51, 51, 0.7);
  border-radius: 25px;
  text-transform: none;
  font-weight: 600;
  padding: 1rem 2rem;
  font-size: 1rem;
  letter-spacing: 0.05rem;
  font-weight: 400;
  width: auto;
  border: 0;
  text-transform: uppercase;
  white-space: nowrap;
}
.hero-container .hero-scroll-more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  pointer-events: none;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  bottom: 15%;
  color: #fefefe;
  z-index: 9;
  left: 0;
  right: 0;
  font-size: 1.25rem;
}
.hero-container .hero-scroll-more i {
  height: 30px;
  width: 30px;
  -webkit-animation: updown 2s ease infinite;
          animation: updown 2s ease infinite;
}
@-webkit-keyframes updown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  25% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  99% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
}
@keyframes updown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
  25% {
    -webkit-transform: translateY(100%);
            transform: translateY(100%);
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  99% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%);
  }
}
.hero-container .table-of-contents {
  position: fixed;
  height: 100vh;
  z-index: 10;
  top: 0;
  bottom: 0;
  right: 0.5rem;
  bottom: 0;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  .hero-container .table-of-contents {
    right: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hero-container .table-of-contents {
    right: 5rem;
  }
}
.hero-container .table-of-contents a {
  border-left: 3px solid #fefefe;
  height: 20px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hero-container .table-of-contents a.active {
  height: 50px;
}

.hero .video-container, .hero-container .video-container {
  --videoRatio: calc(16 / 9); /* CHANGE THIS IF THE VIDEO CHANGES */
  padding: 0;
  margin: 0;
  width: 100%;
  overflow: hidden;
  position: relative;
  background-image: url("/images/home/hero.jpg");
  background-position: center;
  background-size: cover;
}
@media print, screen and (min-width: 40em) {
  .hero .video-container, .hero-container .video-container {
    height: 100vh;
  }
}
.hero, .hero-container {
  /* to start with assume that the viewport is wide enough for the video taking up full width the height will be at least 100vh */
}
.hero .video-container iframe, .hero-container .video-container iframe {
  padding: 0;
  margin: 0;
  position: absolute;
  --w: 100vw;
  --h: calc(var(--w) / var(--videoRatio));
  height: var(--h);
  width: var(--w);
  top: calc(50% - var(--h) / 2);
  left: 0;
  width: var(--w);
  height: var(--h);
}
@media print, screen and (max-width: 39.99875em) {
  .hero .video-container iframe, .hero-container .video-container iframe {
    display: none;
  }
}
.hero, .hero-container {
  /* Maximum aspect ratio */
}
@media (max-aspect-ratio: 16/9) {
  .hero, .hero-container { /*the viewport is too narrow for the full video */ }
  .hero .video-container iframe, .hero-container .video-container iframe {
    --h: 100vh;
    --w: calc(var(--h) * var(--videoRatio));
    top: 0;
    left: calc(50% - var(--w) / 2);
  }
}
.hero .video-container-short, .hero-container .video-container-short {
  --videoRatio: calc(16 / 9); /* CHANGE THIS IF THE VIDEO CHANGES */
  padding: 0;
  margin: 0;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: relative;
  background-image: url("/images/home/hero.jpg");
  background-position: center;
  background-size: cover;
}
.hero .video-container-short iframe, .hero-container .video-container-short iframe {
  padding: 0;
  margin: 0;
  position: absolute;
  --w: 100vw;
  --h: calc(var(--w) / var(--videoRatio));
  height: var(--h);
  width: var(--w);
  top: calc(50% - var(--h) / 2);
  left: 0;
  width: var(--w);
  height: var(--h);
}
@media print, screen and (min-width: 40em) {
  .hero .video-container-short iframe, .hero-container .video-container-short iframe {
    display: none;
  }
}
@media (max-aspect-ratio: 16/9) {
  .hero .video-container-short, .hero-container .video-container-short { /*the viewport is too narrow for the full video */ }
  .hero .video-container-short iframe, .hero-container .video-container-short iframe {
    --h: 100vh;
    --w: calc(var(--h) * var(--videoRatio));
    top: 0;
    left: calc(50% - var(--w) / 2);
  }
}

.home-slider-container {
  margin-bottom: 0;
}
.home-slider-container .slick-slide {
  position: relative;
}

.home-slider-img {
  width: 100%;
}

.hero {
  position: relative;
}
.hero-link {
  display: block;
}
.hero img {
  width: 100%;
}
.hero .slick-slide {
  background-position: center;
  background-size: cover;
  background-size: cover;
  /*
  @include breakpoint (large) {
    height:100vh;
    padding-bottom:0;

  }*/
}
.hero {
  /*.slick-list {
    overflow: visible;
  }*/
}
.hero figure {
  margin: 0;
}
.hero .youtube {
  position: relative;
  padding-bottom: 5.62%; /* 16:9 */
  padding-bottom: 56.62%;
  background-size: cover;
  height: 100vh;
}
.hero .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.hero .next-section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.5);
}
@media print, screen and (min-width: 40em) {
  .hero .next-section {
    padding-left: 2rem;
    padding-bottom: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hero .next-section {
    padding-left: 5rem;
    padding-bottom: 3rem;
    background-color: transparent;
  }
}
.hero .next-section-container {
  color: #fefefe;
  padding: 1rem;
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container {
    padding: 0;
  }
}
.hero .next-section-container h2 {
  color: #fefefe;
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .hero .next-section-container h2 {
    font-size: 1rem;
  }
}
.hero .next-section-container p {
  font-size: 0.9rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container p {
    font-size: 1.25rem;
  }
}
.hero .next-section-container > div {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hero .next-section-container > div {
    margin-bottom: 2rem;
  }
}
.hero .next-section-container .button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (max-width: 63.99875em) {
  .hero .next-section-container .button-container {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container .button-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.hero .next-section-container .button-container > a {
  padding-left: 1rem;
  padding-right: 1rem;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container .button-container > a {
    margin-right: 2rem;
  }
}
.hero .next-section-container .button-container > a.button {
  background-color: #fefefe;
  color: #333333;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container .button-container > a.button {
    width: 166px;
  }
}
.hero .next-section-container .button-container > a.button:hover {
  background-color: #333333;
  color: #fefefe;
}
.hero .next-section-container .button-container > a.link {
  border-bottom: 1px solid #eb212e;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .hero .next-section-container .button-container > a.link {
    width: auto;
  }
}
.hero .next-section-container .button-container > a.link:hover {
  background-color: #fefefe;
  color: #333333;
  border-bottom-color: transparent;
}
.hero .flex-video {
  height: 100vh;
}
.hero .flex-video iframe {
  -webkit-transform: scale(5);
          transform: scale(5);
}
@media print, screen and (max-width: 63.99875em) {
  .hero .flex-video iframe {
    display: none;
  }
}
@media print, screen and (min-width: 40em) {
  .hero .flex-video iframe {
    -webkit-transform: scale(3);
            transform: scale(3);
  }
}
@media print, screen and (min-width: 64em) {
  .hero .flex-video iframe {
    -webkit-transform: scale(2);
            transform: scale(2);
  }
}
@media screen and (min-width: 1575px) {
  .hero .flex-video iframe {
    -webkit-transform: scale(1.25);
            transform: scale(1.25);
  }
}
.hero .hero-mobile-text {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  background-image: -webkit-gradient(linear, left top, left bottom, from(#0a0a0a), color-stop(transparent), to(transparent));
  background-image: linear-gradient(#0a0a0a, transparent, transparent);
}
.hero .hero-mobile-text h1 {
  display: none;
  text-align: center;
  color: #fefefe;
  text-transform: lowercase;
  font-weight: 700;
}
@media print, screen and (min-width: 40em) {
  .hero .hero-mobile-text h1 {
    font-size: 7rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hero .hero-mobile-text h1 {
    line-height: 0.75;
    font-size: 10rem;
  }
}
.hero .hero-mobile-text h3 {
  font-style: normal;
  color: #eb212e;
  text-transform: lowercase;
  font-weight: 500;
}
@media print, screen and (min-width: 64em) {
  .hero .hero-mobile-text h3 {
    font-size: 3rem;
  }
}

/*
.video-background {
  background: #000;
  position: fixed;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: -99;
}*/
.video-overlay {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.4);
  z-index: 1;
}

.video-foreground,
.video-background iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.hero-bkg {
  background-position: top;
  background-size: contain;
  background-repeat: no-repeat;
}
@media print, screen and (min-width: 40em) {
  .hero-bkg {
    background-size: cover;
  }
}

.next-section a {
  text-transform: uppercase;
  color: #fefefe;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 166px;
  height: 60px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-weight: 500;
  font-size: 1.25rem;
}
.next-section a:hover i {
  color: #eb212e;
  border-color: #eb212e;
}
.next-section .cube-button a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.next-section .cube-bottom a {
  background-color: #fefefe;
  color: #0a0a0a;
}
.next-section i {
  border: 3px solid #fefefe;
  border-radius: 50px;
  font-size: 2rem;
  width: 75px;
  height: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fefefe;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  background-color: rgba(0, 0, 0, 0.5);
}

.hero-overlay {
  background-color: #eb212e;
}
.hero-overlay-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media (max-width: 1023px) {
  .hero-overlay-content {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
  }
}
@media print, screen and (min-width: 64em) {
  .hero-overlay {
    position: absolute;
    top: 20%;
    right: 0;
    padding: 0;
    background-color: transparent;
  }
}
.hero-overlay-info {
  display: inline-block;
  background-color: rgb(0, 102, 178);
  padding: 0.5rem;
  color: #fefefe;
  max-width: 500px;
  width: 100%;
}
@media print, screen and (min-width: 40em) {
  .hero-overlay-info {
    padding: 1rem 1rem 1rem 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hero-overlay-info {
    margin: 0 0 1rem;
    background-color: rgba(0, 102, 178, 0.8);
    clip-path: polygon(6% 0, 100% 0%, 100% 100%, 0 100%);
    -webkit-clip-path: polygon(6% 0, 100% 0%, 100% 100%, 0 100%);
  }
}
.hero-overlay-info--small {
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
}
@media print, screen and (min-width: 40em) {
  .hero-overlay-info--small {
    font-size: 1.43rem;
  }
}
.hero-overlay-info--medium {
  font-size: 1.7rem;
  font-style: italic;
}
@media print, screen and (min-width: 40em) {
  .hero-overlay-info--medium {
    font-size: 2.4rem;
  }
}
.hero-overlay-info--large {
  color: #fefefe;
  font-size: 2rem;
  font-style: italic;
  margin: 0;
}
@media print, screen and (min-width: 40em) {
  .hero-overlay-info--large {
    font-size: 4.6rem;
  }
}
.hero-overlay-header {
  font-family: "Roboto Condensed";
  text-transform: capitalize;
  font-style: italic;
  font-size: 2rem;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .hero-overlay-header {
    margin-top: 1rem;
    font-size: 3.2rem;
    margin-bottom: 0.5rem;
  }
}
.hero-overlay-desc {
  text-transform: capitalize;
  font-weight: 300;
  line-height: 1.2;
  font-size: 2rem;
  font-style: italic;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .hero-overlay-desc {
    margin-bottom: 1rem;
  }
}

.hero-btn {
  -ms-flex-item-align: start;
      align-self: flex-start;
}
@media print, screen and (min-width: 40em) {
  .hero-btn {
    display: inline-block;
  }
}
@media (max-width: 1023px) {
  .hero-btn {
    margin: 0 auto 1rem;
  }
}

.hp-hero img {
  width: 100%;
}

.hero-video {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
  display: none;
}
@media print, screen and (min-width: 40em) {
  .hero-video {
    display: block;
  }
}
.hero-video-short {
  display: block;
}
@media print, screen and (min-width: 40em) {
  .hero-video-short {
    display: none;
  }
}

.hero-video__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}

.hero-video__content {
  position: relative;
  z-index: 1;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-align: center;
}

.hero-video::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 1;
}

.hero-video__content {
  position: relative;
  z-index: 2;
}

.hp .explore {
  position: relative;
}
.hp .explore .background {
  background-image: url("/images/home/explore-bg.webp");
  background-position: center;
  background-size: 150%;
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.hp .explore .background img {
  width: 100%;
  opacity: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .explore .background {
    padding-top: 0;
    padding-bottom: 0;
  }
  .hp .explore .background img {
    opacity: 1;
  }
}
.hp .explore .foreground {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: rgba(0, 0, 0, 0.5);
}
@media print, screen and (min-width: 64em) {
  .hp .explore .foreground {
    background: transparent;
    bottom: 8rem;
    text-align: left;
    bottom: 4rem;
    top: unset;
  }
}
.hp .explore p {
  line-height: 1.5;
  color: #fefefe;
  font-size: 1.25rem;
  font-weight: 300;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .explore p {
    font-size: 2.5rem;
    margin-bottom: 1rem;
  }
}
.hp .explore .explore-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hp .explore .button {
  background-color: rgba(0, 0, 0, 0.5);
  border: 1px solid #cccccc;
  letter-spacing: 2px;
  font-size: 1rem;
  width: 264px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  .hp .explore .button {
    font-size: 1rem;
    height: 74px;
  }
}

.hp .pencil {
  padding-top: 2.5rem;
  padding-bottom: 2rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil {
    padding-top: 4rem;
    padding-bottom: 4rem;
    padding-left: 0;
    padding-right: 0;
  }
}
.hp .pencil h1, .hp .pencil p, .hp .pencil a {
  line-height: 1;
}
.hp .pencil h1 {
  margin-bottom: 0.5rem;
  line-height: 0.8;
  font-size: 1.65rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil h1 {
    font-size: 4.5rem;
    letter-spacing: -2px;
    line-height: 1;
    margin-bottom: 0;
  }
}
.hp .pencil p, .hp .pencil a {
  text-transform: uppercase;
}
.hp .pencil p {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil p {
    font-size: 1.5rem;
    line-height: 1;
    font-weight: 300;
  }
}
.hp .pencil .pencil-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil .pencil-right {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.hp .pencil .button {
  font-size: 1rem;
  width: 140px;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil .button {
    font-size: 1rem;
    height: 66px;
    width: 205px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.hp .wheels {
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
.hp .wheels .row {
  max-width: 81.25rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .row {
    max-width: none;
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
.hp .wheels h1, .hp .wheels p {
  color: #0a0a0a;
}
.hp .wheels h1 {
  text-transform: uppercase;
  text-align: center;
  font-weight: 900;
  line-height: 0.75;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels h1 {
    font-size: 6.25rem;
    letter-spacing: -0.1rem;
  }
}
.hp .wheels .wheels-header .title {
  margin-bottom: 2rem;
}
.hp .wheels .wheels-header .title p {
  font-size: 1.125rem;
  font-weight: 300;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-header .title p {
    font-size: 1.9rem;
  }
}
.hp .wheels .wheels-header .subtitle {
  display: inline-block;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-header .subtitle {
    margin-bottom: 2rem;
  }
}
.hp .wheels .wheels-header .subtitle p {
  font-family: "Teko", sans-serif;
  text-transform: uppercase;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.125rem;
}
.hp .wheels .wheels-header .subtitle p:after {
  content: "";
  height: 3px;
  background-color: #999999;
  display: block;
  width: 100%;
  margin: 0 auto;
}
@media print, screen and (min-width: 40em) {
  .hp .wheels .wheels-header .subtitle p:after {
    height: 6px;
    margin-top: 0.75rem;
  }
}
.hp .wheels .wheels-list {
  text-transform: uppercase;
  line-height: 1;
  letter-spacing: 0.1rem;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list {
    padding-left: 0;
    padding-right: 0;
  }
  .hp .wheels .wheels-list .column:nth-child(odd), .hp .wheels .wheels-list .columns:nth-child(odd) {
    padding-right: 2rem;
  }
  .hp .wheels .wheels-list .column:nth-child(even), .hp .wheels .wheels-list .columns:nth-child(even) {
    padding-left: 2rem;
  }
}
.hp .wheels .wheels-list a {
  display: block;
  color: #0a0a0a;
}
.hp .wheels .wheels-list a:hover img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.hp .wheels .wheels-list a:hover .wheel-name {
  color: #eb212e;
}
.hp .wheels .wheels-list .image {
  background-color: #f7f7f7;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .hp .wheels .wheels-list .image {
    padding: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list .image {
    margin-bottom: 2rem;
  }
}
.hp .wheels .wheels-list .image img {
  width: 100%;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hp .wheels .wheels-list .wheel-name {
  font-family: "Teko", sans-serif;
  color: #0a0a0a;
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list .wheel-name {
    font-size: 2.75rem;
    margin-bottom: 2.25rem;
  }
}
.hp .wheels .wheels-list .finish-name, .hp .wheels .wheels-list .wheel-sizes {
  font-size: 0.75rem;
}
@media print, screen and (min-width: 40em) {
  .hp .wheels .wheels-list .finish-name, .hp .wheels .wheels-list .wheel-sizes {
    font-size: 1rem;
  }
}
.hp .wheels .wheels-list .other-finishes {
  font-size: 0.85rem;
  text-transform: uppercase;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  z-index: 2;
  padding-top: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list .other-finishes {
    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;
  }
  .hp .wheels .wheels-list .other-finishes > .other-finish {
    width: 25%;
    margin-right: 6px;
  }
}
.hp .wheels .wheels-list .other-finishes-container {
  display: grid;
  margin-bottom: 1rem;
}
.hp .wheels .wheels-list .other-finishes-container > div {
  grid-column: 1/1;
  grid-row: 1/1;
}
.hp .wheels .wheels-list .other-finishes-container .more-information, .hp .wheels .wheels-list .other-finishes-container .one-information {
  text-align: center;
  font-size: 0.85rem;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  line-height: 1.3;
}
.hp .wheels .wheels-list .other-finishes .thumbnail {
  margin-bottom: 0;
  background-color: #f7f7f7;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 4px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hp .wheels .wheels-list .other-finishes .thumbnail:hover {
  background-color: #cccccc;
}
.hp .wheels .wheels-list .other-finishes .thumbnail:hover img {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.hp .wheels .wheels-list .other-finishes .more-information {
  text-align: center;
}
.hp .wheels .wheels-cta {
  text-align: center;
}
.hp .wheels .wheels-cta .button {
  font-size: 1rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 auto;
  letter-spacing: 0.15rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-cta .button {
    font-size: 1rem;
    width: 278px;
    height: 70px;
  }
}

.brands-slider .slick-list {
  padding: 0 50px;
}
@media print, screen and (min-width: 40em) {
  .brands-slider .slick-list {
    padding: 100px !important;
  }
}
@media print, screen and (min-width: 64em) {
  .brands-slider .slick-list {
    padding: 0 250px !important;
  }
}
.brands-slider .slick-list .slick-slide {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.brands-slider .brands-arrow {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  background-color: #fefefe;
  color: #333333;
  z-index: 10;
  font-size: 1.5rem;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
@media print, screen and (min-width: 40em) {
  .brands-slider .brands-arrow {
    width: 40px;
    height: 40px;
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .brands-slider .brands-arrow {
    width: 80px;
    height: 80px;
    font-size: 3rem;
  }
}
.brands-slider .brands-arrow:hover {
  color: #fefefe;
  background-color: #333333;
}
.brands-slider .brands-next {
  right: 50px;
}
@media print, screen and (min-width: 40em) {
  .brands-slider .brands-next {
    right: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .brands-slider .brands-next {
    right: 210px;
  }
}
.brands-slider .brands-prev {
  left: 50px;
}
@media print, screen and (min-width: 40em) {
  .brands-slider .brands-prev {
    left: 80px;
  }
}
@media print, screen and (min-width: 64em) {
  .brands-slider .brands-prev {
    left: 210px;
  }
}
.brands-slider a {
  display: block;
  position: relative;
}
.brands-slider a .slider-overlay {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.brands-slider a .slider-overlay:hover {
  background-color: rgba(0, 0, 0, 0.8);
}
.brands-slider a .slider-overlay .title {
  font-family: "Playfair Display", serif;
  color: #fefefe;
  font-size: 2rem;
  text-align: center;
  line-height: 1;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 40em) {
  .brands-slider a .slider-overlay .title {
    font-size: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .brands-slider a .slider-overlay .title {
    font-size: 5rem;
  }
}
.brands-slider a .slider-overlay .button {
  background-color: transparent;
  color: #fefefe;
  font-size: 0.8rem;
  font-weight: 700;
  border-bottom: 2px solid #eb212e;
  padding: 0;
  padding-bottom: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .brands-slider a .slider-overlay .button {
    font-size: 1.15rem;
    border-bottom-width: 3px;
  }
}

@media print, screen and (min-width: 40em) {
  .tires-accessories.section {
    margin-bottom: 4rem;
  }
}
.tires-accessories.section h1 {
  font-size: 4rem;
  font-weight: 800;
}
@media print, screen and (max-width: 39.99875em) {
  .tires-accessories.section h1 {
    font-size: 1.35rem;
  }
}
.tires-accessories.section h1 span {
  color: #eb212e;
}
.tires-accessories.section p {
  font-weight: 300;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section p {
    font-size: 1.25rem;
  }
}
.tires-accessories.section p span {
  font-style: italic;
}
.tires-accessories.section h6 {
  font-size: 2rem;
  color: #333333;
  font-weight: 700;
  margin-bottom: 0;
  line-height: 1;
  letter-spacing: -1px;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section h6 {
    letter-spacing: -3px;
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section h6 {
    font-size: 3rem;
  }
}
.tires-accessories.section img {
  width: 100%;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section img {
    /*transform:scale(1.35);*/
  }
}
.tires-accessories.section .section-background-image {
  position: absolute;
}
.tires-accessories.section .section-content {
  position: relative;
  padding-top: 2rem;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section .section-content {
    padding-top: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .section-content {
    padding-top: 10rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .tires-accessories.section .section-content .section-content-container {
    padding-top: 1rem;
    padding-bottom: 0;
  }
}
.tires-accessories.section .section-title {
  text-align: center;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .section-title {
    margin-bottom: 2rem;
  }
}
.tires-accessories.section .section-description {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section .section-description {
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .section-description {
    margin-bottom: 10rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .tires-accessories.section .section-description p {
    margin-bottom: 0;
  }
}
.tires-accessories.section .cta-list {
  width: 100%;
}
.tires-accessories.section .cta-list .row {
  margin-left: 2rem;
  margin-right: 2rem;
}
.tires-accessories.section .cta-list .row .column, .tires-accessories.section .cta-list .row .columns {
  margin-bottom: 2rem;
}
@media print, screen and (max-width: 39.99875em) {
  .tires-accessories.section .cta-list .row {
    padding-left: 0;
    padding-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .cta-list .row .column, .tires-accessories.section .cta-list .row .columns {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.tires-accessories.section .cta-list .row .column:first-child a, .tires-accessories.section .cta-list .row .columns:first-child a {
  background-image: url("/images/home/cta-tires.jpg");
}
.tires-accessories.section .cta-list .row .column:last-child a, .tires-accessories.section .cta-list .row .columns:last-child a {
  background-image: url("/images/home/cta-accessories.jpg");
}
.tires-accessories.section .cta-list a {
  display: block;
  background-color: #f5f5f5;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  text-align: center;
  color: #fefefe;
  background-size: cover;
  padding-top: 25%;
  padding-bottom: 25%;
  /*
  padding-top:1rem;
  padding-bottom:1rem;
  @include breakpoint (medium) {
    padding-top:2rem;
    padding-bottom:2rem;
  }
  @include breakpoint (large) {
    padding-top:4rem;
    padding-bottom:4rem;
  }*/
}
.tires-accessories.section .cta-list a h4 {
  color: #fefefe;
  font-family: "Playfair Display", serif;
  font-size: 2rem;
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .cta-list a h4 {
    font-size: 3.5rem;
  }
}
.tires-accessories.section .cta-list a:hover {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}
.tires-accessories.section .cta-list img {
  width: auto;
}
.tires-accessories.section .cta-list {
  /*
  .title,.image {
    margin-bottom:2rem;
    @include breakpoint (medium) {
      margin-bottom:4rem;
    }
    @include breakpoint (large) {
      margin-bottom:6rem;
    }
  }*/
}
.tires-accessories.section .cta-list p {
  font-size: 1.1rem;
  color: #eb212e;
  text-transform: uppercase;
  font-weight: 500;
  letter-spacing: -1px;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section .cta-list p {
    line-height: 2rem;
    font-size: 1.5rem;
  }
}
.tires-accessories.section .cta-list p span {
  font-size: 1rem;
  color: #333333;
  font-weight: 300;
  font-style: normal;
  text-transform: lowercase;
  letter-spacing: 0;
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section .cta-list p span {
    font-size: 1.5rem;
  }
}
.tires-accessories.section .cta-list .button {
  background-color: transparent;
  color: #fefefe;
  font-size: 0.8rem;
  font-weight: 700;
  border-bottom: 2px solid #eb212e;
  padding: 0;
  padding-bottom: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .tires-accessories.section .cta-list .button {
    font-size: 1.15rem;
    border-bottom-width: 3px;
  }
}
@media print, screen and (min-width: 40em) {
  .tires-accessories.section .cta-list .inline-block-display {
    float: none;
    display: inline-block;
  }
}
.tires-accessories.section .cta-list {
  /*    .column {
        &:first-child {
          .image {
            z-index: 3; 
            &:after {
              background-image:url('//images.iconfigurators.app/images/wheels/large/mkw-r901-wheel-5lug-brushed-titanium-20x11-500_6975.png');
            }
          }
        }
        &:nth-child(2) {
          .image {
            z-index: 2; 
            &:after {
              background-image: url('//images.iconfigurators.app/images/wheels/large/mkw-r902-wheel-5lug-brushed-titanium-20x11-500_3250.png');
            }
          }
        }
        &:last-child {
          .image {
            &:after {
              background-image: url('//images.iconfigurators.app/images/wheels/large/mkw-r903-wheel-5lug-bronze-18x95-500_5934.png');
            }
          }
        }
      }
      .image {
        overflow: visible;
        position:relative;
        &:after {
          position:absolute;
          content: '';
          top:0;
          right:0;
          bottom:0;
          left:0;
        }
      }*/
}

.hp .cta {
  background-color: #ededed;
  padding-top: 2rem;
  padding-bottom: 2rem;
  text-align: center;
}
@media print, screen and (min-width: 40em) {
  .hp .cta {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .cta {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
.hp .cta .row {
  max-width: 81.25rem;
}
@media print, screen and (min-width: 64em) {
  .hp .cta .row {
    max-width: none;
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
.hp .cta .row > .column a, .hp .cta .row > .columns a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-size: 100%;
  background-position: center;
  font-family: "Teko", sans-serif;
  color: #fefefe;
  font-size: 2rem;
  text-transform: uppercase;
  font-weight: 900;
  line-height: 1;
  padding-top: 25%;
  padding-bottom: 25%;
}
@media print, screen and (min-width: 64em) {
  .hp .cta .row > .column a, .hp .cta .row > .columns a {
    font-size: 3.5rem;
    padding-top: 32%;
    padding-bottom: 32%;
  }
}
.hp .cta .row > .column a:hover, .hp .cta .row > .columns a:hover {
  background-size: 101%;
}
.hp .cta .row > .column:nth-child(2), .hp .cta .row > .columns:nth-child(2), .hp .cta .row > .column:nth-child(3), .hp .cta .row > .columns:nth-child(3) {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .hp .cta .row > .column:nth-child(2), .hp .cta .row > .columns:nth-child(2), .hp .cta .row > .column:nth-child(3), .hp .cta .row > .columns:nth-child(3) {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .cta .row > .column:nth-child(2), .hp .cta .row > .columns:nth-child(2) {
    padding-right: 2rem;
  }
}
.hp .cta .row > .column:nth-child(2) a, .hp .cta .row > .columns:nth-child(2) a {
  background-image: url("/images/home/cta-gallery.jpg");
}
@media print, screen and (min-width: 64em) {
  .hp .cta .row > .column:nth-child(3), .hp .cta .row > .columns:nth-child(3) {
    padding-left: 2rem;
  }
}
.hp .cta .row > .column:nth-child(3) a, .hp .cta .row > .columns:nth-child(3) a {
  background-image: url("/images/home/cta-visualizer.jpg");
}
.hp .cta h1 {
  text-transform: uppercase;
  color: #0a0a0a;
  font-weight: 900;
  line-height: 0.75;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .cta h1 {
    font-size: 4.75rem;
    letter-spacing: -0.1rem;
  }
}
.hp .cta h1:after {
  content: "";
  height: 3px;
  background-color: #eb212e;
  display: block;
  width: 215px;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  .hp .cta h1:after {
    height: 6px;
  }
}
.hp .cta p {
  font-size: 1.1rem;
}
.hp .cta .title {
  margin-bottom: 2rem;
}
.hp .cta .text {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .cta .text {
    margin-bottom: 4rem;
  }
}
.hp .cta .subtitle:after {
  content: "";
  height: 3px;
  background-color: #eb212e;
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .hp .cta .subtitle:after {
    height: 6px;
  }
}

.hp .dealers h1 {
  color: #0a0a0a;
  margin-bottom: 0;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 0.85;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .hp .dealers h1 {
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .dealers h1 {
    font-size: 5rem;
    letter-spacing: -0.2rem;
  }
}
.hp .dealers .button {
  display: inline-block;
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .hp .dealers .button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .dealers .button {
    height: 68px;
    width: 208px;
  }
}
.hp .dealers .dealer-content {
  text-align: center;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media print, screen and (min-width: 40em) {
  .hp .dealers .dealer-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .dealers .dealer-content {
    padding-top: 3rem;
    padding-bottom: 3rem;
    height: 256px;
  }
}

.hp .about {
  background-image: url("/images/home/about-bg.webp");
  background-color: #fefefe;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: bottom;
  text-align: center;
  padding: 2rem;
  padding-bottom: 2rem;
  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;
  padding-bottom: 10rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about {
    padding-top: 4rem;
    padding-bottom: 4rem;
    height: 1260px;
  }
}
.hp .about h1 {
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: -0.2rem;
  font-weight: 700;
}
@media print, screen and (min-width: 64em) {
  .hp .about h1 {
    font-size: 5rem;
  }
}
.hp .about h3 {
  font-family: "Roboto", sans-serif;
  font-weight: 300;
  text-transform: none;
  font-size: 1.5rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about h3 {
    font-size: 2.75rem;
  }
}
.hp .about p {
  font-size: 1.125rem;
  font-weight: 300;
  text-align: left;
}
@media print, screen and (min-width: 64em) {
  .hp .about p {
    font-size: 1.65rem;
  }
}
.hp .about .button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: transparent;
  color: #fefefe;
  margin: 0 auto;
  background-color: #333333;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about .button {
    font-size: 1rem;
    height: 68px;
    width: 208px;
  }
}
.hp .about .button:hover {
  background-color: #cccccc;
}
.hp .about .logo {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about .logo {
    margin-bottom: 3rem;
  }
}
.hp .about .break {
  width: 214px;
  height: 6px;
  background-color: #333333;
  margin: 1.25rem auto;
}
@media print, screen and (min-width: 64em) {
  .hp .about .break {
    margin: 2.5rem auto;
  }
}
.hp .about .text {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about .text {
    margin-bottom: 4rem;
  }
}

.instagram a {
  padding-bottom: 0;
}
.instagram .title {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
.instagram .title h2 {
  text-align: center;
  text-transform: uppercase;
  color: #0a0a0a;
  font-style: normal;
  margin-bottom: 0;
}
.instagram .title a {
  padding-bottom: 0;
  display: inline;
  color: #0a0a0a;
}
.instagram .title a:hover {
  color: #eb212e;
}
.instagram #instagram a {
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
}
.instagram #instagram a:hover {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
}

#instagram-popup {
  color: #333333;
}

.accordion-filter {
  text-align: center;
  margin-right: 1rem;
  margin-left: 1rem;
}
@media print, screen and (min-width: 40em) {
  .accordion-filter {
    margin-right: auto;
    margin-left: auto;
  }
}
@media print, screen and (min-width: 64em) {
  .accordion-filter__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.accordion-filter__header {
  font-size: 1rem;
  display: inline-block;
  margin: 0;
}
.accordion-filter__header--mobile {
  border: 1px solid #e6e6e6;
  padding: 1rem;
  text-transform: capitalize;
  font-size: 1rem;
  color: #0a0a0a;
}
.accordion-filter__content {
  border: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .accordion-filter__content {
    padding-left: 0;
    padding-right: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .accordion-filter__dropdown {
    margin: 0 0.5rem;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}
.accordion-filter__dropdown select {
  padding: 1rem;
  height: auto;
  background-position: right 0rem center;
}
@media print, screen and (min-width: 40em) {
  .accordion-filter__dropdown select {
    padding: 0.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .accordion-filter__dropdown select {
    margin: 0;
  }
}
.accordion-filter__btn {
  margin: 0;
  padding: 0.65rem 1rem;
  font-size: 1rem;
}
@media print, screen and (max-width: 39.99875em) {
  .accordion-filter__btn {
    max-width: none;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}

.selectedVehicleBar {
  position: relative;
  background-color: #ebebeb;
}
.selectedVehicleBar .layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 80px;
  max-width: 75rem;
  margin: 0 auto;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .selectedVehicleBar .layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.selectedVehicleBar img {
  max-height: 100px;
}
.selectedVehicleBar .row--small {
  max-width: 67rem;
}
.selectedVehicleBar__content {
  padding-left: 0;
  padding-right: 0;
}
.selectedVehicleBar__content--noMargin {
  margin: 0;
}
@media print, screen and (min-width: 40em) {
  .selectedVehicleBar__content {
    margin: 1.5rem auto 0;
  }
}
.selectedVehicleBar__text {
  text-align: center;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .selectedVehicleBar__text {
    font-size: 2rem;
  }
}
.selectedVehicleBar__span {
  color: #6a6a6a;
  white-space: nowrap;
}
.selectedVehicleBar__btn {
  width: 100%;
  margin-bottom: 0;
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.selectedVehicleBar--smaller {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-size: 1rem;
}

.pencil-top-search {
  padding: 11px 0;
}

.nav-search {
  display: inline-block;
}
@media print, screen and (min-width: 64em) {
  .nav-search {
    margin-left: 1rem;
  }
}

.search-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  vertical-align: center;
  margin-bottom: 0.8rem;
}
.search-link__text {
  position: relative;
  font-size: 0.9rem;
  top: 0.2rem;
  color: #0a0a0a;
  font-weight: 500;
  text-decoration: underline;
}
@media (min-width: 1024px) and (max-width: 1200px) {
  .search-link__text {
    font-size: 0.9rem;
  }
}
@media only screen and (min-width: 1024px) {
  .search-link__text {
    color: #fefefe;
  }
}

.search-icon {
  color: rgba(0, 0, 0, 0.8);
  font-size: 1.5rem;
  margin-right: 0.2rem;
  padding-left: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .search-icon {
    padding-left: 0;
    color: rgba(255, 255, 255, 0.8);
  }
}

.search-box {
  display: none;
  position: absolute;
  bottom: 0.7rem;
  width: 423px;
  z-index: 11;
}
@media screen and (max-width: 1024px) {
  .search-box {
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
}

.search-btn {
  border-radius: 0;
}

#collection .page-header {
  position: relative;
  height: 100vh;
}
@media print, screen and (min-width: 64em) {
  #collection .page-header {
    height: 90vh;
  }
  #collection .page-header .section-content, #collection .page-header .section-content-background {
    height: 90vh;
  }
}
#collection .page-header h1, #collection .page-header h4 {
  color: #fefefe;
}
#collection .page-header h1 {
  font-weight: 900;
  font-size: 2.75rem;
}
#collection .page-header h1 span {
  text-transform: uppercase;
  font-weight: 900;
}
@media print, screen and (min-width: 64em) {
  #collection .page-header h1 {
    font-size: 4.5rem;
  }
}
#collection .page-header h4 {
  font-weight: 400;
  letter-spacing: 0.25rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  #collection .page-header h4 {
    font-size: 1.5rem;
  }
}
#collection .page-header .section-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  height: 100vh;
}
@media print, screen and (min-width: 64em) {
  #collection .page-header .section-content {
    height: 90vh;
  }
}
#collection .page-header .section-content-background {
  text-align: center;
  background-attachment: scroll;
  background-size: cover;
  background-position: center;
  height: 100vh;
}
@media print, screen and (min-width: 64em) {
  #collection .page-header .section-content-background {
    background-attachment: fixed;
    height: 90vh;
  }
}
#collection .page-header .section-content .content-scroll-more {
  position: absolute;
  bottom: 15%;
}
#collection .page-header .section-content .content-scroll-more a {
  color: #fefefe;
}
#collection .page-header .section-content .content-scroll-more a .material-symbols-outlined {
  font-size: 4rem;
  -webkit-animation: updown 2s ease infinite;
          animation: updown 2s ease infinite;
}
#collection .page-body {
  padding-top: 2rem;
}
@media print, screen and (min-width: 64em) {
  #collection .page-body {
    padding-top: 3rem;
  }
}
#collection .page-body-center {
  text-align: center;
}
#collection .page-body > .row:first-child {
  padding: 0 3rem;
}
#collection .page-body h2 {
  font-size: 1.75rem;
  font-weight: 700;
}
#collection .page-body h2 span {
  font-weight: 700;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #collection .page-body h2 {
    font-size: 2.5rem;
  }
}
#collection .page-body a {
  color: #0a0a0a;
  text-transform: uppercase;
}
#collection .page-body a:hover {
  color: #eb212e;
}
#collection .page-body-nav {
  padding-top: 1rem;
}
#collection .page-body .collection-nav {
  text-align: center;
  padding-top: 1rem;
  padding-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#collection .page-body .collection-nav.body-nav-fixed {
  background-color: #fefefe;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
}
#collection .page-body .collection-nav {
  /*ul {
      justify-content: space-around;
      margin-left:0;
      @include breakpoint (large) {
        display:inline-flex;
      }
      > li {
        display:inline-block;
        margin-left:1.25rem;
        &:first-child {
          margin-left:0;
        }
      }
    }*/
}
#collection .page-body .collection-nav ul {
  white-space: nowrap;
  overflow-x: auto;
  scroll-behavior: smooth;
}
#collection .page-body .collection-nav ul > li {
  display: inline-block;
}
#collection .page-body .collection-nav a {
  display: inline-block;
  font-weight: 500;
  padding: 0 0.5rem;
}
#collection .page-listing a {
  display: block;
  background-position: center;
  background-size: cover;
}
#collection .page-listing h3, #collection .page-listing p {
  color: #fefefe;
}
#collection .page-listing h3 {
  font-size: 1.75rem;
}
@media print, screen and (min-width: 64em) {
  #collection .page-listing h3 {
    font-size: 2.5rem;
  }
}
#collection .page-listing p {
  font-size: 1.25rem;
  font-weight: 300;
}
@media print, screen and (min-width: 64em) {
  #collection .page-listing p {
    font-size: 1.75rem;
  }
}
#collection .page-listing .listing-item {
  max-width: 90rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 55vh;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 3rem;
}
#collection .page-listing .listing-item-overlay {
  background-color: rgba(0, 0, 0, 0);
  position: relative;
}
#collection .page-listing .listing-item-overlay-addtl {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: block;
  background-color: rgba(0, 0, 0, 0.3);
}
@media print, screen and (min-width: 40em) {
  #collection .page-listing .listing-item > div:first-child {
    width: 75%;
  }
  #collection .page-listing .listing-item > div:last-child {
    width: 25%;
  }
}
@media print, screen and (min-width: 64em) {
  #collection .page-listing .listing-item > div {
    width: 50%;
  }
}
#collection .page-listing .listing-item .logo img {
  min-height: 60px;
}
#collection .page-listing .link {
  color: #fefefe;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-weight: 500;
}

#series .page-header {
  position: relative;
  height: 150vh;
  /*
  @include breakpoint (large) {
    height:80vh;
    .section-content,.section-content-background {
      height:80vh;
    }
  }*/
}
#series .page-header h1, #series .page-header h4 {
  color: #fefefe;
}
#series .page-header h1 {
  font-weight: 700;
  font-size: 2.75rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #series .page-header h1 {
    font-size: 4.5rem;
  }
}
#series .page-header h4 {
  font-weight: 400;
  letter-spacing: 0.25rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  #series .page-header h4 {
    font-size: 1.5rem;
  }
}
#series .page-header .section-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  position: static;
}
#series .page-header .section-content-background {
  text-align: center;
  background-attachment: scroll;
  background-size: cover;
  background-position: center;
  height: 150vh;
}
@media print, screen and (min-width: 64em) {
  #series .page-header .section-content-background {
    background-attachment: fixed;
  }
}
#series .page-header .section-content-top {
  height: 100vh;
}
#series .page-header .section-content-bottom {
  height: 50vh;
}
#series .page-header .section-content-top {
  position: relative;
}
#series .page-header .section-content-top .content-at-scroll {
  opacity: 0;
}
#series .page-header .section-content-top .content-scroll-more {
  position: absolute;
  bottom: 15%;
}
#series .page-header .section-content-top .content-scroll-more a {
  color: #fefefe;
}
#series .page-header .section-content-top .content-scroll-more a .material-symbols-outlined {
  font-size: 4rem;
  -webkit-animation: updown 2s ease infinite;
          animation: updown 2s ease infinite;
}
#series .page-header .section-content-bottom {
  text-align: left;
}
#series .page-header .section-content-bottom h2, #series .page-header .section-content-bottom p {
  color: #fefefe;
}
#series .page-header .section-content-bottom h2 {
  text-transform: none;
}
#series .page-header .section-content-bottom .content {
  width: 100%;
}
#series .page-header .section-content-bottom-right p {
  font-size: 1.175rem;
}
#series .page-body {
  padding-top: 5rem;
}
@media print, screen and (min-width: 64em) {
  #series .page-body {
    padding-top: 7rem;
  }
}
#series .page-body-center {
  text-align: center;
}
#series .page-body > .row:first-child {
  padding-left: 1rem;
}
@media print, screen and (min-width: 64em) {
  #series .page-body > .row:first-child {
    padding-left: 0;
  }
}
#series .page-body h2 {
  font-size: 1.75rem;
  font-weight: 700;
}
@media print, screen and (min-width: 64em) {
  #series .page-body h2 {
    font-size: 2.5rem;
  }
}
#series .page-body a {
  color: #0a0a0a;
  text-transform: capitalize;
}
#series .page-body a:hover {
  color: #eb212e;
}
#series .page-body-nav {
  padding-top: 1rem;
}
#series .page-body .collection-nav {
  text-align: center;
  padding-top: 5rem;
  padding-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  #series .page-body .collection-nav {
    padding-top: 7rem;
  }
}
#series .page-body .collection-nav.body-nav-fixed {
  background-color: #fefefe;
  padding-top: 1rem;
  padding-bottom: 1rem;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
}
#series .page-body .collection-nav ul {
  -ms-flex-pack: distribute;
      justify-content: space-around;
  margin-left: 0;
}
@media print, screen and (min-width: 64em) {
  #series .page-body .collection-nav ul {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}
#series .page-body .collection-nav ul > li {
  display: inline-block;
  margin-left: 1.25rem;
}
#series .page-body .collection-nav ul > li:first-child {
  margin-left: 0;
}
#series .page-body .collection-nav a {
  display: inline-block;
  font-weight: 500;
}
#series .page-listing a {
  display: block;
  background-position: center;
  background-size: cover;
}
#series .page-listing a:hover .link {
  color: #eb212e;
}
#series .page-listing h3 {
  font-size: 1.75rem;
}
@media print, screen and (min-width: 64em) {
  #series .page-listing h3 {
    font-size: 2.5rem;
  }
}
#series .page-listing p {
  font-size: 1.25rem;
  font-weight: 300;
}
@media print, screen and (min-width: 64em) {
  #series .page-listing p {
    font-size: 1.75rem;
  }
}
#series .page-listing .listing-item {
  max-width: 90rem;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 55vh;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 2rem;
}
@media print, screen and (min-width: 64em) {
  #series .page-listing .listing-item {
    padding-left: 0;
  }
}
@media print, screen and (min-width: 40em) {
  #series .page-listing .listing-item > div:first-child {
    width: 75%;
  }
  #series .page-listing .listing-item > div:last-child {
    width: 25%;
  }
}
@media print, screen and (min-width: 64em) {
  #series .page-listing .listing-item > div {
    width: 50%;
  }
}
#series .page-listing .link {
  color: #0a0a0a;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-weight: 500;
}
#series .product-list {
  padding: 2rem 0;
}
@media print, screen and (min-width: 64em) {
  #series .product-list {
    padding-top: 4rem 0;
  }
}

#wheels h2, #wheels h3 {
  line-height: 1;
}
#wheels h2 {
  color: #333333;
  font-size: 5.5rem;
  margin-bottom: 0;
  letter-spacing: -5px;
}
#wheels h3 {
  color: #eb212e;
  font-style: normal;
  text-transform: uppercase;
}
#wheels h1 {
  font-weight: 900;
  font-size: 2.75rem;
}
@media print, screen and (min-width: 64em) {
  #wheels h1 {
    font-size: 4.5rem;
  }
}
#wheels h4 {
  font-weight: 400;
  letter-spacing: 0.25rem;
  font-size: 1rem;
  color: #0a0a0a;
}
@media print, screen and (min-width: 64em) {
  #wheels h4 {
    font-size: 1.5rem;
  }
}
#wheels a {
  font-size: 1.15rem;
  color: #666666;
}
#wheels p {
  font-size: 0.85rem;
  letter-spacing: 0.025rem;
  line-height: 1.7;
}
@media print, screen and (min-width: 40em) {
  #wheels p {
    font-size: 1.15rem;
  }
}
#wheels .row {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheels {
  /*
    // page header
    .page-header {
      text-align:center;
      color:$white;
      margin-bottom:1rem;
      @include breakpoint (large) {
        margin-bottom:2.5rem;
      }
      h1 {
        font-family:$title-font-family;
        text-transform: capitalize;
        color:$white;
        @include breakpoint (large) {
          font-size:4.25rem;
        }
      }
      p {
        text-transform: uppercase;
        border-bottom:2px solid $red;
        font-weight:700;
        font-size:0.9rem;
        line-height:2.5;
        display:inline-block;
      }
      .background-image {
        background-attachment: fixed;
        background-position: center;
      }
      .page-title {
        background-color:rgba(0,0,0,.5);
      }
    }
  */
}
#wheels .page-header {
  padding-top: 4rem;
}
#wheels .page-filter-brands ul {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-padding-inline: var(--arrow-size);
  scrollbar-width: none;
  margin: 0;
}
#wheels .page-filter-brands ul > li {
  margin-left: 0.5rem;
}
#wheels .page-filter-brands ul > li:first-child {
  margin-left: 0;
}
#wheels .page-filter-brands ul a {
  display: inline-block;
  padding: 1rem;
  background-color: #f7f7f7;
}
#wheels .page-filter-brands ul a:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#wheels .page-filter-brands ul a img {
  max-height: 40px;
  height: 40px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheels .page-filter-brands .row {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .page-filter-brands .row {
    margin-bottom: 2rem;
    max-width: none;
  }
}
@media screen and (min-width: 75em) {
  #wheels .page-filter-brands .row {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
#wheels .filter-sort {
  margin-bottom: 2rem;
}
#wheels .filter-sort .row {
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .filter-sort .row {
    max-width: none;
  }
}
@media screen and (min-width: 75em) {
  #wheels .filter-sort .row {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
#wheels .filter-sort-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}
#wheels .filter-sort .button {
  background-color: #fefefe;
  border: 2px solid #666666;
  color: #666666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 1rem;
  margin-bottom: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  width: 100%;
  padding: 0.85rem 1rem;
  font-size: 0.75rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .filter-sort .button {
    width: 254px;
    height: 54px;
    padding: 1rem;
    font-size: 1rem;
  }
}
#wheels .filter-sort .button i {
  font-size: 1rem;
  margin-right: 1rem;
}
#wheels .filter-sort .button:hover {
  background-color: #666666;
  color: #fefefe;
}
#wheels .filter-sort .divider {
  height: 1px;
  background-color: #cccccc;
  width: 100%;
}
#wheels .filter-sort-bottom li {
  display: inline-block;
  margin-right: 1rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .filter-sort-bottom li {
    margin-bottom: 0.5rem;
  }
}
#wheels .filter-sort-bottom .button {
  background-color: #f7f7f7;
  width: auto;
  height: auto;
  border: 0;
  margin: 0;
  font-size: 0.8rem;
  font-weight: 600;
}
#wheels .filter-sort-bottom .button.active-filter-series {
  background-color: #0a0a0a;
  color: #fefefe;
}
#wheels .filter-sort-bottom .button.active-filter-count {
  background-color: transparent;
}
#wheels .filter-sort-bottom .button.active-filter-count:hover {
  color: #666666;
}
#wheels .filter-sort-bottom .button i {
  margin: 0;
  margin-left: 1rem;
  font-weight: 600;
}
#wheels {
  /* .product-item {
     border-bottom:1px solid $grayC;
     padding:2rem;
     padding-top:0;
     @include breakpoint (medium) {
       padding:1rem 0;
     }
     &:last-child {
       border-bottom:0;
     }
     > .column {
       display:flex;
       align-items: center;
     }
   }*/
}
#wheels .break {
  margin-bottom: 2rem;
}
#wheels .break .row {
  border-bottom: 1px solid #cccccc;
  max-width: 84rem;
}
#wheels .brand-information .row {
  max-width: 80rem;
}
#wheels {
  /*
  .product-list {
    background-color:$grayEF;
    padding-top:0.675rem;
    @include breakpoint (medium) {
      padding-top:1rem;
    }
    @include breakpoint (large) {
      padding:3.75rem 0;
    }
    a {
      display:block;
      margin-bottom:0.675rem;
      @include breakpoint (medium) {
        margin-bottom:1rem;
      }
      @include breakpoint (large) {
        margin-bottom:3.75rem;
      }
    }
    .row {
      @include breakpoint (large) {
        padding-left:1.875rem;
        padding-right:1.875rem;
        > .column {
          padding-left:1.875rem;
          padding-right:1.875rem;
        }
      }
    }
    .product-item {
      background-color:$white;
      text-align:center;
      padding:2rem;
      @include breakpoint (medium) {
        padding:1rem;
      }
      @include breakpoint (large) {
        padding:3rem;
      }
    }
    .product-info {
      > div {
        border-bottom:1px solid $grayC;
        font-size:1.25rem;
        padding-bottom:1rem;
        margin-bottom:1rem;
        line-height:1;
        font-size:1rem;
        @include breakpoint (large) {
          font-size:1.25rem;
        }
        &.wheel {
          font-size:1.5rem;
          @include breakpoint (large) {
            font-size:2.35rem;
          }
        }
      }
    }
  }*/
}

#wheels .products-list, #series .products-list, #collection .products-list, #wheel .products-list {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list, #series .products-list, #collection .products-list, #wheel .products-list {
    margin-bottom: 2rem;
    max-width: none;
  }
}
@media screen and (min-width: 75em) {
  #wheels .products-list, #series .products-list, #collection .products-list, #wheel .products-list {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
#wheels .products-list .column, #wheels .products-list .columns, #series .products-list .column, #series .products-list .columns, #collection .products-list .column, #collection .products-list .columns, #wheel .products-list .column, #wheel .products-list .columns {
  margin-bottom: 0.5rem;
  padding-right: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list .column:nth-child(3n), #wheels .products-list .columns:nth-child(3n), #series .products-list .column:nth-child(3n), #series .products-list .columns:nth-child(3n), #collection .products-list .column:nth-child(3n), #collection .products-list .columns:nth-child(3n), #wheel .products-list .column:nth-child(3n), #wheel .products-list .columns:nth-child(3n) {
    padding-right: 0;
  }
}
#wheels .products-list a, #series .products-list a, #collection .products-list a, #wheel .products-list a {
  color: #0a0a0a;
  font-weight: 400;
  letter-spacing: 0.05rem;
  display: block;
}
#wheels .products-list a .hover-item, #series .products-list a .hover-item, #collection .products-list a .hover-item, #wheel .products-list a .hover-item {
  overflow: hidden;
  background-color: #f7f7f7;
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list a .hover-item, #series .products-list a .hover-item, #collection .products-list a .hover-item, #wheel .products-list a .hover-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 40em) {
  #wheels .products-list a .hover-item > div, #series .products-list a .hover-item > div, #collection .products-list a .hover-item > div, #wheel .products-list a .hover-item > div {
    width: 50%;
  }
}
#wheels .products-list a .hover-item img, #series .products-list a .hover-item img, #collection .products-list a .hover-item img, #wheel .products-list a .hover-item img {
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list a .hover-item img, #series .products-list a .hover-item img, #collection .products-list a .hover-item img, #wheel .products-list a .hover-item img {
    width: 100%;
  }
}
#wheels .products-list a .hover-item:hover img, #series .products-list a .hover-item:hover img, #collection .products-list a .hover-item:hover img, #wheel .products-list a .hover-item:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#wheels .products-list a .hover-item:hover .finish-logo img, #series .products-list a .hover-item:hover .finish-logo img, #collection .products-list a .hover-item:hover .finish-logo img, #wheel .products-list a .hover-item:hover .finish-logo img {
  -webkit-transform: scale(1);
  transform: scale(1);
}
#wheels .products-list .info, #series .products-list .info, #collection .products-list .info, #wheel .products-list .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 40em) {
  #wheels .products-list .info, #series .products-list .info, #collection .products-list .info, #wheel .products-list .info {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
  }
}
#wheels .products-list .info > div, #series .products-list .info > div, #collection .products-list .info > div, #wheel .products-list .info > div {
  margin-bottom: 0.5rem;
}
#wheels .products-list .info > div:last-child, #series .products-list .info > div:last-child, #collection .products-list .info > div:last-child, #wheel .products-list .info > div:last-child {
  margin-bottom: 0;
}
#wheels .products-list .info .wheel-name, #series .products-list .info .wheel-name, #collection .products-list .info .wheel-name, #wheel .products-list .info .wheel-name {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-size: 1rem;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  #wheels .products-list .info .wheel-name, #series .products-list .info .wheel-name, #collection .products-list .info .wheel-name, #wheel .products-list .info .wheel-name {
    font-size: 1.75rem;
  }
}
#wheels .products-list .info .finish-logo, #series .products-list .info .finish-logo, #collection .products-list .info .finish-logo, #wheel .products-list .info .finish-logo {
  margin-bottom: 0;
}
#wheels .products-list .info .finish-logo img, #series .products-list .info .finish-logo img, #collection .products-list .info .finish-logo img, #wheel .products-list .info .finish-logo img {
  max-height: 50px;
  max-width: 160px;
  width: auto;
  padding: 0.5rem 0;
  margin-bottom: 0.25rem;
}
#wheels .products-list .info .finish, #series .products-list .info .finish, #collection .products-list .info .finish, #wheel .products-list .info .finish {
  font-size: 0.825rem;
  text-transform: none;
}
#wheels .products-list .other-finishes, #series .products-list .other-finishes, #collection .products-list .other-finishes, #wheel .products-list .other-finishes {
  font-size: 0.85rem;
  text-transform: uppercase;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list .other-finishes, #series .products-list .other-finishes, #collection .products-list .other-finishes, #wheel .products-list .other-finishes {
    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;
  }
  #wheels .products-list .other-finishes > .other-finish, #series .products-list .other-finishes > .other-finish, #collection .products-list .other-finishes > .other-finish, #wheel .products-list .other-finishes > .other-finish {
    width: 25%;
    margin-right: 6px;
  }
}
#wheels .products-list .other-finishes-container, #series .products-list .other-finishes-container, #collection .products-list .other-finishes-container, #wheel .products-list .other-finishes-container {
  display: grid;
}
#wheels .products-list .other-finishes-container > div, #series .products-list .other-finishes-container > div, #collection .products-list .other-finishes-container > div, #wheel .products-list .other-finishes-container > div {
  grid-column: 1/1;
  grid-row: 1/1;
}
#wheels .products-list .other-finishes-container .more-finishes, #wheels .products-list .other-finishes-container .one-finish, #series .products-list .other-finishes-container .more-finishes, #series .products-list .other-finishes-container .one-finish, #collection .products-list .other-finishes-container .more-finishes, #collection .products-list .other-finishes-container .one-finish, #wheel .products-list .other-finishes-container .more-finishes, #wheel .products-list .other-finishes-container .one-finish {
  text-align: center;
  font-size: 0.85rem;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheels .products-list .other-finishes .thumbnail, #series .products-list .other-finishes .thumbnail, #collection .products-list .other-finishes .thumbnail, #wheel .products-list .other-finishes .thumbnail {
  margin-bottom: 0;
  background-color: #f7f7f7;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 4px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheels .products-list .other-finishes .thumbnail:hover, #series .products-list .other-finishes .thumbnail:hover, #collection .products-list .other-finishes .thumbnail:hover, #wheel .products-list .other-finishes .thumbnail:hover {
  background-color: #cccccc;
}
#wheels .products-list .other-finishes .more-finishes, #series .products-list .other-finishes .more-finishes, #collection .products-list .other-finishes .more-finishes, #wheel .products-list .other-finishes .more-finishes {
  text-align: center;
}

/*#wheels {
  .products-list {
    margin-top:3rem;
    .column {
      margin-bottom:2rem;
    }
  }
  .hover-item__header {
    font-size:2.5rem;
    line-height:.5;
    margin-top:1rem;
    color:$gray;
    small {
      font-family:$body-font-family;
      font-weight:400;
      font-size:1.1rem;
    }
  }
  .pop_up_vehicle {
    transition:all .2s ease-in-out;
    button {
      &:hover {
        background-color:$blue;
      }
    }
  }
}

// see on vehicle popup
.fancybox-inner {
  height:auto!important;
  #vehicle-selects {
    display:flex;
  }
}
.fancybox-close {
  background:transparent!important;
  right:-20px!important;  
}
  */
#wheel {
  color: #666666;
}
@media print, screen and (min-width: 40em) {
  #wheel {
    padding-top: 0;
  }
}
#wheel .page-header {
  padding: 0;
  pointer-events: none;
}
@media print, screen and (min-width: 40em) {
  #wheel .page-header {
    max-height: 600px;
    overflow: hidden;
  }
}
#wheel .page-header .flex-video iframe {
  top: -10%;
}
#wheel #detail-top {
  background: -webkit-gradient(linear, left bottom, left top, from(#e7e7e7), color-stop(5%, #e7e7e7), color-stop(20%, transparent), to(transparent));
  background: linear-gradient(0deg, #e7e7e7 0%, #e7e7e7 5%, transparent 20%, transparent 100%);
}
#wheel #detail-top > div {
  padding-top: 1rem;
  padding-bottom: 3rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 40em) {
  #wheel #detail-top > div {
    padding-top: 3rem;
    padding-left: 0;
    padding-right: 0;
  }
}
#wheel .label {
  text-transform: uppercase;
  background-color: transparent;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: 0.1rem;
  padding: 0;
  margin-bottom: 0.5rem;
}
#wheel .label i {
  color: #eb212e;
}
#wheel .button, #wheel input, #wheel select {
  max-width: 370px;
  width: 100%;
}
#wheel .wheel-sizes {
  margin-top: 1rem;
}
#wheel .wheel-sizes span {
  font-size: 1rem;
  font-weight: bold;
}
#wheel .wheel-details {
  background: #f1f1f1;
  padding: 1rem 1.5rem;
}
#wheel .wheel-details .wheel-paragraph {
  font-size: 1rem;
  font-weight: bold;
  text-align: left;
  margin-bottom: 1rem;
}
#wheel .wheel-details .wheel-paragraph span {
  font-size: 1.2rem;
}
#wheel .loadingImage {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
}
#wheel .fitment-search-container button {
  background-color: #eb212e;
  font-size: 0.85rem;
  letter-spacing: 0.05rem;
  font-weight: 600;
  max-width: none;
}
#wheel .fitment-search-container button:hover {
  background-color: #666666;
}
#wheel #detail-bottom > .row {
  max-width: 80rem;
}

.gallery-popup {
  display: table;
  margin: 0 auto;
}
.gallery-popup .galleryView-info {
  color: #ccc;
  font-size: 1.1rem;
  font-weight: 600;
  margin-top: 1rem;
}
.gallery-popup .galleryView-info span {
  display: block;
}
.gallery-popup .popup-car {
  font-weight: 900;
  font-size: 1.3rem;
  color: #fff;
}
.gallery-popup .mfp-close {
  color: white !important;
  position: relative;
  float: right;
}

.detail-thumb p {
  line-height: 1;
  margin: 0.25rem;
}
.detail-thumb .finish-name {
  color: #8a8a8a;
  font-size: 0.8rem;
}
.detail-thumb img {
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.detail-thumb img:hover {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}

.see-on-vehicle-container {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 0.2rem;
  margin: 0.5rem 0;
}

.see-on-vehicle-header {
  font-size: 1.5rem;
  margin-bottom: 0;
}

.see-on-vehicle-select {
  margin-bottom: 0;
}

table {
  border: 0;
  margin-bottom: 0;
}
table tr td,
table tr th {
  text-align: center;
}
table tr th {
  background: #e6e6e6;
}

@media print, screen and (max-width: 39.99875em) {
  #wheel .banner-top .wheel-banner {
    height: 6rem;
  }
  #wheel .banner-top .heading {
    font-size: 1.7rem;
    top: 90%;
  }
  #wheel .slick-slide {
    display: inline-block;
    float: none;
  }
}
@media print, screen and (min-width: 40em) {
  .finish-header {
    display: none;
  }
}
#wheel .details-nav-container {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheel .details-nav-container.body-nav-fixed {
  background-color: #0a0a0a;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
}
#wheel .details-nav, #wheel .details-nav-menu-container {
  background-color: #333333;
}
#wheel .details-nav a, #wheel .details-nav button, #wheel .details-nav-menu-container a, #wheel .details-nav-menu-container button {
  color: #fefefe;
}
#wheel .details-nav {
  border-top: 1px solid #fefefe;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
#wheel .details-nav .row.expanded {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  #wheel .details-nav .row.expanded {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav .row.expanded {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
#wheel .details-nav .breadcrumbs-return {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#wheel .details-nav .breadcrumbs-return-link i {
  margin-right: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav .breadcrumbs-return-link i {
    margin-right: 1rem;
  }
}
#wheel .details-nav .breadcrumbs-return .divider {
  height: auto;
  background-color: transparent;
  overflow: unset;
  margin-left: 0.5rem;
  margin-right: 0.75rem;
  color: #fefefe;
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav .breadcrumbs-return .divider {
    margin-left: 2rem;
    margin-right: 2rem;
  }
}
#wheel .details-nav .breadcrumbs-return .details-nav-menu-button i {
  margin-left: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav .breadcrumbs-return .details-nav-menu-button i {
    margin-left: 1rem;
  }
}
#wheel .details-nav .details-nav-right {
  text-align: right;
}
@media print, screen and (max-width: 63.99875em) {
  #wheel .details-nav .details-nav-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
#wheel .details-nav .details-nav-right .button {
  background-color: #333333;
  border-color: #333333;
  max-width: 160px;
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  #wheel .details-nav .details-nav-right .button {
    max-width: 130px;
    padding: 0.75rem 0;
  }
}
#wheel .details-nav .details-nav-right .button:hover {
  background-color: #cccccc;
}
#wheel .details-nav-menu-container {
  /*.products-list {
    margin-bottom:1rem;
    max-width:80rem;
    @include breakpoint (large) {
      margin-bottom:2rem;
      max-width:none;
    }
    @include breakpoint (xlarge) {
      padding-left:5rem;
      padding-right:5rem;
    }*/
}
#wheel .details-nav-menu-container ul {
  white-space: nowrap;
  overflow-x: scroll;
  scroll-behavior: smooth;
}
#wheel .details-nav-menu-container .product-item {
  margin-bottom: 0.5rem;
  padding-right: 0.5rem;
  max-height: 260px;
  max-width: 440px;
  display: inline-block;
  white-space: normal;
}
#wheel .details-nav-menu-container a {
  color: #0a0a0a;
  font-weight: 400;
  letter-spacing: 0.05rem;
}
#wheel .details-nav-menu-container a .hover-item {
  overflow: hidden;
  background-color: #f7f7f7;
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav-menu-container a .hover-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 40em) {
  #wheel .details-nav-menu-container a .hover-item > div {
    width: 50%;
  }
}
#wheel .details-nav-menu-container a .hover-item img {
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .details-nav-menu-container a .hover-item img {
    width: 100%;
  }
}
#wheel .details-nav-menu-container a .hover-item:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#wheel .details-nav-menu-container .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 40em) {
  #wheel .details-nav-menu-container .info {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
  }
}
#wheel .details-nav-menu-container .info .wheel-name {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-size: 1rem;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  #wheel .details-nav-menu-container .info .wheel-name {
    font-size: 1.75rem;
  }
}

#wheel .cap-container, #wheel .fitment-search-container, #wheel .price-container, #accessory .wheel-container {
  max-width: 336px;
  margin-bottom: 2rem;
}
#wheel .cap-container .price, #wheel .fitment-search-container .price, #wheel .price-container .price, #accessory .wheel-container .price {
  margin-bottom: 1.5rem;
}
#wheel .cap-container .price-range, #wheel .fitment-search-container .price-range, #wheel .price-container .price-range, #accessory .wheel-container .price-range {
  margin-bottom: 1rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.075rem;
  color: #0a0a0a;
}
@media print, screen and (min-width: 40em) {
  #wheel .cap-container .price-buttons, #wheel .fitment-search-container .price-buttons, #wheel .price-container .price-buttons, #accessory .wheel-container .price-buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
#wheel .cap-container .price-buttons .button, #wheel .fitment-search-container .price-buttons .button, #wheel .price-container .price-buttons .button, #accessory .wheel-container .price-buttons .button {
  border-radius: 100px;
  font-size: 0.7rem;
  letter-spacing: unset;
  font-weight: 600;
  padding: 0.75rem;
  border: 2px solid #0a0a0a;
}
@media print, screen and (min-width: 40em) {
  #wheel .cap-container .price-buttons .button, #wheel .fitment-search-container .price-buttons .button, #wheel .price-container .price-buttons .button, #accessory .wheel-container .price-buttons .button {
    width: 158px;
  }
}
#wheel .cap-container .price-buttons .button:hover, #wheel .fitment-search-container .price-buttons .button:hover, #wheel .price-container .price-buttons .button:hover, #accessory .wheel-container .price-buttons .button:hover {
  background-color: #666666;
  border-color: #666666;
}
#wheel .cap-container .price-buttons .button:disabled, #wheel .fitment-search-container .price-buttons .button:disabled, #wheel .price-container .price-buttons .button:disabled, #accessory .wheel-container .price-buttons .button:disabled {
  background-color: orange;
}
#wheel .cap-container .price-buttons .price-button:nth-child(2) .button, #wheel .fitment-search-container .price-buttons .price-button:nth-child(2) .button, #wheel .price-container .price-buttons .price-button:nth-child(2) .button, #accessory .wheel-container .price-buttons .price-button:nth-child(2) .button {
  background-color: #fefefe;
  color: #0a0a0a;
}
#wheel .cap-container .price-buttons .price-button:nth-child(2) .button:hover, #wheel .fitment-search-container .price-buttons .price-button:nth-child(2) .button:hover, #wheel .price-container .price-buttons .price-button:nth-child(2) .button:hover, #accessory .wheel-container .price-buttons .price-button:nth-child(2) .button:hover {
  background-color: #666666;
  color: #fefefe;
  border-color: #666666;
}
#wheel .cap-container .price-buttons .price-button:last-child .button, #wheel .fitment-search-container .price-buttons .price-button:last-child .button, #wheel .price-container .price-buttons .price-button:last-child .button, #accessory .wheel-container .price-buttons .price-button:last-child .button {
  background-color: #cccccc;
  border-color: #cccccc;
  color: #0a0a0a;
}
#wheel .cap-container .price-buttons .price-button:last-child .button:hover, #wheel .fitment-search-container .price-buttons .price-button:last-child .button:hover, #wheel .price-container .price-buttons .price-button:last-child .button:hover, #accessory .wheel-container .price-buttons .price-button:last-child .button:hover {
  background-color: #666666;
  color: #fefefe;
  border-color: #666666;
}

#wheel .price-container {
  max-width: none;
}
#wheel .price-container input {
  text-transform: uppercase;
  font-size: 0.85rem;
  font-weight: 600;
}
#wheel .price-container select {
  font-size: 0.85rem;
  font-weight: 600;
  max-width: none;
  text-transform: uppercase;
  background-color: #efefef;
}
#wheel .price-container #details-diameters {
  display: block;
}
#wheel .price-container .disclaimer {
  margin: 2rem 0;
}
#wheel .price-container .disclaimer p {
  font-size: 0.85rem;
  font-weight: 600;
}

#wheel .rear-size-container.display-rear {
  display: block;
}
#wheel .rear-size-container #details-rear-diameters {
  display: block;
}
#wheel .rear-size-container .select-rear-size {
  display: none;
}
#wheel .rear-size-container #rear-display {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}
#wheel .rear-size-container #rear-display span:first-child {
  color: #eb212e;
}
#wheel .rear-size-container #rear-display span:last-child {
  margin-left: 0.5rem;
  text-transform: uppercase;
  font-size: 0.85rem;
  font-weight: 600;
}

#wheel .selected-price-container {
  display: none;
  color: #0a0a0a;
  background-color: #efefef;
  padding: 1rem;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 40em) {
  #wheel .selected-price-container {
    padding: 2rem;
  }
}
#wheel .selected-price-container .selected-price {
  margin-bottom: 2rem;
}
#wheel .selected-price-container .selected-price .shipping {
  font-size: 0.85rem;
  font-weight: 600;
}
#wheel .selected-price-container .selected-price-display h5 {
  margin-right: 0.5rem;
}
#wheel .selected-price-container .selected-price-display .front, #wheel .selected-price-container .selected-price-display .rear {
  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;
}
#wheel .selected-price-container .selected-price-display .front input, #wheel .selected-price-container .selected-price-display .rear input {
  max-width: 60px;
  text-align: center;
  font-size: 1rem;
}
#wheel .selected-price-container .selected-price-display .front .selected-front-price, #wheel .selected-price-container .selected-price-display .front .selected-rear-price, #wheel .selected-price-container .selected-price-display .rear .selected-front-price, #wheel .selected-price-container .selected-price-display .rear .selected-rear-price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#wheel .selected-price-container .selected-price-display .front .selected-front-price, #wheel .selected-price-container .selected-price-display .front .selected-rear-price, #wheel .selected-price-container .selected-price-display .rear .selected-front-price, #wheel .selected-price-container .selected-price-display .rear .selected-rear-price {
  margin-bottom: 1rem;
}
#wheel .selected-price-container .selected-price-display .front .display-front-stock, #wheel .selected-price-container .selected-price-display .front .display-rear-stock, #wheel .selected-price-container .selected-price-display .rear .display-front-stock, #wheel .selected-price-container .selected-price-display .rear .display-rear-stock {
  color: #33cc33;
  font-weight: 900;
  margin-left: 0.5rem;
}
#wheel .selected-price-container .cart-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#wheel .selected-price-container .cart-button input {
  margin-right: 2rem;
  max-width: 60px;
  text-align: center;
}
#wheel .selected-price-container .cart-button input[name=quantity] {
  font-size: 1rem;
}
#wheel .selected-price-container .cart-button button {
  max-width: 158px;
}

#wheel .cap-container, #accessory .wheel-container {
  max-width: none;
}
#wheel .cap-container h4, #accessory .wheel-container h4 {
  font-size: 1.25rem;
  color: #0a0a0a;
  text-transform: capitalize;
}
#wheel .cap-container .title, #accessory .wheel-container .title {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 2rem;
}
#wheel .cap-container .price-range, #accessory .wheel-container .price-range {
  margin-bottom: 1rem;
  font-family: "Roboto", sans-serif;
  font-size: 1.075rem;
  color: #0a0a0a;
}
#wheel .cap-container .cap-item, #accessory .wheel-container .cap-item {
  text-align: center;
  display: inline-block;
  line-height: 1;
  vertical-align: top;
  max-width: 24%;
  width: 100%;
}
#wheel .cap-container .cap-item img, #accessory .wheel-container .cap-item img {
  max-width: 100px;
}
#wheel .cap-container .cap-item a, #accessory .wheel-container .cap-item a {
  color: #0a0a0a;
}
#wheel .cap-container .price-buttons .price-button:last-child .button, #accessory .wheel-container .price-buttons .price-button:last-child .button {
  background-color: #cccccc;
  color: #0a0a0a;
  border-color: #cccccc;
}
#wheel .cap-container .price-buttons .price-button:last-child .button:hover, #accessory .wheel-container .price-buttons .price-button:last-child .button:hover {
  background-color: #666666;
  color: #fefefe;
}

.main-image {
  margin-bottom: 0;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  .main-image {
    padding-left: 2rem;
  }
}
.main-image img {
  margin: 0 auto;
  max-width: 630px;
  width: 100%;
}
.main-image .slick-dots li {
  height: 21px;
  width: 21px;
}
.main-image .slick-dots li button {
  height: 21px;
  width: 21px;
}
.main-image .slick-dots li button:before {
  font-size: 3.5rem;
  width: 23px;
  height: 23px;
  line-height: 21px;
  border: 2px solid transparent;
  border-radius: 100px;
}
.main-image .slick-dots li.slick-active button:before {
  border-color: #0a0a0a;
}

.alt-images {
  margin-bottom: 0 !important;
}
.alt-images .slick-track {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.alt-images .slick-dots {
  position: relative !important;
  text-align: center;
  bottom: 0;
  margin: 0;
}
.alt-images .slick-slide {
  width: 100%;
  border: 1px solid #fefefe;
  margin-bottom: 0.5rem;
  background-color: #fefefe;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  margin-right: 0.5rem;
  margin-left: 0.5rem;
  width: 115px !important;
}
@media print, screen and (min-width: 64em) {
  .alt-images .slick-slide {
    margin-left: 0;
    margin-right: 0;
    margin-right: 1rem;
  }
}
.alt-images .slick-slide.slick-current {
  border-color: #999999;
}
.alt-images .slick-slide:focus {
  outline: 0;
}
.alt-images a {
  margin-right: 0;
  padding: 0.7rem;
}
.alt-images img {
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
}
.alt-images img:hover {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}

#wheel .wheel-detail-specs {
  margin-bottom: 2rem;
}
#wheel .wheel-detail-specs > div {
  text-transform: uppercase;
  margin-bottom: 0.5rem;
  font-size: 1.25rem;
}
#wheel .wheel-detail-specs .wheel-sizes {
  margin-top: 0;
}

.wheel-specs {
  margin-top: 2rem;
}
.wheel-specs__header {
  font-size: 1.5rem;
  margin-bottom: 0;
}
.wheel-specs__details {
  margin-left: 0;
  list-style: none;
  font-weight: 600;
}

.detail-spec-tabs {
  border: none;
}
.detail-spec-tabs-content {
  border: none;
}
.detail-spec-tabs-panel {
  padding: 0;
}
.detail-spec-tabs li {
  display: inline-block;
  width: 50%;
  text-align: center;
}
.detail-spec-tabs a {
  text-transform: uppercase;
  padding: 0.6rem 0;
  font-size: 1rem;
  font-weight: 400;
  background-color: #ddd;
  color: #666;
}
.detail-spec-tabs a[aria-selected=true] {
  background-color: #eb212e;
  color: #fff;
  font-weight: 500;
}
.detail-spec-tabs a:hover {
  background-color: #000;
  color: #fff;
}

.bp-toggle-btn {
  color: #eb212e;
}

@media print, screen and (min-width: 40em) {
  .wheel-info {
    max-width: 400px;
  }
}
.wheel-info h3 {
  font-style: normal;
  font-weight: 300;
  color: #333333;
}
.wheel-info ol {
  list-style: disc;
  margin-left: 1rem;
  color: #666666;
  font-size: 1.15rem;
}
.wheel-info ol li {
  margin-bottom: 1.5rem;
}
.wheel-info p {
  font-size: 1.075rem;
  color: #0a0a0a;
}
.wheel-info .information, .wheel-info .sizes, .wheel-info .finish {
  color: #0a0a0a;
  margin-bottom: 1rem;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-info .finish {
    display: none;
  }
}
.wheel-info .sizes .title {
  display: block;
}
.wheel-info .sizes-list {
  font-size: 1.075rem;
  font-family: "Roboto", sans-serif;
  color: #0a0a0a;
}
.wheel-info .sizes-list span {
  margin-right: 0.5rem;
}
.wheel-info .see-specs a {
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  color: #0a0a0a;
  font-size: 0.8rem;
  letter-spacing: 0.1rem;
  font-weight: 600;
  text-decoration: underline;
}
.wheel-info .see-specs a:hover {
  color: #eb212e;
}

#wheel .wheel-filter .accordion {
  background-color: transparent;
  margin-bottom: 1.25rem;
}
#wheel .wheel-filter .accordion .is-active > .accordion-title .fa-chevron-up::before {
  content: "\f078";
}
#wheel .wheel-filter .accordion .fas {
  padding-right: 1rem;
  color: #336699;
}
#wheel .wheel-filter .accordion-title {
  font-size: 1rem;
  color: #0a0a0a;
  border: 0;
  text-transform: uppercase;
}
#wheel .wheel-filter .accordion-title::before {
  content: "";
}
#wheel .wheel-filter .accordion-content {
  border: 0;
  padding: 0;
  background-color: transparent;
  color: #666666;
}
@media print, screen and (max-width: 39.99875em) {
  #wheel .wheel-filter .accordion-item {
    border-bottom: 1px solid #cccccc;
  }
}

.cta-buttons {
  margin: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 40em) {
  .cta-buttons {
    padding-top: 3rem;
  }
}
.cta-buttons__btn {
  width: 100%;
}
.cta-buttons__btn--space {
  margin-bottom: 1rem !important;
}
.cta-buttons .button {
  background-color: #999999;
  color: #0a0a0a;
  width: 100%;
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  font-size: 1.15rem;
  margin-bottom: 0;
}
.cta-buttons li {
  margin-left: 0.5rem;
  margin-right: 0.5;
  width: 25%;
}
.cta-buttons li:first-child > .button {
  background-color: #eb212e;
}

.details-media {
  z-index: 5;
  text-align: center;
}
.details-media__header {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 0.8rem;
  letter-spacing: 0;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-transition: color 0.3s ease-out;
  transition: color 0.3s ease-out;
  color: #000;
}
.details-media__header:hover {
  color: #eb212e;
}

.details-divider {
  padding-bottom: 20px;
}
.details-divider:before {
  background-color: #c7c7c9;
  content: "";
  display: block;
  height: 1px;
  margin: 15px auto 0;
  width: 2rem;
}

@media print, screen and (max-width: 39.99875em) {
  .details-360,
  .details-video {
    display: inline-block;
    margin: 0 1rem;
  }
  .details-divider {
    display: none;
  }
}
#see-on-vehicle-detail h5 {
  font-size: 1.5rem;
}
#see-on-vehicle-detail select {
  font-size: 0.875rem;
}
#see-on-vehicle-detail .error {
  display: none;
  left: 50%;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 2;
}
#see-on-vehicle-detail .no-fitment {
  min-height: 6rem;
  position: relative;
}
#see-on-vehicle-detail .no-fitment::before {
  background: #fefefe;
  content: "";
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  opacity: 0.8;
  position: absolute;
  z-index: 1;
}
#see-on-vehicle-detail .no-fitment .error {
  display: block;
}
#see-on-vehicle-detail .loadingImage {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: none;
}
#see-on-vehicle-detail .hover-item:hover button {
  opacity: 1;
  -webkit-transition: opacity 0.3s ease-in-out;
  transition: opacity 0.3s ease-in-out;
}
#see-on-vehicle-detail .hover-item:hover img {
  opacity: 0.075;
  transition: opacity 0.25s ease-in-out;
  -moz-transition: opacity 0.25s ease-in-out;
  -webkit-transition: opacity 0.25s ease-in-out;
}
#see-on-vehicle-detail .hover-item:hover::before {
  opacity: 0.7;
}
#see-on-vehicle-detail button {
  position: absolute;
  top: 40%;
  left: 0;
  padding: 1rem;
  width: 100%;
  font-size: 0.8rem;
  opacity: 0;
}
#see-on-vehicle-detail button:hover {
  background-color: #666;
}
#see-on-vehicle-detail-overlay {
  width: 100%;
  height: 100%;
  display: table;
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  color: #fff;
  font-size: 50px;
}
#see-on-vehicle-detail-overlay .fa-spinner {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
}

#see-on-vehicle-popup {
  border: 0;
  padding: 3rem;
  border-radius: 10px;
  -webkit-box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.7);
          box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.7);
}
@media print, screen and (max-width: 39.99875em) {
  #see-on-vehicle-popup {
    padding: 2rem;
  }
  #see-on-vehicle-popup[open] {
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-pack: distribute;
        justify-content: space-around;
  }
}
#see-on-vehicle-popup #wheel-spec-price, #see-on-vehicle-popup .buy-now {
  display: none;
}
#see-on-vehicle-popup #vehicle-description, #see-on-vehicle-popup #vehicle-description-mobile {
  font-family: "Teko", sans-serif;
  text-transform: uppercase;
  font-weight: 900;
  font-size: 1.5rem;
  line-height: 1;
}
#see-on-vehicle-popup #vehicle-description {
  font-size: 2rem;
}
#see-on-vehicle-popup #vehicle-description-mobile #vov-submodel {
  font-size: 1.3rem;
  display: block;
}
#see-on-vehicle-popup .vehicle-popup-color-button {
  text-align: right;
  margin-bottom: 2rem;
}
#see-on-vehicle-popup .wheel-info {
  padding: 0;
  margin: 0;
  border: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #ededed;
  border-radius: 10px;
  padding: 1rem;
}
#see-on-vehicle-popup .wheel-info .wheel-thumbnail {
  margin-right: 0.75rem;
}
#see-on-vehicle-popup .specs-info, #see-on-vehicle-popup .specs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#see-on-vehicle-popup .specs-info {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
}
#see-on-vehicle-popup #wheel-brand {
  text-transform: uppercase;
  font-weight: 600;
}
#see-on-vehicle-popup .specs-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  #see-on-vehicle-popup .specs-container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
#see-on-vehicle-popup .specs-container > .specs:first-child {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  #see-on-vehicle-popup .specs-container > .specs:first-child {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
#see-on-vehicle-popup .specs .divider {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
  display: none;
}
@media print, screen and (min-width: 40em) {
  #see-on-vehicle-popup .specs .divider {
    display: inline-block;
  }
}
#see-on-vehicle-popup #icm-vov-loading {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
}
#see-on-vehicle-popup .vehicle-popup-image {
  position: relative;
}
#see-on-vehicle-popup .vov-angle-arrow {
  position: absolute;
  top: 25%;
  font-size: 1.5rem;
  padding: 0.5rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vov-angle-arrow {
    top: 48%;
  }
}
#see-on-vehicle-popup .vov-angle-arrow:hover {
  cursor: pointer;
  background-color: #cccccc;
}
#see-on-vehicle-popup #vov-previous-angle {
  left: 0;
}
#see-on-vehicle-popup #vov-next-angle {
  right: 0;
}

#swatches-dialog {
  border: 1px solid #cccccc;
  border-radius: 5px;
  -webkit-box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.5);
          box-shadow: 0 0 0 100vmax rgba(0, 0, 0, 0.5);
}
#swatches-dialog .icm-vov-swatch-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr;
}

.wheel-gallery__header {
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
  line-height: 1.105;
  margin: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-gallery__header {
    margin-top: 1rem;
  }
}

.wheel-galleryList {
  display: inline-block;
  margin: 0;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-galleryList {
    margin-left: 0.5rem;
  }
}
.wheel-galleryList__item {
  list-style: none;
  float: left;
  width: 31%;
  height: auto;
  margin-right: 2%;
  margin-top: 0.5rem;
}
.wheel-galleryList__item:nth-child(n+7) {
  display: none;
}
.wheel-galleryList__item--display:nth-child(n+7) {
  display: block;
}

.wheel-galleryImage {
  width: 190px;
  height: 102px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-galleryImage {
    width: 95px;
    height: 60px;
  }
}

@media print, screen and (max-width: 39.99875em) {
  .wheel-galleryTxt {
    font-size: 0.8rem;
  }
}
#specs {
  margin-bottom: 1.25rem;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-size: 0.8rem;
  color: #0a0a0a;
}
#specs h4 {
  font-size: 1.5rem;
  color: #0a0a0a;
  font-weight: 700;
  text-transform: capitalize;
  margin-bottom: 0;
}
#specs .tabs {
  border: 0;
}
#specs table tr th, #specs table tr td {
  padding: 0.75rem 1.25rem;
  text-align: left;
  font-size: 0.9rem;
  letter-spacing: 0;
}
#specs table thead {
  background-color: transparent;
  border: 0;
}
#specs table thead tr th {
  text-align: left;
  background-color: transparent;
  color: #0a0a0a;
  white-space: nowrap;
}
#specs tbody {
  border: 0;
}
#specs tr:nth-child(odd) {
  background-color: #f1f1f1;
}
#specs tr:nth-child(even) {
  background-color: transparent;
}
#specs thead tr:nth-child(odd) {
  background-color: transparent;
}
#specs .title {
  font-family: "Roboto", sans-serif;
  font-size: 2rem;
  font-weight: 900;
  text-transform: uppercase;
  padding-top: 0.9rem;
  padding-bottom: 0.9rem;
}
#specs .tabs-content {
  border: 0;
}
#specs .tabs-content a:hover {
  text-decoration: underline;
}

.wheel-spec-tabs {
  display: inline-block;
  min-width: 70px;
  text-align: center;
}
.wheel-spec-tabs > a {
  font-size: 2rem;
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  color: #0a0a0a;
  padding: 0;
  padding-left: 1rem;
}
.wheel-spec-tabs.is-active {
  border-bottom: 2px solid #eb212e;
}
.wheel-spec-tabs.is-active a {
  color: #eb212e;
  background-color: transparent;
}
.wheel-spec-panel {
  overflow: auto;
}

.wheel-detail-specs-title .row {
  margin-bottom: 0;
}

.specs-accordion .accordion-title {
  font-size: 1.5rem;
  border-left: 0;
  border-right: 0;
  border-top-color: #cccccc;
  background-color: #fefefe;
  font-weight: 700;
  color: #0a0a0a;
  padding: 1.5rem 0;
}
.specs-accordion .accordion-title:before {
  font-weight: 400;
}
.specs-accordion .accordion-content {
  overflow: auto;
  border: 0;
}
@media print, screen and (min-width: 40em) {
  .specs-accordion .accordion-content {
    margin-right: 1rem;
  }
}

/*
.wheel-spec {
    &-header {
        background-color: $gray9;
        margin-bottom:0;
        font-weight:600;
    }

    &-tabs > a {
        color: $black;
        background-color:$whiteF1;
        color:$gray9;
        transition:all .2s ease-in-out;
        &:focus, &[aria-selected=true] {
            color: $white;
            background-color: $gray7;
        }
        &:hover {
            color: #000;
        }        
    }
    &-panel {
        padding: 0;
      a {
        transition:all .2s ease-in-out;
      }
    }
    &-btn {
        color: $black;
        &:hover {
            color: $primary-color;
        }
    }
  .tabs {
    display:flex;
    > div {
      border-right:1px solid $white;
      &:last-child {
        border-right:0;
      }
    }
  }
}*/
.finishes {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
@media print, screen and (min-width: 40em) {
  .finishes {
    margin-bottom: 3rem;
  }
}
.finishes h3 {
  font-size: 1.25rem;
}
.finishes img {
  max-width: 170px;
}
.finishes p {
  font-family: "Roboto", sans-serif;
  text-transform: uppercase;
  color: #0a0a0a;
}
.finishes p .finish-name {
  font-weight: 500;
  color: #0a0a0a;
  font-size: 1rem;
}
.finishes p .lugs {
  font-weight: 300;
  font-size: 1.25rem;
}
.finishes .label {
  margin-bottom: 1rem;
}
.finishes .alt-finishes > a {
  display: inline-block;
  margin-right: 0.5rem;
  padding: 0.5rem;
  margin-bottom: 1rem;
  background-color: #f3f3f3;
}
.finishes .alt-finishes > a.active {
  background-color: #f3f3f3;
}
.finishes .alt-finishes > a:hover {
  background-color: #cccccc;
}
.finishes .alt-finishes > a.discontinued-finish {
  background-color: #dddddd;
  position: relative;
  font-size: 0.7rem;
  letter-spacing: 0.1rem;
}
.finishes .alt-finishes > a.discontinued-finish .discontinued-overlay {
  color: #0a0a0a;
  text-transform: uppercase;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  line-height: 1.25;
}
.finishes .alt-finishes > a.discontinued-finish:hover {
  background-color: #fefefe;
}
.finishes .alt-finishes > a.discontinued-finish:hover .discontinued-overlay {
  opacity: 1;
}
.finishes .alt-finishes > a.discontinued-finish:hover img {
  opacity: 0.15;
}
.finishes .alt-finishes > a .image {
  max-width: 90px;
}
.finishes .alt-finishes > a .image img {
  width: 100%;
}

#wheel .wheel-detail-gallery {
  background-color: #fefefe;
}
#wheel .wheel-detail-gallery h2 {
  font-weight: 600;
}
@media print, screen and (min-width: 64em) {
  #wheel .wheel-detail-gallery h2 {
    font-size: 3.5rem;
  }
}
#wheel .wheel-detail-gallery h3 {
  margin-bottom: 0;
  color: #fefefe;
}
#wheel .wheel-detail-gallery img {
  width: 100%;
}
#wheel .wheel-detail-gallery .title {
  text-align: center;
  max-width: 90rem;
  padding: 0 2rem;
  margin: 0 auto;
}
#wheel .wheel-detail-gallery .photo {
  border: 3px solid #fefefe;
}
#wheel .wheel-detail-gallery .photo span {
  background-position: center;
  background-size: cover;
  padding-bottom: 75%;
  display: block;
}
#wheel .wheel-detail-gallery .navigation {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
#wheel .wheel-detail-gallery .navigation .button {
  margin-bottom: 0;
  width: 158px;
  border-radius: 100px;
  font-size: 0.7rem;
  letter-spacing: unset;
  font-weight: 600;
  padding: 0.75rem;
  border: 2px solid #0a0a0a;
  background-color: #0a0a0a;
}
#wheel .wheel-detail-gallery .navigation .button:hover {
  background-color: #666666;
  border-color: #666666;
}

.product-next-prev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.product-next-prev a {
  border: 1px solid #f8f8f8;
  margin-left: 1rem;
}
.product-next-prev a:hover {
  border-color: #0a0a0a;
}
.product-next-prev a.no-product {
  opacity: 0.5;
  pointer-events: none;
}
.product-next-prev img {
  border: 1px solid #d5d5d5;
}

.wheel-title h2, .wheel-title p {
  margin-bottom: 0;
}
.wheel-title h2 {
  font-size: 2.25rem;
  font-weight: 700;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  text-transform: none;
}
.wheel-title h3, .wheel-title h4 {
  font-weight: 700;
  font-style: normal;
  line-height: 1;
}
.wheel-title h3 {
  font-size: 1.5rem;
  letter-spacing: 0.5rem;
}
.wheel-title h4 {
  font-size: 1.25rem;
  color: #0a0a0a;
  margin-bottom: 0.25rem;
  text-transform: uppercase;
}
.wheel-title h6 {
  font-weight: 400;
  letter-spacing: 0.15rem;
  font-size: 1.5rem;
  text-transform: uppercase;
}
.wheel-title p {
  font-style: italic;
  color: #666666;
  font-size: 1.15rem;
}
.wheel-title .title .lug-display {
  font-size: 0.85rem;
  font-weight: 700;
  color: #333333;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
.wheel-title .red {
  color: #eb212e;
}
.wheel-title .divider {
  width: 1px;
  background-color: #cccccc;
  height: 46px;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-title .divider {
    display: none;
  }
}
.wheel-title .finish .discontinued {
  color: #eb212e;
  text-transform: uppercase;
  margin-top: -1.5rem;
  font-weight: 600;
}
.wheel-title .price, .wheel-title .msrp-display {
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  color: #0a0a0a;
  text-transform: uppercase;
}
.wheel-title .price span, .wheel-title .msrp-display span {
  font-size: 0.75rem;
  text-transform: uppercase;
  font-weight: 500;
}
.wheel-title .price span.msrp-pricing, .wheel-title .msrp-display span.msrp-pricing {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.1rem;
  position: relative;
  display: inline-block;
}
.wheel-title .price span.msrp-pricing:before, .wheel-title .msrp-display span.msrp-pricing:before {
  content: "";
  width: 100%;
  position: absolute;
  right: 0;
  top: 45%;
  border-bottom: 2px solid #eb212e;
  -webkit-transform: skewY(10deg);
  transform: skewY(10deg);
}
.wheel-title .msrp-display {
  display: none;
}

#wheel .cart {
  color: #666666;
  margin-bottom: 2rem;
}
#wheel .cart .product {
  margin-bottom: 2rem;
}
#wheel .cart .product.sku-product {
  border-bottom: 1px solid #cccccc;
}
#wheel .cart .product #product-select {
  background-position: right 0.5rem center;
  padding: 1rem;
  height: auto;
  border-radius: 3px;
  font-weight: 700;
  letter-spacing: 0.1rem;
  font-size: 0.8rem;
}
#wheel .cart .product .product-sku {
  color: #0a0a0a;
  font-weight: 500;
}
#wheel .cart .product .label.sku-information {
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
#wheel .cart .product .label.sku-label {
  width: 100%;
  margin-bottom: 1rem;
}
#wheel .cart .fitment-selected {
  max-width: 400px;
}
#wheel .cart .fitment-selected .vehicle {
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 0.85rem;
}
#wheel .cart .fitment-selected .vehicle span {
  text-align: left;
}
#wheel .cart .fitment-selected .vehicle .button {
  background: transparent;
  color: #333333;
  margin-bottom: 0;
  font-weight: 500;
  border: 1px solid #eeeeee;
}
#wheel .cart .fitment-selected .vehicle .button.fitment-open {
  width: 100%;
  text-align: left;
  border-right: 0;
}
#wheel .cart .fitment-selected .vehicle .button.fitment-open:hover {
  background-color: #cccccc;
}
#wheel .cart .fitment-selected .vehicle .button.fitment-open:hover span {
  text-decoration: underline;
}
#wheel .cart .fitment-selected .vehicle .button.fitmentClear3:hover {
  background-color: #eb212e;
  color: #fefefe;
}
#wheel .cart .fitment-selected .vehicle a {
  display: block;
}
#wheel .cart .fitment-selected .vehicle p {
  margin-bottom: 0;
}
#wheel .cart .fitment-selected .vehicle .remove-fitment {
  text-decoration: underline;
  margin-bottom: 1.5rem;
}
#wheel .cart .fitment-selected .vehicle .vov-link {
  background-color: #333333;
  color: #fefefe;
  padding: 1rem 2rem;
  border-radius: 50px;
  display: inline-block;
  text-transform: uppercase;
  font-size: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  #wheel .cart .fitment-selected .vehicle .vov-link {
    max-width: 260px;
  }
}
#wheel .cart .fitment-selected .vehicle .vov-link i {
  margin-right: 1rem;
  font-size: 2.25rem;
}
#wheel .cart .pricing-section {
  max-width: 370px;
}
#wheel .cart .pricing-section.sku-pricing-section {
  display: block !important;
}
#wheel .cart .pricing-section .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 1rem;
}
#wheel .cart .pricing-section .top .quantity input {
  max-width: 80px;
  margin-bottom: 0;
  padding: 1rem;
  height: auto;
  border-radius: 3px;
}
#wheel .cart .pricing-section .top .pricing {
  font-size: 1.75rem;
  font-weight: 700;
  letter-spacing: 0.15rem;
  text-transform: uppercase;
  color: #0a0a0a;
  line-height: 1.25;
}
#wheel .cart .pricing-section .bottom .button {
  width: 100%;
  background-color: #eb212e;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
}
#wheel .cart .pricing-section .bottom .button:hover {
  background-color: #0a0a0a;
}

.details-nav-container {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.details-nav-container.body-nav-fixed {
  background-color: #0a0a0a;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
}
.details-nav-container .details-nav, .details-nav-container .details-nav-menu-container {
  background-color: #0a0a0a;
}
.details-nav-container .details-nav a, .details-nav-container .details-nav button, .details-nav-container .details-nav-menu-container a, .details-nav-container .details-nav-menu-container button {
  color: #fefefe;
}
.details-nav-container .details-nav {
  border-top: 1px solid #fefefe;
  padding-top: 1rem;
  padding-bottom: 1rem;
}
.details-nav-container .details-nav .row.expanded {
  margin-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .details-nav-container .details-nav .row.expanded {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  .details-nav-container .details-nav .row.expanded {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
.details-nav-container .details-nav .breadcrumbs-return {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.details-nav-container .details-nav .breadcrumbs-return-link i {
  margin-right: 1rem;
}
.details-nav-container .details-nav .breadcrumbs-return .divider {
  height: auto;
  background-color: transparent;
  overflow: unset;
  margin-left: 2rem;
  margin-right: 2rem;
  color: #fefefe;
}
.details-nav-container .details-nav .breadcrumbs-return .details-nav-menu-button i {
  margin-left: 1rem;
}
.details-nav-container .details-nav .details-nav-right {
  text-align: right;
}
.details-nav-container .details-nav .details-nav-right .button {
  background-color: #333333;
  border-color: #333333;
  max-width: 160px;
  margin-bottom: 0;
}
.details-nav-container .details-nav .details-nav-right .button:hover {
  background-color: #cccccc;
}
.details-nav-container .details-nav-menu-container {
  /*.products-list {
    margin-bottom:1rem;
    max-width:80rem;
    @include breakpoint (large) {
      margin-bottom:2rem;
      max-width:none;
    }
    @include breakpoint (xlarge) {
      padding-left:5rem;
      padding-right:5rem;
    }*/
  position: relative;
  z-index: 2;
}
.details-nav-container .details-nav-menu-container ul {
  white-space: nowrap;
  overflow-x: scroll;
  scroll-behavior: smooth;
  padding: 2rem;
  -ms-overflow-style: none; /* Internet Explorer 10+ */
  scrollbar-width: none; /* Firefox */
}
.details-nav-container .details-nav-menu-container ul::-webkit-scrollbar {
  display: none; /* Safari and Chrome */
}
.details-nav-container .details-nav-menu-container .product-item {
  margin-bottom: 0.5rem;
  padding-right: 0.25rem;
  max-height: 260px;
  max-width: 440px;
  display: inline-block;
  white-space: normal;
}
.details-nav-container .details-nav-menu-container a {
  color: #0a0a0a;
  font-weight: 400;
  letter-spacing: 0.05rem;
}
.details-nav-container .details-nav-menu-container a .hover-item {
  overflow: hidden;
  background-color: #f7f7f7;
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  .details-nav-container .details-nav-menu-container a .hover-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 40em) {
  .details-nav-container .details-nav-menu-container a .hover-item > div {
    width: 50%;
  }
}
.details-nav-container .details-nav-menu-container a .hover-item img {
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  .details-nav-container .details-nav-menu-container a .hover-item img {
    width: 100%;
  }
}
.details-nav-container .details-nav-menu-container a .hover-item:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
.details-nav-container .details-nav-menu-container .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 40em) {
  .details-nav-container .details-nav-menu-container .info {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
  }
}
.details-nav-container .details-nav-menu-container .info .wheel-name {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-size: 1rem;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  .details-nav-container .details-nav-menu-container .info .wheel-name {
    font-size: 1.75rem;
  }
}
.details-nav-container .details-nav-menu-container .details-nav-button-container button {
  position: absolute;
  top: 38%;
  background: rgba(0, 0, 0, 0.4);
  border-radius: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 50px;
  height: 50px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.details-nav-container .details-nav-menu-container .details-nav-button-container button.button-left {
  left: 3rem;
}
.details-nav-container .details-nav-menu-container .details-nav-button-container button.button-right {
  right: 3rem;
}
.details-nav-container .details-nav-overlay {
  position: absolute;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(3px);
  height: 100vh;
  width: 100%;
}

#wheels .wheel-filters h3, #wheel-brands .wheel-filters h3 {
  font-size: 1.15rem;
  color: #eb212e;
  text-transform: uppercase;
  font-weight: 700;
}
#wheels .wheel-filters .title, #wheel-brands .wheel-filters .title {
  border-bottom: 1px solid #aaaaaa;
  margin-bottom: 2rem;
}
#wheels .wheel-filters .accordion-container, #wheel-brands .wheel-filters .accordion-container {
  margin-bottom: 2rem;
}
#wheels .wheel-filters .accordion-title, #wheel-brands .wheel-filters .accordion-title {
  color: #eb212e;
  font-weight: 700;
}
@media print, screen and (max-width: 63.99875em) {
  #wheels .wheel-filters .accordion-content, #wheel-brands .wheel-filters .accordion-content {
    padding: 1rem;
    border-top: 1px solid #aaaaaa;
  }
}
#wheels .wheel-filters .fitment-search .button, #wheel-brands .wheel-filters .fitment-search .button {
  background-color: #eb212e;
  border-radius: 10px;
}
@media print, screen and (min-width: 64em) {
  #wheels .wheel-filters .fitment-search .button, #wheel-brands .wheel-filters .fitment-search .button {
    margin-bottom: 2rem;
  }
}
#wheels .wheel-filters .fitment-search .button:hover, #wheel-brands .wheel-filters .fitment-search .button:hover {
  background-color: #666666;
}
#wheels .wheel-filters .wheel-filter, #wheel-brands .wheel-filters .wheel-filter {
  padding-bottom: 2rem;
}
#wheels .wheel-filters .wheel-filter h5, #wheel-brands .wheel-filters .wheel-filter h5 {
  text-transform: uppercase;
  letter-spacing: 0;
  font-size: 1.15rem;
}
#wheels .wheel-filters .wheel-filter ul, #wheel-brands .wheel-filters .wheel-filter ul {
  list-style: none;
  margin: 0;
}
#wheels .wheel-filters .wheel-filter li, #wheel-brands .wheel-filters .wheel-filter li {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 0;
}
#wheels .wheel-filters .wheel-filter input, #wheel-brands .wheel-filters .wheel-filter input {
  margin-bottom: 0.75rem;
}
#wheels .wheel-filters .wheel-filter label, #wheel-brands .wheel-filters .wheel-filter label {
  line-height: 0;
}
#wheels .wheel-filters .wheel-filter.filter-active, #wheel-brands .wheel-filters .wheel-filter.filter-active {
  font-weight: 400;
  padding-bottom: 2rem;
}
#wheels .wheel-filters .wheel-filter.filter-active ul, #wheel-brands .wheel-filters .wheel-filter.filter-active ul {
  padding-bottom: 1rem;
}
#wheels .wheel-filters .wheel-filter.filter-active li, #wheel-brands .wheel-filters .wheel-filter.filter-active li {
  display: inline-block;
}
#wheels .wheel-filters .wheel-filter.filter-active a, #wheel-brands .wheel-filters .wheel-filter.filter-active a {
  color: #fefefe;
  background-color: #eb212e;
  font-weight: 700;
  padding: 0.25rem 0.5rem;
  border-radius: 10px;
  display: block;
}
#wheels .wheel-filters .wheel-filter.filter-active a:hover, #wheel-brands .wheel-filters .wheel-filter.filter-active a:hover {
  background-color: #666666;
}
#wheels .wheel-filters .wheel-filter.filter-active a i, #wheel-brands .wheel-filters .wheel-filter.filter-active a i {
  margin-right: 0.5rem;
}
#wheels .wheel-filters .wheel-filter.filter-active a#clear, #wheel-brands .wheel-filters .wheel-filter.filter-active a#clear {
  display: block;
  margin-top: 0.5rem;
}
#wheels .wheel-filters .wheel-filter.filter-active-selected, #wheel-brands .wheel-filters .wheel-filter.filter-active-selected {
  padding: 0.5rem;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  display: inline-block;
  border-radius: 5px;
}
#wheels .wheel-filters .wheel-filter.filter-active-selected:hover, #wheel-brands .wheel-filters .wheel-filter.filter-active-selected:hover {
  background-color: #eb212e;
  color: white;
}
#wheels .wheel-filters .wheel-filter.filter-active-selected:hover a, #wheel-brands .wheel-filters .wheel-filter.filter-active-selected:hover a {
  color: #fefefe;
}
#wheels .wheel-filters .wheel-filter.filter-active .filter-active-clear, #wheel-brands .wheel-filters .wheel-filter.filter-active .filter-active-clear {
  padding-bottom: 2rem;
  border-bottom: 1px solid #aaaaaa;
}
#wheels .wheel-filters .wheel-filter.filter-active .filter-active-clear a, #wheel-brands .wheel-filters .wheel-filter.filter-active .filter-active-clear a {
  color: #eb212e;
  font-weight: 900;
  background-color: transparent;
  text-transform: capitalize;
  padding: 0;
}
#wheels .wheel-filters .wheel-filter.filter-active .filter-active-clear a:hover, #wheel-brands .wheel-filters .wheel-filter.filter-active .filter-active-clear a:hover {
  color: #666666;
}
#wheels .wheel-filters .wheel-filter .filter-button, #wheel-brands .wheel-filters .wheel-filter .filter-button {
  color: #eb212e;
  font-weight: 800;
}
#wheels .wheel-filters .wheel-filter-part-number, #wheel-brands .wheel-filters .wheel-filter-part-number {
  max-width: 80%;
  border-bottom: 1px solid #666666;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
#wheels .wheel-filters .wheel-filter-part-number input, #wheel-brands .wheel-filters .wheel-filter-part-number input {
  padding: 0.5rem;
  margin-bottom: 0;
}
#wheels .wheel-filters .wheel-filter-part-number button, #wheel-brands .wheel-filters .wheel-filter-part-number button {
  background-color: #336699;
}
#wheels .wheel-filters .wheel-filter-shopby, #wheel-brands .wheel-filters .wheel-filter-shopby {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (max-width: 39.99875em) {
  #wheels .wheel-filters .wheel-filter-shopby, #wheel-brands .wheel-filters .wheel-filter-shopby {
    padding-bottom: 1rem;
  }
}
@media print, screen and (min-width: 40em) {
  #wheels .wheel-filters .wheel-filter-shopby, #wheel-brands .wheel-filters .wheel-filter-shopby {
    border-bottom: 5px solid #666666;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 2rem;
    max-width: 80%;
  }
}
#wheels .wheel-filters .wheel-filter-shopby label, #wheels .wheel-filters .wheel-filter-shopby select, #wheel-brands .wheel-filters .wheel-filter-shopby label, #wheel-brands .wheel-filters .wheel-filter-shopby select {
  margin-bottom: 0;
}
#wheels .wheel-filters .wheel-filter-shopby label, #wheel-brands .wheel-filters .wheel-filter-shopby label {
  margin-right: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  #wheels .wheel-filters .wheel-filter-shopby label, #wheel-brands .wheel-filters .wheel-filter-shopby label {
    margin-right: 1rem;
  }
}
#wheels .wheel-filters .wheel-filter-shopby select, #wheel-brands .wheel-filters .wheel-filter-shopby select {
  width: auto;
}
@media print, screen and (max-width: 39.99875em) {
  #wheels .wheel-filters .wheel-filter-shopby select, #wheel-brands .wheel-filters .wheel-filter-shopby select {
    font-size: 0.9rem;
  }
}
#wheels .wheel-filters .wheel-filter-shopby h5, #wheel-brands .wheel-filters .wheel-filter-shopby h5 {
  color: #eb212e;
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  #wheels .wheel-filters .wheel-filter-shopby h5, #wheel-brands .wheel-filters .wheel-filter-shopby h5 {
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
}

@media print, screen and (max-width: 63.99875em) {
  #wheels .filter-selection, #wheel-brands .filter-selection, #gallery .filter-selection {
    border: 0;
    padding: 0.75rem;
  }
  #wheels .accordion-item, #wheel-brands .accordion-item, #gallery .accordion-item {
    border: 1px solid #aaaaaa;
  }
}
#wheels .accordion-title, #wheel-brands .accordion-title, #gallery .accordion-title {
  font-family: "Teko", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  border: 0;
}

#wheels .wheel-filter #wheel-filter-search, #wheel-brands .wheel-filter #wheel-filter-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#wheels .wheel-filter #wheel-filter-search .brand-name, #wheel-brands .wheel-filter #wheel-filter-search .brand-name {
  font-size: 1.5rem;
  color: #0a0a0a;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: 700;
  margin: 0 1rem;
}
#wheels .wheel-filter #wheel-filter-search .accordion-filter__header, #wheel-brands .wheel-filter #wheel-filter-search .accordion-filter__header {
  text-transform: unset;
}
@media print, screen and (max-width: 63.99875em) {
  #wheels .wheel-filter .accordion-filter__content, #wheel-brands .wheel-filter .accordion-filter__content {
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  #wheels .wheel-filter .accordion-filter__container, #wheel-brands .wheel-filter .accordion-filter__container {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#wheels .wheel-filter .accordion-filter__dropdown, #wheel-brands .wheel-filter .accordion-filter__dropdown {
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  #wheels .wheel-filter .accordion-filter__dropdown, #wheel-brands .wheel-filter .accordion-filter__dropdown {
    margin: 0 1rem;
    width: auto;
  }
}
#wheels .wheel-filter .accordion-filter__dropdown select, #wheel-brands .wheel-filter .accordion-filter__dropdown select {
  padding: 0.75rem;
  padding-right: 1.5rem;
  font-weight: 400;
  border: 1px solid #dddddd;
  font-size: 0.9rem;
}
#wheels .wheel-filter .accordion-filter__dropdown .button, #wheel-brands .wheel-filter .accordion-filter__dropdown .button {
  margin-bottom: 0;
  background-color: #eb212e;
  color: #fefefe;
  padding: 0.75rem 1.75rem;
  border-radius: 5px;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 1rem;
}
#wheels .wheel-filter .sort-wheels, #wheel-brands .wheel-filter .sort-wheels {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 64em) {
  #wheels .wheel-filter .sort-wheels, #wheel-brands .wheel-filter .sort-wheels {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}

#wheels .filter-fitment, #wheel-brands .filter-fitment, #gallery .filter-fitment {
  margin-bottom: 3rem;
}
#wheels .filter .vehicle-title, #wheel-brands .filter .vehicle-title, #gallery .filter .vehicle-title {
  background-color: #eb212e;
  height: 54px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#wheels .filter .vehicle-title h4, #wheel-brands .filter .vehicle-title h4, #gallery .filter .vehicle-title h4 {
  color: #fefefe;
}
#wheels .filter .vehicle-select, #wheel-brands .filter .vehicle-select, #gallery .filter .vehicle-select {
  padding: 1rem;
  border: 1px solid #cccccc;
  border-top: 0;
}
#wheels .filter .vehicle-select select, #wheel-brands .filter .vehicle-select select, #gallery .filter .vehicle-select select {
  border-color: #cccccc;
}
#wheels .filter .vehicle-select .button-group, #wheel-brands .filter .vehicle-select .button-group, #gallery .filter .vehicle-select .button-group {
  margin-bottom: 0;
}
#wheels #fitment-vehicle-select .vs--unsearchable, #wheel-brands #fitment-vehicle-select .vs--unsearchable, #gallery #fitment-vehicle-select .vs--unsearchable {
  width: 100%;
  background-color: transparent;
  margin-bottom: 1rem;
  border: 1px solid #e6e6e6;
}
#wheels #fitment-vehicle-select .vs--unsearchable input, #wheel-brands #fitment-vehicle-select .vs--unsearchable input, #gallery #fitment-vehicle-select .vs--unsearchable input {
  background-color: transparent;
  margin: 0;
}
#wheels #fitment-vehicle-select .vs--unsearchable .vs__dropdown-toggle, #wheel-brands #fitment-vehicle-select .vs--unsearchable .vs__dropdown-toggle, #gallery #fitment-vehicle-select .vs--unsearchable .vs__dropdown-toggle {
  border: 0;
  padding: 0;
}
#wheels #fitment-vehicle-select .vs--unsearchable.vs--disabled, #wheel-brands #fitment-vehicle-select .vs--unsearchable.vs--disabled, #gallery #fitment-vehicle-select .vs--unsearchable.vs--disabled {
  background-color: #e6e6e6;
}
#wheels #fitment-vehicle-select .vs--unsearchable.vs--disabled input, #wheel-brands #fitment-vehicle-select .vs--unsearchable.vs--disabled input, #gallery #fitment-vehicle-select .vs--unsearchable.vs--disabled input {
  background-color: #e6e6e6;
}
#wheels #fitment-vehicle-select .vs--unsearchable.vs--disabled .vs__dropdown-toggle, #wheel-brands #fitment-vehicle-select .vs--unsearchable.vs--disabled .vs__dropdown-toggle, #gallery #fitment-vehicle-select .vs--unsearchable.vs--disabled .vs__dropdown-toggle {
  background-color: #e6e6e6;
  border: 0;
}
#wheels #fitment-vehicle-select .vs--unsearchable.vs--disabled svg, #wheel-brands #fitment-vehicle-select .vs--unsearchable.vs--disabled svg, #gallery #fitment-vehicle-select .vs--unsearchable.vs--disabled svg {
  background-color: #e6e6e6;
}
#wheels #fitment-vehicle-select .vs--unsearchable .vs__selected, #wheel-brands #fitment-vehicle-select .vs--unsearchable .vs__selected, #gallery #fitment-vehicle-select .vs--unsearchable .vs__selected {
  font-weight: 600;
}

.product-filters .icon-product-filter {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
}
.product-filters .filter-brands-opts {
  display: none;
}

.icon-filter-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.icon-filter-title h4 {
  font-size: 1.25rem;
  margin-bottom: 0;
}

.icon-filter-items {
  padding-top: 1rem;
}
.icon-filter-items li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.icon-filter-items input {
  margin-bottom: 0;
}
.icon-filter-items label {
  line-height: 1;
}

#wheels .filter, #wheel-brands .filter, #gallery .filter {
  padding-left: 2rem;
  padding-right: 2rem;
}
#wheels .filter h4, #wheel-brands .filter h4, #gallery .filter h4 {
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 0.1rem;
  color: #eb212e;
  margin-bottom: 0;
  font-weight: 700;
}
#wheels .filter ul, #wheel-brands .filter ul, #gallery .filter ul {
  list-style: none;
}
#wheels .filter label, #wheel-brands .filter label, #gallery .filter label {
  font-weight: 700;
  text-transform: uppercase;
}
#wheels .filter i.fa-minus, #wheels .filter i.fa-plus, #wheel-brands .filter i.fa-minus, #wheel-brands .filter i.fa-plus, #gallery .filter i.fa-minus, #gallery .filter i.fa-plus {
  color: #888888;
}
#wheels .filter i.fa-minus:hover, #wheels .filter i.fa-plus:hover, #wheel-brands .filter i.fa-minus:hover, #wheel-brands .filter i.fa-plus:hover, #gallery .filter i.fa-minus:hover, #gallery .filter i.fa-plus:hover {
  color: #eb212e;
}
#wheels .filter .filter-title, #wheel-brands .filter .filter-title, #gallery .filter .filter-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#wheels .filter .filter-button, #wheel-brands .filter .filter-button, #gallery .filter .filter-button {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 600;
  color: #444444;
}
#wheels .filter .filter-button:hover, #wheel-brands .filter .filter-button:hover, #gallery .filter .filter-button:hover {
  color: #eb212e;
}
#wheels .filter .filter-items, #wheel-brands .filter .filter-items, #gallery .filter .filter-items {
  padding-top: 1rem;
  display: none;
}
#wheels .filter .filter-items li, #wheel-brands .filter .filter-items li, #gallery .filter .filter-items li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  line-height: 1;
}
#wheels .filter .filter-items input, #wheel-brands .filter .filter-items input, #gallery .filter .filter-items input {
  margin-bottom: 0;
}
#wheels .filter .filter-items label, #wheel-brands .filter .filter-items label, #gallery .filter .filter-items label {
  line-height: 1;
}
#wheels .filter .product-filters .product-filter, #wheel-brands .filter .product-filters .product-filter, #gallery .filter .product-filters .product-filter {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}
#wheels .filter .filter-active, #wheel-brands .filter .filter-active, #gallery .filter .filter-active {
  margin-bottom: 1rem;
}
@media print, screen and (max-width: 63.99875em) {
  #wheels .filter .filter-active, #wheel-brands .filter .filter-active, #gallery .filter .filter-active {
    border-bottom: 1px solid #cccccc;
  }
}
#wheels .filter .filter-active a, #wheel-brands .filter .filter-active a, #gallery .filter .filter-active a {
  background-color: #cccccc;
  color: #0a0a0a;
  border-radius: 5px;
  padding: 0.25rem 0.5rem;
  font-weight: 600;
}
#wheels .filter .filter-active a i, #wheel-brands .filter .filter-active a i, #gallery .filter .filter-active a i {
  color: #eb212e;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-size: inherit;
}
#wheels .filter .filter-active a:hover, #wheel-brands .filter .filter-active a:hover, #gallery .filter .filter-active a:hover {
  background-color: #eb212e;
  color: #fefefe;
}
#wheels .filter .filter-active a:hover i, #wheel-brands .filter .filter-active a:hover i, #gallery .filter .filter-active a:hover i {
  color: #fefefe;
}
#wheels .filter .filter-active a.fitmentSet, #wheel-brands .filter .filter-active a.fitmentSet, #gallery .filter .filter-active a.fitmentSet {
  pointer-events: none;
  background-color: #999999;
}
#wheels .filter .filter-active a.fitmentSet i, #wheel-brands .filter .filter-active a.fitmentSet i, #gallery .filter .filter-active a.fitmentSet i {
  color: #666666;
}
#wheels .filter .filter-active ul li, #wheel-brands .filter .filter-active ul li, #gallery .filter .filter-active ul li {
  display: inline-block;
  margin-bottom: 0.5rem;
  margin-right: 10px;
}
#wheels .filter .filter-active-clear, #wheel-brands .filter .filter-active-clear, #gallery .filter .filter-active-clear {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .filter .filter-active-clear, #wheel-brands .filter .filter-active-clear, #gallery .filter .filter-active-clear {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
#wheels .filter .filter-active-clear a, #wheel-brands .filter .filter-active-clear a, #gallery .filter .filter-active-clear a {
  font-size: 0.75rem;
  font-weight: 600;
  color: #444444;
  text-transform: uppercase;
  border: none;
  background-color: transparent;
  padding: 0;
}
#wheels .filter .filter-active-clear a:hover, #wheel-brands .filter .filter-active-clear a:hover, #gallery .filter .filter-active-clear a:hover {
  border: none;
  background-color: transparent;
  color: #0a0a0a;
}
#wheels .filter .filter-active .filter-active-title, #wheel-brands .filter .filter-active .filter-active-title, #gallery .filter .filter-active .filter-active-title {
  margin-bottom: 1rem;
}
#wheels .filter .filter-active .filter-active-title h4, #wheel-brands .filter .filter-active .filter-active-title h4, #gallery .filter .filter-active .filter-active-title h4 {
  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;
  width: 100%;
  color: #0a0a0a;
}
#wheels .filter .filter-brands label, #wheel-brands .filter .filter-brands label, #gallery .filter .filter-brands label {
  max-width: 260px;
  line-height: 1;
  vertical-align: middle;
}

#wheel .wheel-info, #wheel .accessory-info {
  /*padding:1rem;
  border-radius: 1rem;
  box-shadow: 0px 0px 25px $grayC;
  margin-bottom:1rem;
  @include breakpoint (large) {
    padding:2.5rem;
    margin-bottom:2.5rem;
  }*/
}
#wheel .wheel-info h1, #wheel .wheel-info h4, #wheel .accessory-info h1, #wheel .accessory-info h4 {
  font-size: 2rem;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
  line-height: 1.1;
}
#wheel .wheel-info .bottom, #wheel .wheel-info .pricing-stock, #wheel .wheel-info .pricing-price, #wheel .wheel-info .pricing-match, #wheel .accessory-info .bottom, #wheel .accessory-info .pricing-stock, #wheel .accessory-info .pricing-price, #wheel .accessory-info .pricing-match {
  font-family: "Arial", sans-serif;
}
#wheel .wheel-info .pricing-specs, #wheel .accessory-info .pricing-specs {
  color: #0a0a0a;
  margin-bottom: 1rem;
  font-size: 0.85rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .wheel-info .pricing-specs, #wheel .accessory-info .pricing-specs {
    font-size: 1rem;
  }
}
#wheel .wheel-info .pricing-specs .top, #wheel .accessory-info .pricing-specs .top {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  margin-bottom: 1rem;
}
#wheel .wheel-info .pricing-specs .top .front > span:after, #wheel .wheel-info .pricing-specs .top .rear > span:after, #wheel .accessory-info .pricing-specs .top .front > span:after, #wheel .accessory-info .pricing-specs .top .rear > span:after {
  content: ",";
}
#wheel .wheel-info .pricing-specs .top .front > span:last-child:after, #wheel .wheel-info .pricing-specs .top .rear > span:last-child:after, #wheel .accessory-info .pricing-specs .top .front > span:last-child:after, #wheel .accessory-info .pricing-specs .top .rear > span:last-child:after {
  content: "";
}
#wheel .wheel-info .pricing-specs .bottom, #wheel .accessory-info .pricing-specs .bottom {
  margin-bottom: 0.5rem;
  font-weight: 500;
}
#wheel .wheel-info .pricing-specs .bottom span, #wheel .accessory-info .pricing-specs .bottom span {
  color: #0a0a0a;
  font-weight: 600;
}
#wheel .wheel-info .pricing-specs .bottom .pricing-brand, #wheel .accessory-info .pricing-specs .bottom .pricing-brand {
  color: #eb212e;
}
#wheel .wheel-info .pricing-specs .bottom .pricing-starting .call-for, #wheel .accessory-info .pricing-specs .bottom .pricing-starting .call-for {
  color: #eb212e;
  text-transform: uppercase;
  font-weight: 600;
}
#wheel .wheel-info .pricing-specs .bottom .pricing-starting .sale-item, #wheel .accessory-info .pricing-specs .bottom .pricing-starting .sale-item {
  color: #eb212e;
  font-weight: 700;
  text-transform: uppercase;
  margin-left: 0.5rem;
}
#wheel .wheel-info .pricing-specs .bottom.non-skupage, #wheel .accessory-info .pricing-specs .bottom.non-skupage {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#wheel .wheel-info .pricing-specs .bottom.non-skupage > div, #wheel .accessory-info .pricing-specs .bottom.non-skupage > div {
  width: 100%;
}
#wheel .wheel-info .pricing-specs .pricing-stock, #wheel .accessory-info .pricing-specs .pricing-stock {
  color: #33cc33;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.05rem;
}
#wheel .wheel-info .pricing-price, #wheel .accessory-info .pricing-price {
  background-color: #efefef;
  padding: 1rem;
  border-radius: 0.5rem;
  color: #0a0a0a;
  margin-bottom: 1rem;
}
#wheel .wheel-info .pricing-price .title, #wheel .accessory-info .pricing-price .title {
  font-size: 1.5rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
#wheel .wheel-info .pricing-price .title .sale-item, #wheel .accessory-info .pricing-price .title .sale-item {
  color: #eb212e;
  font-size: 1.25rem;
}
#wheel .wheel-info .pricing-price .subtitle, #wheel .accessory-info .pricing-price .subtitle {
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0.05rem;
}
#wheel .wheel-info .pricing-price .subtitle span, #wheel .accessory-info .pricing-price .subtitle span {
  text-transform: uppercase;
}
#wheel .wheel-info .pricing-price .price-original, #wheel .accessory-info .pricing-price .price-original {
  font-weight: 400;
  text-decoration: line-through;
}
#wheel .wheel-info .pricing-price .price-sale, #wheel .accessory-info .pricing-price .price-sale {
  color: #eb212e;
}
#wheel .wheel-info .pricing-match, #wheel .accessory-info .pricing-match {
  margin-bottom: 1rem;
  text-transform: capitalize;
  color: #0a0a0a;
  font-size: 0.95rem;
  font-weight: 600;
}
#wheel .wheel-info .pricing-vehicle, #wheel .accessory-info .pricing-vehicle {
  margin-bottom: 2rem;
}
#wheel .wheel-info .pricing-vehicle h4, #wheel .accessory-info .pricing-vehicle h4 {
  font-size: 1.25rem;
}
#wheel .wheel-info .pricing-vehicle button, #wheel .accessory-info .pricing-vehicle button {
  font-family: "Arial", sans-serif;
  font-size: 0.95rem;
  color: #eb212e;
  text-decoration: underline;
  font-weight: 700;
}
#wheel .wheel-info .cta .button, #wheel .accessory-info .cta .button {
  background-color: #eb212e;
  border-radius: 0.5rem;
  margin-bottom: 0rem;
  width: 100%;
  padding: 1.6rem 0.5rem;
  font-size: 1.05rem;
}
#wheel .wheel-info .cta .button:hover, #wheel .accessory-info .cta .button:hover {
  background-color: #cccccc;
}
#wheel .wheel-info .cta .button.gray, #wheel .accessory-info .cta .button.gray {
  background-color: #999999;
}
#wheel .wheel-info .cta .button.gray:hover, #wheel .accessory-info .cta .button.gray:hover {
  background-color: #cccccc;
}
#wheel .wheel-info .cta .button.active, #wheel .accessory-info .cta .button.active {
  background-color: #0a0a0a;
}
#wheel .wheel-info .cta-button, #wheel .accessory-info .cta-button {
  margin-bottom: 2rem;
}
#wheel .wheel-info .cta-link, #wheel .accessory-info .cta-link {
  text-transform: uppercase;
  margin-bottom: 1.5rem;
}
#wheel .wheel-info .cta-link:last-child, #wheel .accessory-info .cta-link:last-child {
  margin-bottom: 0;
}
#wheel .wheel-info .cta-link:last-child .icon, #wheel .accessory-info .cta-link:last-child .icon {
  background-color: #999999;
}
#wheel .wheel-info .cta-link.orange .icon, #wheel .accessory-info .cta-link.orange .icon {
  background-color: #eb212e;
}
#wheel .wheel-info .cta-link a, #wheel .accessory-info .cta-link a {
  font-family: "Arial", sans-serif;
  color: #333333;
  font-weight: 600;
  font-size: 1rem;
  letter-spacing: 0.05rem;
  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;
}
#wheel .wheel-info .cta-link .icon, #wheel .accessory-info .cta-link .icon {
  margin-right: 1.5rem;
  width: 50px;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border-radius: 50px;
  background-color: #eb212e;
  text-decoration: unset;
  color: #fefefe;
  font-size: 2.5rem;
}
#wheel .wheel-info .cta-link .text, #wheel .accessory-info .cta-link .text {
  text-decoration: underline;
  font-size: 0.85rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .wheel-info .cta-link .text, #wheel .accessory-info .cta-link .text {
    font-size: 1rem;
  }
}
#wheel .wheel-info .buy-options, #wheel .accessory-info .buy-options {
  font-family: "Arial", sans-serif;
  padding: 1rem;
  background-color: #d4d4d4;
  border-radius: 0.5rem;
}
#wheel .wheel-info .buy-options label, #wheel .accessory-info .buy-options label {
  font-weight: 600;
}
#wheel .wheel-info .buy-options .missing, #wheel .accessory-info .buy-options .missing {
  background-color: rgba(255, 51, 51, 0.5);
}

#wheel .wheel-info img, #wheel .accessory-info img {
  max-width: 200px;
}
@media print, screen and (max-width: 39.99875em) {
  #wheel .wheel-info .series-logo, #wheel .accessory-info .series-logo {
    text-align: center;
  }
  #wheel .wheel-info .series-logo img, #wheel .accessory-info .series-logo img {
    max-width: 180px;
  }
}
#wheel .wheel-info .wheel-name, #wheel .accessory-info .wheel-name {
  font-size: 2.25rem;
  font-weight: 600;
  text-transform: uppercase;
  padding-bottom: 0.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  #wheel .wheel-info .wheel-name, #wheel .accessory-info .wheel-name {
    text-align: center;
    padding-bottom: 0;
    font-size: 2rem;
  }
}
#wheel .wheel-info .wheel-name span, #wheel .accessory-info .wheel-name span {
  font-weight: 400;
}

#see-on-vehicle-detail h5 {
  font-weight: 600;
  letter-spacing: -1px;
  line-height: 1;
  color: #0a0a0a;
}

.wheel-detail-sizes .title {
  font-weight: 600;
}

.wheel-badges {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wheel-badges > div {
  margin-right: 0.5rem;
}
.wheel-badges img {
  max-width: 100px;
}

.wheel-finishes img {
  max-width: 150px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.wheel-finishes img:hover {
  opacity: 0.5;
}
.wheel-finishes .title {
  text-transform: uppercase;
  font-weight: 600;
  color: #333333;
  margin-bottom: 1.15rem;
}
.wheel-finishes .detail-thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wheel-finishes .wheel-finish {
  text-align: center;
  font-weight: 600;
  margin-right: 0.5rem;
}

.wheel-videos.finishes-border {
  border-top: 1px solid #aaaaaa;
  margin-top: 1.5rem;
  padding-top: 1.5rem;
}
.wheel-videos .title {
  text-transform: uppercase;
  font-weight: 600;
  color: #333333;
  margin-bottom: 1.15rem;
}
.wheel-videos .wheel-video {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.wheel-videos .wheel-video > div {
  width: 100%;
  max-width: 50%;
}
.wheel-videos .wheel-video a {
  display: block;
  border: 1px solid #aaaaaa;
  position: relative;
}
.wheel-videos .wheel-video a:hover .play-icon {
  background-color: rgba(0, 0, 0, 0);
}
.wheel-videos .wheel-video a:hover .play-icon img {
  opacity: 0;
}
.wheel-videos .wheel-video .play-icon {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.wheel-videos .wheel-video .play-icon img {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

.pricing-information {
  padding: 0 0.625rem;
}

#wheel .spec-information-container .spec-information {
  border-bottom: 1px solid #999999;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  font-family: "Arial", sans-serif;
  letter-spacing: 0.05rem;
}
#wheel .spec-information-container .spec-information-title {
  color: #333333;
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  border-bottom: 1px solid #999999;
  margin-bottom: 1rem;
}
#wheel .spec-information-container .spec-information-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.9rem;
  font-weight: 500;
  color: #333333;
  text-transform: uppercase;
}
#wheel .spec-information-container .spec-information-item:nth-child(odd) > div {
  background-color: #eeeeee;
}
#wheel .spec-information-container .spec-information-item > div {
  width: 50%;
  padding: 0.5rem;
  margin: 0 2px;
}
#wheel .spec-information-container .spec-information-item > div:first-child {
  margin-left: 0;
}
#wheel .spec-information-container .spec-information-item > div:last-child {
  margin-right: 0;
}

#wheel .wheel-detail-stage {
  position: relative;
}
#wheel .wheel-detail-stage .caption {
  color: #333333;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
#wheel .stage-container > div:last-child {
  width: 35%;
}
#wheel .stage-container > div:first-child {
  width: 80%;
}
@media print, screen and (min-width: 64em) {
  #wheel .stage-container > div:first-child {
    width: 85%;
  }
}
#wheel .stage-container .alt-images {
  margin-left: auto;
  margin-right: 4rem;
}
@media print, screen and (min-width: 64em) {
  #wheel .stage-container .alt-images {
    margin-right: 8rem;
  }
}
#wheel .stage-container .alt-images .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  width: 100%;
}
#wheel .stage-container .alt-images .slick-slide, #wheel .stage-container .alt-images .slick-track {
  width: 100% !important;
}
#wheel .stage-container .alt-images .slick-slide {
  margin-right: 1rem;
  border-color: #cccccc;
  border-radius: 5px;
  width: 115px !important;
}
#wheel .stage-container .alt-images .slick-slide.slick-current {
  border-color: #999999;
}
#wheel .stage-container .alt-images .slick-active:after {
  display: none;
}
#wheel .stage-container .alt-images {
  /*.slick-track {
    @include breakpoint (medium) {
      width:100%!important;
    }
  }*/
}

.main-image {
  margin-bottom: 0;
  margin-left: auto;
  margin-right: 0;
}
.main-image img {
  margin: 0 auto;
}

.alt-images {
  margin: 0 auto 2rem;
}
@media print, screen and (min-width: 64em) {
  .alt-images {
    margin-bottom: 0 !important;
  }
}
.alt-images .slick-track {
  margin: 0 auto;
}
@media print, screen and (min-width: 40em) {
  .alt-images--retailer .slick-track {
    width: 100% !important;
    /*margin-top: 3rem;*/
  }
}
.alt-images .slick-dots {
  position: relative !important;
  text-align: center;
  bottom: 0;
  margin: 0;
}
.alt-images .slick-slide:focus {
  outline: 0;
}
.alt-images .slick-slide img {
  max-width: 100px;
  margin: 0 auto;
  width: 100%;
}
.alt-images a {
  margin-right: 0;
  padding: 0.7rem;
}
.alt-images img {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 0.5;
}
.alt-images img:hover {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transform: scale(1.08);
          transform: scale(1.08);
}
.alt-images .slick-active:after {
  width: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  content: "";
  display: block;
  margin: 0 auto;
  height: 5px;
  background-color: #eb212e;
}
.alt-images .slick-current:after {
  width: 80%;
}
.alt-images .slick-current img {
  opacity: 1;
}

#wheel .details-media {
  position: absolute;
  top: 0;
  right: 2rem;
}

.zoom {
  display: inline-block;
  position: relative;
}
.zoom:after {
  content: "";
  display: block;
  width: 33px;
  height: 33px;
  position: absolute;
  top: 0;
  right: 0;
  background: url(icon.png);
}
.zoom img {
  display: block;
}
.zoom img::-moz-selection {
  background-color: transparent;
}
.zoom img::selection {
  background-color: transparent;
}

/*
.easyzoom {
  position: relative;
   'Shrink-wrap' the element 
  display: inline-block;
  max-width: 100%;
  *display: inline;
  *zoom: 1;
}

.easyzoom img {
  vertical-align: bottom;
}

.easyzoom.is-loading img {
  cursor: progress;
}

.easyzoom.is-ready img {
  cursor: crosshair;
}

.easyzoom.is-error img {
  cursor: not-allowed;
}

.easyzoom-notice {
  line-height: 2em;
  position: absolute;
  z-index: 150;
  top: 50%;
  left: 50%;
  width: 10em;
  margin: -1em 0 0 -5em;
  text-align: center;
  background: #fff;
  box-shadow: 0 0 10px #888;
}

.easyzoom-flyout {
  position: absolute;
  z-index: 100;
  overflow: hidden;
  background: #fff;
}

.easyzoom-flyout img {
  max-width: none;
}



.easyzoom--overlay .easyzoom-flyout {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.easyzoom--adjacent .easyzoom-flyout {
  top: -10px;
  left: 75%;
  width: 350px;
  height: 350px;
  margin-left: 20px;
  border: 3px solid #333;
}










*/
#wheels.search-by-vehicle h1, #wheel-brands.search-by-vehicle h1, #gallery.search-by-vehicle h1 {
  text-transform: uppercase;
}
@media print, screen and (min-width: 40em) {
  #wheels.search-by-vehicle h1, #wheel-brands.search-by-vehicle h1, #gallery.search-by-vehicle h1 {
    color: #fefefe;
  }
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle h1, #wheel-brands.search-by-vehicle h1, #gallery.search-by-vehicle h1 {
    font-size: 2.25rem;
    font-weight: 700;
    letter-spacing: 0.2rem;
  }
}
@media print, screen and (min-width: 40em) {
  #wheels.search-by-vehicle .content-header, #wheel-brands.search-by-vehicle .content-header, #gallery.search-by-vehicle .content-header {
    background-image: url("/images/banners/wheels-banner.jpg");
    background-color: #444444;
    background-size: cover;
    background-position: center;
    text-align: center;
    padding-top: 2rem;
    padding-bottom: 2rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle .content-header, #wheel-brands.search-by-vehicle .content-header, #gallery.search-by-vehicle .content-header {
    height: 240px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #wheels.search-by-vehicle .page-content.padded.extra, #wheel-brands.search-by-vehicle .page-content.padded.extra, #gallery.search-by-vehicle .page-content.padded.extra {
    padding-top: 0;
  }
}
#wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul {
  margin: 0;
  list-style: none;
}
@media screen and (min-width: 75em) {
  #wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li {
  display: inline-block;
  margin-bottom: 0.35rem;
}
#wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child {
  margin-right: 0;
}
#wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a {
  width: 96px;
}
@media screen and (min-width: 75em) {
  #wheels.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a, #wheel-brands.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a, #gallery.search-by-vehicle .listing-search-bar #wheel-filter-search ul > li:last-child a {
    width: 40px;
  }
}
#wheels.search-by-vehicle .listing-search-bar a, #wheel-brands.search-by-vehicle .listing-search-bar a, #gallery.search-by-vehicle .listing-search-bar a {
  width: 46px;
  height: 52px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f4f4f4;
  color: #666666;
  font-weight: 500;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle .listing-search-bar a, #wheel-brands.search-by-vehicle .listing-search-bar a, #gallery.search-by-vehicle .listing-search-bar a {
    width: 40px;
    height: 40px;
    font-size: 1rem;
  }
}
#wheels.search-by-vehicle .listing-search-bar a:hover, #wheels.search-by-vehicle .listing-search-bar a.active-letter, #wheel-brands.search-by-vehicle .listing-search-bar a:hover, #wheel-brands.search-by-vehicle .listing-search-bar a.active-letter, #gallery.search-by-vehicle .listing-search-bar a:hover, #gallery.search-by-vehicle .listing-search-bar a.active-letter {
  background-color: #eb212e;
  color: #fefefe;
}
#wheels.search-by-vehicle .listing-search-bar a.disable-letter, #wheel-brands.search-by-vehicle .listing-search-bar a.disable-letter, #gallery.search-by-vehicle .listing-search-bar a.disable-letter {
  pointer-events: none;
  opacity: 0.25;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns {
  padding-left: 0.35rem;
  padding-right: 0.35rem;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child {
  padding-left: 0;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child a, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child a, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child button, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child a, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child a, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child a, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child a, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child button {
  background-color: #eb212e;
  color: #fefefe;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child {
  padding-right: 0;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button {
  background-color: transparent;
  border: 1px solid #efefef;
  color: #0a0a0a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a > div, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a > div, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button > div, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button > div, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a > div, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a > div, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button > div, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button > div, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a > div, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a > div, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button > div, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button > div {
  width: 60%;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search a, #wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search a, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search a, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button {
  width: auto;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0;
  padding: 0 1rem;
}
#wheels.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button, #wheel-brands.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button, #gallery.search-by-vehicle .listing-search-bar .mobile-only-slide-filter-search button {
  width: 100%;
  height: 52px;
}
#wheels.search-by-vehicle .products-list, #wheel-brands.search-by-vehicle .products-list, #gallery.search-by-vehicle .products-list {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle .products-list, #wheel-brands.search-by-vehicle .products-list, #gallery.search-by-vehicle .products-list {
    margin-bottom: 4rem;
  }
}
#wheels.search-by-vehicle .products-list .hover-item, #wheel-brands.search-by-vehicle .products-list .hover-item, #gallery.search-by-vehicle .products-list .hover-item {
  position: relative;
}
#wheels.search-by-vehicle .products-list .hover-item:hover img, #wheel-brands.search-by-vehicle .products-list .hover-item:hover img, #gallery.search-by-vehicle .products-list .hover-item:hover img {
  -webkit-transform: scale(1.025);
          transform: scale(1.025);
}
#wheels.search-by-vehicle .products-list .sale-item, #wheel-brands.search-by-vehicle .products-list .sale-item, #gallery.search-by-vehicle .products-list .sale-item {
  background: linear-gradient(135deg, #eb212e 0, #eb212e 40%, transparent 40%, transparent 100%);
  position: absolute;
  top: 0;
  left: 0;
  width: 100px;
  height: 100px;
  text-align: left;
  padding: 0.5rem;
  padding-right: 2rem;
  text-transform: uppercase;
  line-height: 1.1;
  color: #fefefe;
  font-weight: 700;
  font-size: 0.9rem;
}
#wheels.search-by-vehicle .products-list .info, #wheel-brands.search-by-vehicle .products-list .info, #gallery.search-by-vehicle .products-list .info {
  text-align: left;
  color: #0a0a0a;
}
#wheels.search-by-vehicle .products-list .image, #wheel-brands.search-by-vehicle .products-list .image, #gallery.search-by-vehicle .products-list .image {
  background-color: #f4f4f4;
  margin-bottom: 1rem;
  text-align: center;
}
#wheels.search-by-vehicle .products-list .product-name, #wheel-brands.search-by-vehicle .products-list .product-name, #gallery.search-by-vehicle .products-list .product-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 0.5rem;
}
#wheels.search-by-vehicle .products-list .product-name span, #wheel-brands.search-by-vehicle .products-list .product-name span, #gallery.search-by-vehicle .products-list .product-name span {
  display: inline-block;
}
#wheels.search-by-vehicle .products-list .product-name .new, #wheel-brands.search-by-vehicle .products-list .product-name .new, #gallery.search-by-vehicle .products-list .product-name .new {
  width: 56px;
  height: 28px;
  background-color: #eb212e;
  font-size: 0.9rem;
  font-weight: 700;
  color: #fefefe;
  margin-right: 0.75rem;
  text-align: center;
  text-transform: uppercase;
  line-height: 2;
}
#wheels.search-by-vehicle .products-list .product-name .brand-and-name, #wheel-brands.search-by-vehicle .products-list .product-name .brand-and-name, #gallery.search-by-vehicle .products-list .product-name .brand-and-name {
  text-align: left;
  font-weight: 700;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  line-height: 1.25;
}
#wheels.search-by-vehicle .products-list .specs, #wheels.search-by-vehicle .products-list .price, #wheels.search-by-vehicle .products-list .shipping, #wheel-brands.search-by-vehicle .products-list .specs, #wheel-brands.search-by-vehicle .products-list .price, #wheel-brands.search-by-vehicle .products-list .shipping, #gallery.search-by-vehicle .products-list .specs, #gallery.search-by-vehicle .products-list .price, #gallery.search-by-vehicle .products-list .shipping {
  font-family: "Arial", sans-serif;
}
#wheels.search-by-vehicle .products-list .specs, #wheel-brands.search-by-vehicle .products-list .specs, #gallery.search-by-vehicle .products-list .specs {
  font-size: 0.85rem;
  text-transform: uppercase;
}
#wheels.search-by-vehicle .products-list .specs .sku, #wheel-brands.search-by-vehicle .products-list .specs .sku, #gallery.search-by-vehicle .products-list .specs .sku {
  color: #999999;
}
#wheels.search-by-vehicle .products-list .price, #wheel-brands.search-by-vehicle .products-list .price, #gallery.search-by-vehicle .products-list .price {
  text-align: left;
  color: #0a0a0a;
  text-transform: uppercase;
}
#wheels.search-by-vehicle .products-list .price .symbol, #wheels.search-by-vehicle .products-list .price .value, #wheel-brands.search-by-vehicle .products-list .price .symbol, #wheel-brands.search-by-vehicle .products-list .price .value, #gallery.search-by-vehicle .products-list .price .symbol, #gallery.search-by-vehicle .products-list .price .value {
  font-weight: 700;
  font-size: 1.25rem;
}
#wheels.search-by-vehicle .products-list .price .set, #wheel-brands.search-by-vehicle .products-list .price .set, #gallery.search-by-vehicle .products-list .price .set {
  font-size: 0.75rem;
  font-weight: 600;
}
#wheels.search-by-vehicle .products-list .price.original-price .symbol, #wheels.search-by-vehicle .products-list .price.original-price .value, #wheel-brands.search-by-vehicle .products-list .price.original-price .symbol, #wheel-brands.search-by-vehicle .products-list .price.original-price .value, #gallery.search-by-vehicle .products-list .price.original-price .symbol, #gallery.search-by-vehicle .products-list .price.original-price .value {
  font-weight: 500;
}
#wheels.search-by-vehicle .products-list .price.original-price .value, #wheel-brands.search-by-vehicle .products-list .price.original-price .value, #gallery.search-by-vehicle .products-list .price.original-price .value {
  text-decoration: line-through;
}
#wheels.search-by-vehicle .products-list .price.sales-price, #wheel-brands.search-by-vehicle .products-list .price.sales-price, #gallery.search-by-vehicle .products-list .price.sales-price {
  color: #eb212e;
}
#wheels.search-by-vehicle .products-list .shipping, #wheel-brands.search-by-vehicle .products-list .shipping, #gallery.search-by-vehicle .products-list .shipping {
  text-transform: uppercase;
  color: #999999;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.05rem;
}
#wheels.search-by-vehicle .pagination, #wheel-brands.search-by-vehicle .pagination, #gallery.search-by-vehicle .pagination {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 3rem;
  padding-bottom: 2rem;
  font-weight: 500;
  text-transform: uppercase;
}
#wheels.search-by-vehicle .pagination .current, #wheel-brands.search-by-vehicle .pagination .current, #gallery.search-by-vehicle .pagination .current {
  background-color: #eb212e;
}
#wheels.search-by-vehicle .financing, #wheel-brands.search-by-vehicle .financing, #gallery.search-by-vehicle .financing {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle .financing, #wheel-brands.search-by-vehicle .financing, #gallery.search-by-vehicle .financing {
    margin-bottom: 4rem;
  }
}
#wheels.search-by-vehicle .brand-information, #wheel-brands.search-by-vehicle .brand-information, #gallery.search-by-vehicle .brand-information {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  #wheels.search-by-vehicle .brand-information, #wheel-brands.search-by-vehicle .brand-information, #gallery.search-by-vehicle .brand-information {
    margin-bottom: 3rem;
  }
}
#wheels.search-by-vehicle .brand-information h5, #wheel-brands.search-by-vehicle .brand-information h5, #gallery.search-by-vehicle .brand-information h5 {
  font-size: 1.8rem;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.2rem;
}
#wheels.search-by-vehicle .brand-information p, #wheel-brands.search-by-vehicle .brand-information p, #gallery.search-by-vehicle .brand-information p {
  font-size: 0.9rem;
  font-weight: 500;
  line-height: 2;
}
#wheels.search-by-vehicle .brand-information .title, #wheel-brands.search-by-vehicle .brand-information .title, #gallery.search-by-vehicle .brand-information .title {
  text-transform: uppercase;
  color: #0a0a0a;
  font-weight: 600;
}
#wheels.search-by-vehicle .brand-information ul, #wheel-brands.search-by-vehicle .brand-information ul, #gallery.search-by-vehicle .brand-information ul {
  margin: 0;
  list-style: none;
}
#wheels.search-by-vehicle .brand-information ul li, #wheel-brands.search-by-vehicle .brand-information ul li, #gallery.search-by-vehicle .brand-information ul li {
  display: inline-block;
}
#wheels.search-by-vehicle.wheels-searched-by-vehicle h3, #wheels.search-by-vehicle.wheels-searched-by-vehicle h4, #wheel-brands.search-by-vehicle.wheels-searched-by-vehicle h3, #wheel-brands.search-by-vehicle.wheels-searched-by-vehicle h4, #gallery.search-by-vehicle.wheels-searched-by-vehicle h3, #gallery.search-by-vehicle.wheels-searched-by-vehicle h4 {
  text-transform: uppercase;
}
#wheels.search-by-vehicle.wheels-searched-by-vehicle h4, #wheel-brands.search-by-vehicle.wheels-searched-by-vehicle h4, #gallery.search-by-vehicle.wheels-searched-by-vehicle h4 {
  font-size: 1.25rem;
}
#wheels.search-by-vehicle.wheels-searched-by-vehicle h4 span, #wheel-brands.search-by-vehicle.wheels-searched-by-vehicle h4 span, #gallery.search-by-vehicle.wheels-searched-by-vehicle h4 span {
  color: #eb212e;
}

.sticky-container .top {
  background-color: #fefefe;
  padding: 1rem 1.25rem;
  padding-bottom: 0;
  position: relative;
}
.sticky-container .listing-search-bar a, .sticky-container .brand-letter-search a {
  width: 46px;
  height: 52px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #f4f4f4;
  color: #666666;
  font-weight: 500;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  .sticky-container .listing-search-bar a, .sticky-container .brand-letter-search a {
    width: 40px;
    height: 40px;
    font-size: 1rem;
  }
}
.sticky-container .listing-search-bar a:hover, .sticky-container .listing-search-bar a.active-letter, .sticky-container .brand-letter-search a:hover, .sticky-container .brand-letter-search a.active-letter {
  background-color: #eb212e;
  color: #fefefe;
}
.sticky-container .listing-search-bar a.disable-letter, .sticky-container .brand-letter-search a.disable-letter {
  pointer-events: none;
  opacity: 0.25;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns {
  padding-left: 0.35rem;
  padding-right: 0.35rem;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:first-child, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:first-child {
  padding-left: 0;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child a, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child a, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:first-child button, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:first-child button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:first-child a, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:first-child a, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:first-child button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:first-child button {
  background-color: #eb212e;
  color: #fefefe;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:last-child, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:last-child {
  padding-right: 0;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:last-child a, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:last-child a, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:last-child button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:last-child button {
  background-color: transparent;
  border: 1px solid #efefef;
  color: #0a0a0a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: left;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child a > div, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child a > div, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .column:last-child button > div, .sticky-container .listing-search-bar .mobile-only-slide-filter-search .row > .columns:last-child button > div, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:last-child a > div, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:last-child a > div, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .column:last-child button > div, .sticky-container .brand-letter-search .mobile-only-slide-filter-search .row > .columns:last-child button > div {
  width: 60%;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search a, .sticky-container .listing-search-bar .mobile-only-slide-filter-search button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search a, .sticky-container .brand-letter-search .mobile-only-slide-filter-search button {
  width: auto;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0;
  padding: 0 1rem;
  margin-bottom: 0;
}
.sticky-container .listing-search-bar .mobile-only-slide-filter-search button, .sticky-container .brand-letter-search .mobile-only-slide-filter-search button {
  width: 100%;
  height: 52px;
}
.sticky-container .main.cta-added {
  -webkit-box-shadow: none;
          box-shadow: none;
  border-bottom: 1px solid #0a0a0a;
}
.sticky-container .content-header {
  background-color: #fefefe;
  -webkit-box-shadow: 0px 5px 15px -5px #0a0a0a;
          box-shadow: 0px 5px 15px -5px #0a0a0a;
}
.sticky-container .content-header h1 {
  font-size: 1.15rem;
  letter-spacing: 0.05rem;
  font-weight: 700;
}

/*
// series title
#wheels {
  padding-top:2rem;
  .series-anchor {
    display: block;
    position: relative;
    top: -200px;
    visibility: hidden;
  }
  .series-logo {
    border-bottom:1px solid $grayA;
    margin-bottom:1rem;
    padding-bottom:.5rem;
    @include breakpoint (medium) {
      margin-bottom:1.5rem;
    }
    img {
      max-width:200px;
    }
  }
  .products-series, .products-series .products-list {
    margin-left:auto;
    margin-right:auto;
  }
}

// wheels listing
#wheels {
  .products-list {
    text-align:center;
    .product-information {
      margin-bottom:1rem;
      color:$gray3;
      text-transform: uppercase;
      @include breakpoint (medium) {
        margin-bottom:2rem;
      }
      @include breakpoint (large) {
        margin-bottom:3rem;
      }
      .wheel-name {
        font-weight:700;
      }
      .wheel-sizes {
        font-size:.9rem;
        font-weight:600;
      }
    }
    &-none {
      text-align:center;
      font-size:1.25rem;
      span {
        font-weight:600;
      }
    }
  }
}

// Fitment
#wheels,#wheel {
  .page-header.fitment-header {
    font-size:1rem;
    @include breakpoint (small only) {
      padding-top:2rem;
    }
    h1 {
      line-height:1;
      font-size:1.85rem;
      font-size:700;
    }
    span {
      @include breakpoint (small only) {
        display:block;
      }
    }
    .fitment-bar-container {
      @include breakpoint (medium) {
        display:flex;
        justify-content: flex-end;
        align-items: center;
      }
    }
    .fitment-bar {
      padding-left:.625rem;
      padding-right:.625rem;
      @include breakpoint (medium) {
        padding-left:.9375rem;
        padding-right:.9375rem;
      }
      &.right {
        @include breakpoint (medium) {
          max-width:300px;
        }
      }
    }
    .fitment-header-info {
      @include breakpoint (medium) {
        display:flex;
        flex-direction: column;
        justify-content: center;
      }
      .vehicle-size {
        font-size:1.35rem;
        font-weight:100;
      }
    }
    .vehicle-display {
      display:flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      @include breakpoint (medium) {
        border-left:1px solid $grayA;
      }
    }
    .vehicle-display {
      text-align: center;
      padding-left:1rem;
      padding-right:1rem;
    }
    .vehicleUpdate {
      padding-left:1rem;
      padding-right:1rem;
    }
    .fitment-change {
      color:$gray5;
      text-transform: uppercase;
      font-weight: 400;
    }
  }
}*/
.tire-details {
  background: #f1f1f1;
  padding: 1rem 1.5rem;
}

.tire-info__header {
  font-size: 1.5rem;
}

.tire-cta .button-group {
  margin: 0;
}
.tire-cta .button-group li {
  margin-top: 1rem;
}
.tire-cta .button-group .button {
  width: 100%;
}

.tire-specs {
  margin-top: 2rem;
}
.tire-specs__header {
  font-size: 1.5rem;
  margin-bottom: 0;
}
.tire-specs__details {
  color: #000;
  margin-left: 0;
  list-style: none;
  font-weight: 600;
}

#tires h2, #tires h3 {
  line-height: 1;
}
#tires h2 {
  color: #333333;
  font-size: 5.5rem;
  margin-bottom: 0;
  letter-spacing: -5px;
}
#tires h3 {
  color: #eb212e;
  font-style: normal;
  text-transform: uppercase;
}
#tires a {
  font-size: 1.15rem;
  color: #666666;
}
#tires .filter-sort {
  margin-bottom: 2rem;
}
#tires .filter-sort .row {
  max-width: 80rem;
}
#tires .filter-sort-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}
#tires .filter-sort .button {
  background-color: #fefefe;
  border: 2px solid #666666;
  color: #666666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 1rem;
  margin-bottom: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  #tires .filter-sort .button {
    width: 220px;
    height: 54px;
  }
}
#tires .filter-sort .button i {
  margin-right: 1rem;
}
#tires .filter-sort .button:hover {
  background-color: #666666;
  color: #fefefe;
}
#tires .filter-sort .divider {
  height: 1px;
  background-color: #cccccc;
  width: 100%;
}
#tires .filter-sort-bottom li {
  display: inline-block;
  margin-right: 1rem;
}
#tires .filter-sort-bottom .button {
  background-color: #f7f7f7;
  width: auto;
  height: auto;
  border: 0;
  margin: 0;
  font-size: 0.8rem;
  font-weight: 600;
}
#tires .filter-sort-bottom .button.active-filter-series {
  background-color: #0a0a0a;
  color: #fefefe;
}
#tires .filter-sort-bottom .button.active-filter-count {
  background-color: transparent;
}
#tires .filter-sort-bottom .button.active-filter-count:hover {
  color: #666666;
}
#tires .filter-sort-bottom .button i {
  margin: 0;
  margin-left: 1rem;
  font-weight: 600;
}
#tires .product-item {
  border-bottom: 1px solid #cccccc;
  padding: 2rem;
  padding-top: 0;
}
@media print, screen and (min-width: 40em) {
  #tires .product-item {
    padding: 1rem 0;
  }
}
#tires .product-item:last-child {
  border-bottom: 0;
}
#tires .product-item > .column, #tires .product-item > .columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#tires .products-list {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #tires .products-list {
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  #tires .products-list .column, #tires .products-list .columns {
    margin-bottom: 2rem;
  }
}
#tires .products-list a {
  color: #0a0a0a;
  font-weight: 500;
  letter-spacing: 0.05rem;
}
#tires .products-list a .hover-item img {
  background-color: #f7f7f7;
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#tires .products-list a .hover-item:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#tires .products-list .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  #tires .products-list .info {
    font-size: 0.85rem;
  }
}
#tires .products-list .info .wheel-name {
  font-weight: 700;
  font-size: 1rem;
}
@media print, screen and (min-width: 40em) {
  #tires .products-list .info .wheel-name {
    font-size: 1.15rem;
  }
}

#accessories h2, #accessories h3 {
  line-height: 1;
}
#accessories h2 {
  color: #333333;
  font-size: 5.5rem;
  margin-bottom: 0;
  letter-spacing: -5px;
}
#accessories h3 {
  color: #eb212e;
  font-style: normal;
  text-transform: uppercase;
}
#accessories a {
  font-size: 1.15rem;
  color: #666666;
}
#accessories .accessory-products {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #accessories .accessory-products {
    margin-bottom: 2rem;
    max-width: none;
  }
}
@media screen and (min-width: 75em) {
  #accessories .accessory-products {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
#accessories .pagination {
  background-color: orange;
}
#accessories .pagination a {
  font-size: 1rem;
  text-transform: uppercase;
}
#accessories .pagination .current {
  background-color: #eb212e;
}
#accessories .filter-sort {
  margin-bottom: 2rem;
}
#accessories .filter-sort .row {
  max-width: 80rem;
}
#accessories .filter-sort-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
}
#accessories .filter-sort .button {
  background-color: #fefefe;
  border: 2px solid #666666;
  color: #666666;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-right: 1rem;
  margin-bottom: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  #accessories .filter-sort .button {
    width: 220px;
    height: 54px;
  }
}
#accessories .filter-sort .button i {
  margin-right: 1rem;
}
#accessories .filter-sort .button:hover {
  background-color: #666666;
  color: #fefefe;
}
#accessories .filter-sort .divider {
  height: 1px;
  background-color: #cccccc;
  width: 100%;
}
#accessories .filter-sort-bottom li {
  display: inline-block;
  margin-right: 1rem;
}
#accessories .filter-sort-bottom .button {
  background-color: #f7f7f7;
  width: auto;
  height: auto;
  border: 0;
  margin: 0;
  font-size: 0.8rem;
  font-weight: 600;
}
#accessories .filter-sort-bottom .button.active-filter-series {
  background-color: #0a0a0a;
  color: #fefefe;
}
#accessories .filter-sort-bottom .button.active-filter-count {
  background-color: transparent;
}
#accessories .filter-sort-bottom .button.active-filter-count:hover {
  color: #666666;
}
#accessories .filter-sort-bottom .button i {
  margin: 0;
  margin-left: 1rem;
  font-weight: 600;
}
#accessories .product-item {
  border-bottom: 1px solid #cccccc;
  padding: 2rem;
  padding-top: 0;
}
@media print, screen and (min-width: 40em) {
  #accessories .product-item {
    padding: 1rem 0;
  }
}
#accessories .product-item:last-child {
  border-bottom: 0;
}
#accessories .product-item > .column, #accessories .product-item > .columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#accessories .accessory-filter .input-group-button > button {
  padding: 0 1rem;
}
#accessories .accessory-filter [type=checkbox]:not(:checked), #accessories .accessory-filter [type=checkbox]:checked {
  position: static;
  opacity: 1;
  pointer-events: visible;
  margin-bottom: 0.5rem;
}
#accessories .accessory-filter form > div {
  margin-bottom: 2rem;
}
#accessories .accessory-filter form > div:first-child {
  margin-bottom: 1rem;
}
#accessories .products-list {
  /*margin-bottom:1rem;
  max-width:80rem;
  @include breakpoint (large) {
    margin-bottom:2rem;
    max-width:none;
  }
  @include breakpoint (xlarge) {
    padding-left:5rem;
    padding-right:5rem;
  }*/
}
#accessories .products-list .column, #accessories .products-list .columns {
  margin-bottom: 0.5rem;
  padding-right: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list .column:nth-child(3n), #accessories .products-list .columns:nth-child(3n) {
    padding-right: 0;
  }
}
#accessories .products-list a {
  color: #0a0a0a;
  font-weight: 400;
  letter-spacing: 0.05rem;
}
#accessories .products-list a .hover-item {
  overflow: hidden;
  background-color: #f7f7f7;
  padding: 1.25rem;
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list a .hover-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media print, screen and (min-width: 40em) {
  #accessories .products-list a .hover-item > div {
    width: 50%;
  }
}
#accessories .products-list a .hover-item img {
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list a .hover-item img {
    width: 100%;
  }
}
#accessories .products-list a .hover-item:hover img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}
#accessories .products-list a .hover-item:hover .finish-logo img {
  -webkit-transform: scale(1);
  transform: scale(1);
}
#accessories .products-list .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 40em) {
  #accessories .products-list .info {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
  }
}
#accessories .products-list .info > div {
  margin-bottom: 0.5rem;
}
#accessories .products-list .info .wheel-name {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-size: 1rem;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  #accessories .products-list .info .wheel-name {
    font-size: 1.75rem;
  }
}
#accessories .products-list .info .accessory-finish {
  text-transform: none;
}
#accessories .products-list .info .finish-logo img {
  max-height: 50px;
  max-width: 160px;
  width: auto;
  padding: 0.5rem 0;
}
#accessories .products-list .other-finishes {
  font-size: 0.85rem;
  text-transform: uppercase;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  z-index: 2;
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list .other-finishes {
    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;
  }
  #accessories .products-list .other-finishes > .other-finish {
    width: 25%;
    margin-right: 6px;
  }
}
#accessories .products-list .other-finishes-container {
  display: grid;
}
#accessories .products-list .other-finishes-container > div {
  grid-column: 1/1;
  grid-row: 1/1;
}
#accessories .products-list .other-finishes-container .more-finishes, #accessories .products-list .other-finishes-container .one-finish {
  text-align: center;
  font-size: 0.85rem;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#accessories .products-list .other-finishes .thumbnail {
  margin-bottom: 0;
  background-color: #f7f7f7;
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 4px;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#accessories .products-list .other-finishes .thumbnail:hover {
  background-color: #cccccc;
}
#accessories .products-list .other-finishes .more-finishes {
  text-align: center;
}

#accessory {
  color: #666666;
}
@media print, screen and (min-width: 40em) {
  #accessory {
    padding-top: 0;
  }
}
#accessory .page-header {
  padding: 0;
  pointer-events: none;
}
@media print, screen and (min-width: 40em) {
  #accessory .page-header {
    max-height: 600px;
    overflow: hidden;
  }
}
#accessory .page-header .flex-video iframe {
  top: -10%;
}
#accessory #detail-top {
  background: -webkit-gradient(linear, left bottom, left top, from(#e7e7e7), color-stop(5%, #e7e7e7), color-stop(20%, transparent), to(transparent));
  background: linear-gradient(0deg, #e7e7e7 0%, #e7e7e7 5%, transparent 20%, transparent 100%);
}
#accessory #detail-top > div {
  padding-top: 1rem;
  padding-bottom: 3rem;
  padding-left: 0.5rem;
  padding-right: 0.5rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 40em) {
  #accessory #detail-top > div {
    padding-top: 3rem;
    padding-left: 0;
    padding-right: 0;
  }
}
#accessory .label {
  text-transform: uppercase;
  background-color: transparent;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: 0.1rem;
  padding: 0;
  margin-bottom: 0.5rem;
}
#accessory .label i {
  color: #eb212e;
}
#accessory .button, #accessory input, #accessory select {
  max-width: 370px;
  width: 100%;
}
#accessory .accessory-title {
  margin-bottom: 2rem;
}
#accessory .accessory-title h2, #accessory .accessory-title p {
  margin-bottom: 0;
}
#accessory .accessory-title h2 {
  font-size: 2.25rem;
  font-weight: 700;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  text-transform: none;
  line-height: 1;
}
#accessory .accessory-title h3, #accessory .accessory-title h4 {
  font-weight: 700;
  font-style: normal;
  line-height: 1;
}
#accessory .accessory-title h3 {
  font-size: 1.5rem;
  letter-spacing: 0.5rem;
}
#accessory .accessory-title h4 {
  font-size: 1.25rem;
  color: #0a0a0a;
  margin-bottom: 0.25rem;
  text-transform: capitalize;
}
#accessory .accessory-title h6 {
  font-weight: 400;
  letter-spacing: 0.15rem;
  font-size: 1.5rem;
  text-transform: uppercase;
}
#accessory .accessory-title p {
  font-style: italic;
  color: #666666;
  font-size: 1.15rem;
}
#accessory .accessory-title .brand {
  margin-bottom: 0.5rem;
}
#accessory .accessory-title .red {
  color: #eb212e;
}
#accessory .accessory-title .divider {
  width: 1px;
  background-color: #cccccc;
  height: 46px;
  margin-left: 1.25rem;
  margin-right: 1.25rem;
}
@media print, screen and (max-width: 39.99875em) {
  #accessory .accessory-title .divider {
    display: none;
  }
}
#accessory .accessory-title .finish .discontinued {
  color: #eb212e;
  text-transform: uppercase;
  margin-top: -1.5rem;
  font-weight: 600;
}
#accessory .accessory-title .price, #accessory .accessory-title .msrp-display {
  font-size: 1.5rem;
  letter-spacing: 0.1rem;
  color: #0a0a0a;
  text-transform: uppercase;
}
#accessory .accessory-title .price span, #accessory .accessory-title .msrp-display span {
  font-size: 0.75rem;
  text-transform: uppercase;
  font-weight: 500;
}
#accessory .accessory-title .price span.msrp-pricing, #accessory .accessory-title .msrp-display span.msrp-pricing {
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.1rem;
  position: relative;
  display: inline-block;
}
#accessory .accessory-title .price span.msrp-pricing:before, #accessory .accessory-title .msrp-display span.msrp-pricing:before {
  content: "";
  width: 100%;
  position: absolute;
  right: 0;
  top: 45%;
  border-bottom: 2px solid #eb212e;
  -webkit-transform: skewY(10deg);
  transform: skewY(10deg);
}
#accessory .accessory-title .msrp-display {
  display: none;
}
#accessory .cart {
  color: #666666;
  margin-bottom: 2rem;
}
#accessory .cart .product {
  margin-bottom: 2rem;
}
#accessory .cart .product.sku-product {
  border-bottom: 1px solid #cccccc;
}
#accessory .cart .product #product-select {
  background-position: right 0.5rem center;
  padding: 1rem;
  height: auto;
  border-radius: 3px;
  font-weight: 700;
  letter-spacing: 0.1rem;
  font-size: 0.8rem;
}
#accessory .cart .product .product-sku {
  color: #0a0a0a;
  font-weight: 500;
}
#accessory .cart .product .label.sku-information {
  padding-bottom: 0.5rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
#accessory .cart .product .label.sku-label {
  width: 100%;
  margin-bottom: 1rem;
}
#accessory .cart .fitment-selected {
  max-width: 400px;
}
#accessory .cart .fitment-selected .vehicle {
  line-height: 1.5;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  font-size: 0.85rem;
}
#accessory .cart .fitment-selected .vehicle span {
  text-align: left;
}
#accessory .cart .fitment-selected .vehicle .button {
  background: transparent;
  color: #333333;
  margin-bottom: 0;
  font-weight: 500;
  border: 1px solid #eeeeee;
}
#accessory .cart .fitment-selected .vehicle .button.fitment-open {
  width: 100%;
  text-align: left;
  border-right: 0;
}
#accessory .cart .fitment-selected .vehicle .button.fitment-open:hover {
  background-color: #cccccc;
}
#accessory .cart .fitment-selected .vehicle .button.fitment-open:hover span {
  text-decoration: underline;
}
#accessory .cart .fitment-selected .vehicle .button.fitmentClear3:hover {
  background-color: #eb212e;
  color: #fefefe;
}
#accessory .cart .fitment-selected .vehicle a {
  display: block;
}
#accessory .cart .fitment-selected .vehicle p {
  margin-bottom: 0;
}
#accessory .cart .fitment-selected .vehicle .remove-fitment {
  text-decoration: underline;
  margin-bottom: 1.5rem;
}
#accessory .cart .fitment-selected .vehicle .vov-link {
  background-color: #333333;
  color: #fefefe;
  padding: 1rem 2rem;
  border-radius: 50px;
  display: inline-block;
  text-transform: uppercase;
  font-size: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  #accessory .cart .fitment-selected .vehicle .vov-link {
    max-width: 260px;
  }
}
#accessory .cart .fitment-selected .vehicle .vov-link i {
  margin-right: 1rem;
  font-size: 2.25rem;
}
#accessory .cart .pricing-section {
  max-width: 370px;
}
#accessory .cart .pricing-section.sku-pricing-section {
  display: block !important;
}
#accessory .cart .pricing-section .top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 1rem;
}
#accessory .cart .pricing-section .top .quantity input {
  max-width: 80px;
  margin-bottom: 0;
  padding: 1rem;
  height: auto;
  border-radius: 3px;
}
#accessory .cart .pricing-section .top .pricing {
  font-size: 1.75rem;
  font-weight: 700;
  letter-spacing: 0.15rem;
  text-transform: uppercase;
  color: #0a0a0a;
  line-height: 1.25;
}
#accessory .cart .pricing-section .bottom .button {
  width: 100%;
  background-color: #eb212e;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
}
#accessory .cart .pricing-section .bottom .button:hover {
  background-color: #0a0a0a;
}
#accessory .accessory-wheels a {
  text-align: center;
  color: #0a0a0a;
}
#accessory .accessory-wheels a:hover {
  color: #eb212e;
}

.accessory-cta .cta-buttons {
  margin: 0;
  list-style: none;
}
.accessory-cta .cta-buttons__btn {
  width: 100%;
  margin-top: 1rem;
}

.accessory-bar-btn {
  margin: 0;
  background-color: #fff;
  border: 2px solid #eb212e;
  color: #eb212e;
  -webkit-box-shadow: 1px 1px #999;
          box-shadow: 1px 1px #999;
}
.accessory-bar-btn:hover {
  -webkit-box-shadow: none;
          box-shadow: none;
}

#gallery-filter {
  margin-bottom: 1rem;
}
#gallery-filter .accordion-title {
  font-size: 1.1rem;
  color: #eb212e;
}
#gallery-filter .accordion-title::before {
  left: auto;
}
#gallery-filter select {
  padding-left: 0.5rem;
  background-position: right center;
}

#gallery .page-header {
  position: relative;
}
@media print, screen and (min-width: 64em) {
  #gallery .page-header {
    height: 400px;
  }
  #gallery .page-header .section-content, #gallery .page-header .section-content-background {
    height: 400px;
  }
}
#gallery .page-header h1, #gallery .page-header h4 {
  color: #fefefe;
}
#gallery .page-header h1 {
  font-weight: 900;
  font-size: 2.75rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #gallery .page-header h1 {
    font-size: 5.25rem;
    letter-spacing: 0.25rem;
  }
}
#gallery .page-header h4 {
  font-weight: 400;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery .page-header h4 {
    font-size: 1.45rem;
  }
}
#gallery .page-header .section-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.4);
  height: 400px;
}
#gallery .page-header .section-content-background {
  text-align: center;
  background-position: center;
  background-size: cover;
  height: 400px;
}
#gallery #gallery-header .gallery-menu {
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery #gallery-header .gallery-menu {
    padding: 2rem 3rem;
  }
}
#gallery #gallery-header .gallery-menu ul {
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.125rem;
}
#gallery #gallery-header .gallery-menu ul li {
  margin-right: 2rem;
}
#gallery #gallery-header .gallery-menu ul li button {
  text-transform: capitalize;
}
#gallery #gallery-header .gallery-menu ul li i {
  margin-right: 0.5rem;
}
#gallery #gallery-header .gallery-filter-display, #gallery #gallery-header .gallery-search-display {
  background-color: #f7f7f7;
  padding: 1rem;
  display: none;
}
@media print, screen and (min-width: 64em) {
  #gallery #gallery-header .gallery-filter-display, #gallery #gallery-header .gallery-search-display {
    padding: 2rem 3rem;
  }
}
#gallery #gallery-header .gallery-filter-display .toggle-gallery, #gallery #gallery-header .gallery-search-display .toggle-gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-bottom: 1rem;
}
#gallery #gallery-header .gallery-filter-display .toggle-gallery button, #gallery #gallery-header .gallery-search-display .toggle-gallery button {
  text-transform: uppercase;
  font-size: 0.9rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#gallery #gallery-header .gallery-filter-display .toggle-gallery button i, #gallery #gallery-header .gallery-search-display .toggle-gallery button i {
  font-size: 1.5rem;
  margin-left: 0.5rem;
}
#gallery #gallery-header .gallery-filter-display .accordion {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery #gallery-header .gallery-filter-display .accordion {
    margin-bottom: 0;
  }
}
#gallery #gallery-header .gallery-filter-display .accordion-title {
  font-family: "Roboto", sans-serif;
  font-size: 1rem;
  color: #666666;
}
#gallery #gallery-header .gallery-filter-display .accordion-item {
  background-color: #f7f7f7;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery #gallery-header .gallery-filter-display .accordion-item {
    margin-bottom: 0;
  }
}
#gallery #gallery-header .gallery-filter-display #gallery-search {
  background-color: transparent;
  border: 0;
}
#gallery #gallery-header .gallery-filter-display .search-selector select {
  display: block;
}
#gallery #gallery-header .gallery-filter-display #page-filters .button {
  border-radius: unset;
  padding: 1.25rem 1.5rem;
  border: 0;
}
#gallery #gallery-header .gallery-search-display form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  #gallery #gallery-header .gallery-search-display form {
    max-width: 50%;
  }
}
#gallery #gallery-header .gallery-search-display input {
  text-transform: uppercase;
  background-color: white;
  padding: 0 1rem;
  border: 1px solid #9e9e9e;
}
#gallery #gallery-header .gallery-search-display button {
  margin-left: 1rem;
}
#gallery .slick-arrow {
  z-index: 1;
  width: 75px;
  height: 75px;
}
#gallery .slick-arrow:before {
  content: "";
}
#gallery .slick-arrow.slick-prev {
  left: 15%;
}
#gallery .slick-arrow.slick-next {
  right: 15%;
}
#gallery .slick-dots {
  position: static;
  line-height: 1;
}
#gallery .slick-dots li button {
  border-radius: 50px;
  background-color: #0a0a0a;
  width: 10px;
  height: 10px;
  margin: 0 auto;
}
#gallery .slick-dots li button:before {
  content: "";
}
#gallery .slick-dots li.slick-active button {
  background-color: #eb212e;
}
#gallery .slick-slide img {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  #gallery .gallery-list {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
#gallery .gallery-list .photo, #gallery .gallery-list .video {
  display: block;
  padding: 1rem;
  margin-bottom: 1rem;
}
#gallery .gallery-list .photo:hover, #gallery .gallery-list .video:hover {
  background-color: #ededed;
}
#gallery .gallery-list .photo-image-container {
  background-size: cover;
  background-position: center;
  padding-bottom: 5rem;
  margin-bottom: 1.5rem;
}
@media print, screen and (min-width: 64em) {
  #gallery .gallery-list .photo-image-container {
    padding-bottom: 16rem;
  }
}
#gallery .gallery-list .photo-image-container img {
  opacity: 0;
  max-height: 216px;
}
#gallery .gallery-list .photo-information {
  text-align: left;
  text-transform: uppercase;
  color: #0a0a0a;
  line-height: 1;
}
#gallery .gallery-list .photo-information .vehicle {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
}
#gallery .gallery-list .photo-information .divider {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
#gallery .gallery-list .photo-information .specs {
  font-size: 0.8rem;
}
#gallery .hover-list > div {
  color: #0a0a0a;
  text-align: center;
}
#gallery .hover-list .photo, #gallery .hover-list .video {
  display: block;
}
#gallery .hover-list .photo, #gallery .hover-list .video {
  /*
  position: relative;
     padding: 0 1px 1px 0;
     padding-left:1rem;
     padding-right:1rem;
     */
  /*
  &:before {
  	position: absolute;
  	z-index: 1;
  	display: block;
  	width: 100%;
  	height: 100%;
  	content: '';
  	-webkit-transition-timing-function: linear;
  	transition-timing-function: linear;
  	-webkit-transition-duration: .3s;
  	transition-duration: .3s;
  	-webkit-transition-property: all;
  	transition-property: all;
  	background: rgba(248, 200, 77, 0);
  }
  &:after {
  	font-size: 1.1rem;
  	position: absolute;
  	z-index: 2;
  	top: 50%;
  	display: block;
  	width: 90%;
  	margin: -1em 5% 0;
  	padding-bottom: 2em;
  	content: attr(title);
  	-webkit-transition-timing-function: linear;
  	transition-timing-function: linear;
  	-webkit-transition-duration: .2s;
  	transition-duration: .2s;
  	-webkit-transition-property: all;
  	transition-property: all;
  	text-align: center;
  	letter-spacing: 1px;
  	text-transform: uppercase;
  	opacity: 0;
  	color: $white;
  	filter: alpha(opacity=0);
  }
  &:hover:before {
  	background: rgba(0, 163, 224, .7);
  }
  &:hover:after {
  	opacity: 1;
  }*/
}
#gallery .hover-list .video:after {
  font-weight: 300;
  color: #fefefe;
}
#gallery .hover-list .gallery-item-vehicle, #gallery .hover-list .gallery-item-wheel {
  line-height: 1;
}
#gallery .hover-list .gallery-item-vehicle {
  font-family: "Teko", sans-serif;
  text-transform: uppercase;
}
#gallery .hover-list .bg-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 75%;
}
#gallery .navigation {
  text-align: center;
}

#gallery-vehicle .page-header {
  color: #0a0a0a;
  text-align: center;
  padding-top: 1.5rem;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle .page-header {
    padding-top: 3rem;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
}
#gallery-vehicle .page-header h1, #gallery-vehicle .page-header h3 {
  line-height: 1;
}
#gallery-vehicle .page-header h1 {
  margin-bottom: 0;
  color: #0a0a0a;
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle .page-header h1 {
    font-size: 3rem;
    font-weight: 600;
  }
}
#gallery-vehicle .page-header h3 {
  font-family: "Roboto", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
}
#gallery-vehicle .page-header h4 {
  color: #0a0a0a;
  font-weight: 400;
  text-transform: none;
}
#gallery-vehicle .slick-prev, #gallery-vehicle .slick-next {
  width: 50px;
  height: 50px;
  z-index: 1;
  color: #333333;
  font-size: 3rem;
}
#gallery-vehicle .slick-prev:before, #gallery-vehicle .slick-next:before {
  content: "";
}
#gallery-vehicle .slick-next {
  right: -6%;
}
@media print, screen and (max-width: 63.99875em) {
  #gallery-vehicle .slick-next {
    right: 5px;
    width: 25px;
    height: 25px;
  }
}
#gallery-vehicle .slick-prev {
  left: -6%;
}
@media print, screen and (max-width: 63.99875em) {
  #gallery-vehicle .slick-prev {
    left: 5px;
    width: 25px;
    height: 25px;
  }
}
#gallery-vehicle .slick-slide {
  padding: 1px;
}

.gallery-title {
  font-size: 2rem;
  margin: 0;
}
.gallery-main-img {
  margin-bottom: 5px;
}
.gallery-main-img img {
  width: 100%;
}
.gallery-thumbs.slick-dotted.slick-slider {
  margin-bottom: 0rem;
}
.gallery-thumbs.slick-dotted.slick-slider .slick-dots {
  bottom: 0 !important;
  position: relative;
  margin: 0;
}
.gallery-details {
  margin-bottom: 2rem;
}

@media print, screen and (min-width: 64em) {
  #gallery-vehicle #gallery-top {
    margin-bottom: 1rem;
  }
}
#gallery-vehicle #gallery-top .slick-track {
  margin-left: 0;
}
#gallery-vehicle #gallery-details {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle #gallery-details {
    margin-bottom: 4rem;
  }
}
#gallery-vehicle #gallery-specs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#gallery-vehicle #gallery-specs .left img {
  margin-right: 1rem;
}
#gallery-vehicle #gallery-specs .right span {
  font-size: 1rem;
  font-weight: 600;
  text-transform: uppercase;
}

#gallery-vehicle .gallery-nav {
  border-top: 1px solid #cccccc;
  padding: 4rem 0 2rem;
}
#gallery-vehicle .gallery-nav .button {
  background-color: #fefefe;
  color: #0a0a0a;
}
#gallery-vehicle .gallery-nav .button:hover {
  background-color: #0a0a0a;
  color: #fefefe;
}
#gallery-vehicle .gallery-nav .button.not-found {
  background-color: #aaaaaa;
  color: #fefefe;
  border-color: #aaaaaa;
  pointer-events: none;
}
#gallery-vehicle .gallery-nav .row {
  max-width: 75rem;
}
#gallery-vehicle .gallery-nav .row .column:nth-child(2) .button, #gallery-vehicle .gallery-nav .row .columns:nth-child(2) .button {
  background-color: #cccccc;
  border-color: #cccccc;
}
#gallery-vehicle .gallery-nav .row .column:nth-child(2) .button:hover, #gallery-vehicle .gallery-nav .row .columns:nth-child(2) .button:hover {
  background-color: #0a0a0a;
  border-color: #0a0a0a;
  color: #fefefe;
}

@media screen and (min-width: 1200px) {
  #contact .page-header .background-image, #thanks .page-header .background-image {
    background-size: 160%;
  }
}

#contact p,
#thanks p,
#contact li,
#thanks li,
#gallery p,
#gallery li {
  font-weight: 400;
  padding-top: 0px;
}

#contact h3,
#thanks h3,
#gallery h3 {
  font-size: 2rem;
  margin-bottom: 0px;
}

#contact h1 {
  text-transform: uppercase;
}

#contact p.red {
  color: #eb212e;
  font-size: 1rem;
  font-weight: 600;
}

#form-right {
  color: #0a0a0a;
}
#form-right li {
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
}
#form-right .fa {
  font-size: 2.25rem;
}
#form-right h3 {
  font-size: 1.6rem;
  letter-spacing: -1px;
}
#form-right address {
  margin-bottom: 20px;
}
#form-right .social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 0;
}
#form-right .social i {
  font-size: 2.25rem;
}
#form-right .social li {
  margin-right: 2rem;
}

#contact .location {
  color: #336699;
  font-weight: 500;
  font-size: 1.25rem;
}

#page .page-header {
  margin-bottom: 7rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-header {
    margin-bottom: 9rem;
  }
}
#page .page-header .row {
  width: 100%;
}
#page .page-header .background-image {
  background-attachment: unset;
  background-size: cover;
}
#page .page-header .page-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 60vh;
  background: rgba(0, 0, 0, 0.1);
}
@media print, screen and (min-width: 40em) {
  #page .page-header .page-title {
    height: 30vh;
  }
}
@media print, screen and (min-width: 64em) {
  #page .page-header .page-title {
    height: 50vh;
  }
}
#page .page-header .page-title h1 {
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  color: #fefefe;
  font-size: 3.5rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #page .page-header .page-title h1 {
    font-size: 4.5rem;
  }
}
#page .page-header .page-title h4 {
  color: #fefefe;
  font-weight: 400;
  letter-spacing: 0.25rem;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-header .page-title h4 {
    font-size: 1.5rem;
  }
}
#page .page-content h1, #page .page-content h2, #page .page-content h3, #page .page-content h4, #page .page-content h5, #page .page-content h6 {
  text-transform: capitalize;
  font-style: normal;
  color: #0a0a0a;
  margin-bottom: 0rem;
}
#page .page-content h1 {
  color: #fefefe;
  font-weight: 900;
  font-size: 3.75rem;
  margin-bottom: 1rem;
}
#page .page-content h2 {
  font-size: 1.85rem;
  line-height: 1.2;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content h2 {
    font-size: 2.25rem;
  }
}
#page .page-content h3 {
  font-size: 2.75rem;
}
#page .page-content h4 {
  font-size: 2.15rem;
}
#page .page-content h5 {
  font-size: 1.5rem;
}
#page .page-content p, #page .page-content ul {
  font-size: 1.15rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content p, #page .page-content ul {
    font-size: 1.25rem;
    margin-bottom: 1.5rem;
  }
}
#page .page-content ul {
  margin-left: 2rem;
  list-style: disc;
}
#page .page-content ul > li {
  list-style: disc;
}
#page .page-content .row {
  max-width: 80rem;
}
#page .page-content .page-body-left {
  padding-left: 2rem;
  padding-right: 6rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content .page-body-left {
    padding: 0;
  }
}
#page .page-content .page-body-right {
  padding-left: 6rem;
  padding-right: 2rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content .page-body-right {
    padding: 0;
  }
}

/*
.page-header {
  font-weight: 700;
  background-color:$primary-color;
  padding:0;
  h1 {
    color:$white;
    margin-bottom:0;
  }
  img {
    width:100%;
  }
}

*/
#page .faq-page h3 {
  font-size: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
}
#page .faq-page p {
  font-size: 1.125rem;
}
#page .faq-page ul {
  margin: 0;
}
#page .faq-page ul li {
  list-style: none;
}
#page .faq-page .faq-section {
  margin-bottom: 3rem;
}
#page .faq-page .faq-section .title {
  margin-bottom: 2rem;
}
#page .faq-page .accordion-title, #page .faq-page .accordion-content {
  padding: 1.25rem 1.5rem;
}
#page .faq-page .accordion-title {
  font-size: 1.175rem;
  color: #0a0a0a;
  font-weight: 500;
  line-height: 1.5;
}
#page .faq-page .accordion-title::before {
  margin: 0;
  top: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  content: "⌄";
}
#page .faq-page .is-active > .accordion-title {
  background-color: #f5f5f5;
}
#page .faq-page .is-active > .accordion-title::before {
  content: "⌃";
}

#page .support-page .support-item {
  border: 1px solid #cccccc;
  text-align: center;
  padding: 2rem;
  margin-bottom: 2rem;
}
#page .support-page .support-item > div {
  margin-bottom: 2rem;
}
#page .support-page .support-item > div:last-child {
  margin-bottom: 0;
}
#page .support-page .support-item .title {
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.25rem;
  letter-spacing: 0.05rem;
  color: #0a0a0a;
}
#page .support-page .support-item .logo span {
  font-size: 8rem;
  color: #999999;
  font-weight: 200;
}
#page .support-page .support-item .link .button {
  font-size: 0.875rem;
}

.news-article {
  position: relative;
  overflow: auto;
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid #ccc;
}
.news-article .timestamp {
  font-size: 0.8rem;
  position: absolute;
  top: 0;
  left: 0;
  padding: 0.5rem;
  text-align: center;
  color: #fefefe;
  background: #333;
}
.news-article .timestamp .date {
  font-size: 2.75rem;
  font-weight: 900;
  line-height: 1;
  display: block;
}
.news-article img {
  border-bottom: 5px solid #eb212e;
}
.news-article .news-sidebar {
  padding: 1rem;
  background: #fbfbfb;
}
.news-article .news-sidebar li a {
  color: #505050;
}
.news-article .news-sidebar li a:hover {
  color: #eb212e;
}

.blog .page-header, .news .page-header {
  position: relative;
  height: 400px;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .blog .page-header, .news .page-header {
    height: 400px;
  }
  .blog .page-header .section-content, .blog .page-header .section-content-background, .news .page-header .section-content, .news .page-header .section-content-background {
    height: 400px;
  }
  .blog .page-header, .news .page-header {
    margin-bottom: 6rem;
  }
}
.blog .page-header h1, .blog .page-header h4, .news .page-header h1, .news .page-header h4 {
  color: #fefefe;
}
.blog .page-header h1, .news .page-header h1 {
  font-weight: 900;
  font-size: 2.75rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  .blog .page-header h1, .news .page-header h1 {
    font-size: 5.25rem;
    letter-spacing: 0.25rem;
  }
}
.blog .page-header h4, .news .page-header h4 {
  font-weight: 400;
  font-size: 1rem;
}
@media print, screen and (min-width: 64em) {
  .blog .page-header h4, .news .page-header h4 {
    font-size: 1.45rem;
  }
}
.blog .page-header .section-content, .news .page-header .section-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background: rgba(0, 0, 0, 0.4);
  height: 400px;
}
.blog .page-header .section-content-background, .news .page-header .section-content-background {
  text-align: center;
  background-position: center;
  background-size: cover;
  height: 400px;
}
.blog .blog-entry, .blog .news-entry, .news .blog-entry, .news .news-entry {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .blog .blog-entry, .blog .news-entry, .news .blog-entry, .news .news-entry {
    margin-bottom: 6rem;
  }
}
.blog .blog-entry .blog-img, .blog .blog-entry .news-img, .blog .news-entry .blog-img, .blog .news-entry .news-img, .news .blog-entry .blog-img, .news .blog-entry .news-img, .news .news-entry .blog-img, .news .news-entry .news-img {
  display: block;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .blog .blog-entry .blog-img, .blog .blog-entry .news-img, .blog .news-entry .blog-img, .blog .news-entry .news-img, .news .blog-entry .blog-img, .news .blog-entry .news-img, .news .news-entry .blog-img, .news .news-entry .news-img {
    margin-bottom: 0;
  }
}
.blog .blog-entry .blog-content, .blog .blog-entry .news-content, .blog .news-entry .blog-content, .blog .news-entry .news-content, .news .blog-entry .blog-content, .news .blog-entry .news-content, .news .news-entry .blog-content, .news .news-entry .news-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 64em) {
  .blog .blog-entry .blog-content, .blog .blog-entry .news-content, .blog .news-entry .blog-content, .blog .news-entry .news-content, .news .blog-entry .blog-content, .news .blog-entry .news-content, .news .news-entry .blog-content, .news .news-entry .news-content {
    padding-left: 14%;
  }
}
.blog .blog-entry .blog-content h3, .blog .blog-entry .news-content h3, .blog .news-entry .blog-content h3, .blog .news-entry .news-content h3, .news .blog-entry .blog-content h3, .news .blog-entry .news-content h3, .news .news-entry .blog-content h3, .news .news-entry .news-content h3 {
  line-height: 1;
  font-size: 2rem;
}
@media print, screen and (min-width: 64em) {
  .blog .blog-entry .blog-content h3, .blog .blog-entry .news-content h3, .blog .news-entry .blog-content h3, .blog .news-entry .news-content h3, .news .blog-entry .blog-content h3, .news .blog-entry .news-content h3, .news .news-entry .blog-content h3, .news .news-entry .news-content h3 {
    font-size: 4rem;
  }
}
.blog .blog-entry .blog-content a, .blog .blog-entry .news-content a, .blog .news-entry .blog-content a, .blog .news-entry .news-content a, .news .blog-entry .blog-content a, .news .blog-entry .news-content a, .news .news-entry .blog-content a, .news .news-entry .news-content a {
  color: #0a0a0a;
  font-weight: 600;
}
.blog .blog-entry .blog-content a:hover, .blog .blog-entry .news-content a:hover, .blog .news-entry .blog-content a:hover, .blog .news-entry .news-content a:hover, .news .blog-entry .blog-content a:hover, .news .blog-entry .news-content a:hover, .news .news-entry .blog-content a:hover, .news .news-entry .news-content a:hover {
  color: #eb212e;
}
.blog .blog-entry .blog-content .blog-description, .blog .blog-entry .blog-content .news-description, .blog .blog-entry .news-content .blog-description, .blog .blog-entry .news-content .news-description, .blog .news-entry .blog-content .blog-description, .blog .news-entry .blog-content .news-description, .blog .news-entry .news-content .blog-description, .blog .news-entry .news-content .news-description, .news .blog-entry .blog-content .blog-description, .news .blog-entry .blog-content .news-description, .news .blog-entry .news-content .blog-description, .news .blog-entry .news-content .news-description, .news .news-entry .blog-content .blog-description, .news .news-entry .blog-content .news-description, .news .news-entry .news-content .blog-description, .news .news-entry .news-content .news-description {
  font-size: 1.125rem;
  font-weight: 300;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .blog .blog-entry .blog-content .blog-description, .blog .blog-entry .blog-content .news-description, .blog .blog-entry .news-content .blog-description, .blog .blog-entry .news-content .news-description, .blog .news-entry .blog-content .blog-description, .blog .news-entry .blog-content .news-description, .blog .news-entry .news-content .blog-description, .blog .news-entry .news-content .news-description, .news .blog-entry .blog-content .blog-description, .news .blog-entry .blog-content .news-description, .news .blog-entry .news-content .blog-description, .news .blog-entry .news-content .news-description, .news .news-entry .blog-content .blog-description, .news .news-entry .blog-content .news-description, .news .news-entry .news-content .blog-description, .news .news-entry .news-content .news-description {
    font-size: 1.25rem;
    margin-bottom: 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .blog .blog-content-left .blog-content, .blog .blog-content-left .news-content, .blog .news-content-left .blog-content, .blog .news-content-left .news-content, .news .blog-content-left .blog-content, .news .blog-content-left .news-content, .news .news-content-left .blog-content, .news .news-content-left .news-content {
    padding-left: 10%;
    padding-right: 5%;
  }
}
.blog .pagination, .news .pagination {
  text-align: center;
}
.blog .pagination .current, .news .pagination .current {
  background-color: #eb212e;
}

.blog-details #article-gal-main-image, .news-details #article-gal-main-image {
  margin-bottom: 0.5rem;
}
.blog-details #article-gal-main-image .slick-slide img, .news-details #article-gal-main-image .slick-slide img {
  margin: 0 auto;
}
.blog-details #article-gal-thumbs, .news-details #article-gal-thumbs {
  position: relative;
}
.blog-details .gal-thumbs-arrow, .news-details .gal-thumbs-arrow {
  position: absolute;
  top: 45%;
}
.blog-details .gal-thumbs-arrow.gal-thumbs-prev, .news-details .gal-thumbs-arrow.gal-thumbs-prev {
  left: -20px;
}
@media print, screen and (min-width: 64em) {
  .blog-details .gal-thumbs-arrow.gal-thumbs-prev, .news-details .gal-thumbs-arrow.gal-thumbs-prev {
    left: -70px;
  }
}
.blog-details .gal-thumbs-arrow.gal-thumbs-next, .news-details .gal-thumbs-arrow.gal-thumbs-next {
  right: -30px;
}
@media print, screen and (min-width: 64em) {
  .blog-details .gal-thumbs-arrow.gal-thumbs-next, .news-details .gal-thumbs-arrow.gal-thumbs-next {
    right: -70px;
  }
}
.blog-details .gal-thumbs-arrow .material-symbols-outlined, .news-details .gal-thumbs-arrow .material-symbols-outlined {
  font-size: 2rem;
}
@media print, screen and (min-width: 64em) {
  .blog-details .gal-thumbs-arrow .material-symbols-outlined, .news-details .gal-thumbs-arrow .material-symbols-outlined {
    font-size: 3rem;
  }
}
.blog-details #article-gal-thumbs, .news-details #article-gal-thumbs {
  width: 85%;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  .blog-details #article-gal-thumbs, .news-details #article-gal-thumbs {
    width: 100%;
  }
}
.blog-details #article-gal-thumbs .slick-slide, .news-details #article-gal-thumbs .slick-slide {
  max-height: 160px;
}
@media print, screen and (min-width: 64em) {
  .blog-details #article-gal-thumbs .slick-slide, .news-details #article-gal-thumbs .slick-slide {
    max-height: 180px;
  }
}
.blog-details #article-gal-thumbs .item, .news-details #article-gal-thumbs .item {
  grid-column-end: span 1;
  padding: 0.5rem;
}
.blog-details #article-gal-thumbs a, .news-details #article-gal-thumbs a {
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden;
  height: 180px;
  background-size: cover;
  background-position: center;
}
.blog-details #article-gal-thumbs a:after, .news-details #article-gal-thumbs a:after {
  content: "";
  position: absolute;
  background-color: #0a0a0a;
  opacity: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.blog-details #article-gal-thumbs a:hover:after, .news-details #article-gal-thumbs a:hover:after {
  opacity: 0.5;
}
.blog-details #article-gal-thumbs a img, .news-details #article-gal-thumbs a img {
  opacity: 0;
}
.blog-details .article-nav, .news-details .article-nav {
  border-top: 1px solid #cccccc;
}
@media print, screen and (min-width: 64em) {
  .blog-details .article-nav, .news-details .article-nav {
    padding-top: 5rem;
  }
}
.blog-details .article-nav a, .news-details .article-nav a {
  border-color: #0a0a0a;
  background-color: #fefefe;
  color: #0a0a0a;
}
@media print, screen and (max-width: 39.99875em) {
  .blog-details .article-nav a, .news-details .article-nav a {
    width: 100%;
  }
}
.blog-details .article-nav a:hover, .news-details .article-nav a:hover {
  color: #fefefe;
  background-color: #0a0a0a;
}
.blog-details .article-nav a.not-found, .news-details .article-nav a.not-found {
  background-color: #999999;
  color: #cccccc;
  pointer-events: none;
  border-color: #999999;
}
.blog-details .article-nav .text-center a, .news-details .article-nav .text-center a {
  background-color: #cccccc;
  color: #0a0a0a;
  border-color: #cccccc;
}
.blog-details .article-nav .text-center a:hover, .news-details .article-nav .text-center a:hover {
  color: #fefefe;
  background-color: #0a0a0a;
  border-color: #0a0a0a;
}

#about {
  color: #0a0a0a;
  text-transform: uppercase;
}
#about h2 {
  font-size: 3rem;
}
@media print, screen and (min-width: 64em) {
  #about h2 {
    font-size: 4rem;
  }
}
#about p {
  text-transform: none;
}
#about .page-header {
  text-align: center;
}
#about .page-content .about-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1rem;
  height: 100%;
}
@media print, screen and (min-width: 64em) {
  #about .page-content .about-content {
    padding: 3rem;
  }
}
#about .animated {
  visibility: hidden;
}

#dealers h1 {
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #dealers h1 {
    font-size: 2.25rem;
  }
}
#dealers h2 {
  font-size: 1.5rem;
  margin-bottom: 0;
}
#dealers-middle {
  line-height: 1.5;
}
#dealers .page-content {
  margin-bottom: 4rem;
}
#dealers .page-content .row {
  max-width: 80rem;
}
#dealers .page-content .row .row {
  margin-left: 0;
  margin-right: 0;
}
#dealers .input-group {
  max-width: 300px;
  margin: 0 auto;
}
#dealers .input-group input {
  text-align: center;
}
#dealers hr {
  margin-top: 4rem;
  margin-bottom: 4rem;
}
#dealers .left {
  border-right: 1px solid #cccccc;
}
@media print, screen and (min-width: 64em) {
  #dealers .left {
    padding-right: 4rem;
  }
}
#dealers .right {
  float: none !important;
  clear: both;
}
@media print, screen and (min-width: 64em) {
  #dealers .right {
    padding-left: 4rem;
  }
}
#dealers.become-dealer select {
  display: block;
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.rma-form-page {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.rma-form-page .page-title {
    margin-bottom: 0;
  }
}
#dealers.rma-form-page h1 {
  font-weight: 600;
}
@media print, screen and (min-width: 64em) {
  #dealers.rma-form-page h1 {
    font-size: 2.5rem;
  }
}
#dealers.rma-form-page .page-header .title {
  margin-bottom: 2rem;
}
#dealers.rma-form-page .page-header p {
  max-width: none;
  font-size: 1rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 64em) {
  #dealers.rma-form-page .page-header p {
    font-size: 1.25rem;
  }
}
#dealers.rma-form-page label {
  text-transform: capitalize;
}
#dealers.rma-form-page select {
  display: block;
  line-height: 1.5;
  height: 3rem;
}
#dealers.rma-form-page input:not(.button) {
  border: 1px solid #cacaca;
  padding: 0 0.5rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
#dealers.rma-form-page input:not(.button).media-field {
  padding: 0;
  border: 0;
}
#dealers.rma-form-page .divider {
  margin-top: 2rem;
  margin-bottom: 3rem;
}
#dealers.rma-form-page .policy p {
  font-size: 0.8rem;
}
#dealers.dealer-locator h1 {
  text-transform: uppercase;
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.dealer-locator .location-header > .row {
    margin-bottom: 0;
  }
}
#dealers.dealer-locator #icm_locations .dealer-locator-header {
  display: none;
}
#dealers.dealer-locator #icm_locations .button {
  margin-bottom: 0;
}
#dealers.dealer-locator #icm_locations .hours {
  display: none;
}
#dealers.dealer-locator #icm_locations h3 {
  font-size: 0.9rem;
  font-weight: 700;
}
#dealers.dealer-locator #icm_locations h3 a {
  font-weight: 700;
}
#dealers.dealer-locator #icm_locations .gm-style-iw.gm-style-iw-c {
  max-width: 300px;
}
#dealers.dealer-locator #icm_locations .gm-style-iw-d span {
  display: block;
  margin-bottom: 1rem;
}
#dealers.dealer-locator #icm_locations .locator-cta-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.dealer-locator #icm_locations .search-field {
    padding: 0.5rem 0.75rem;
  }
}
#dealers.dealer-locator #icm_locations .search-field input {
  height: auto;
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.dealer-locator #icm_locations .search-field .input-field {
    margin: 0.25rem 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.dealer-locator #icm_locations .locator-listing {
    padding: 0.75rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #dealers.dealer-locator #icm_locations .location {
    padding: 0.75rem;
  }
}

#fitment-guide {
  color: #0a0a0a;
  text-transform: uppercase;
}
#fitment-guide h2 {
  font-size: 3rem;
}
@media print, screen and (min-width: 64em) {
  #fitment-guide h2 {
    font-size: 4rem;
  }
}
#fitment-guide p {
  text-transform: none;
}
#fitment-guide .page-header {
  text-align: center;
}
#fitment-guide .page-content .about-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 1rem;
  height: 100%;
}
@media print, screen and (min-width: 64em) {
  #fitment-guide .page-content .about-content {
    padding: 3rem;
  }
}
#fitment-guide .animated {
  visibility: hidden;
}
@media print, screen and (min-width: 40em) {
  #fitment-guide .fitment-container {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (min-width: 64em) {
  #fitment-guide .fitment-container {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}
#fitment-guide .fitment-container .inner-container, #fitment-guide .fitment-container .head, #fitment-guide .fitment-container .content, #fitment-guide .fitment-container #app {
  margin-bottom: 2rem;
}
#fitment-guide .fitment-container .inner-container {
  border: 1px solid #cccccc;
}
#fitment-guide .fitment-container .head, #fitment-guide .fitment-container .info {
  text-align: center;
}
#fitment-guide .fitment-container .head p, #fitment-guide .fitment-container .info p {
  font-size: 1.25rem;
}
#fitment-guide .fitment-container .head {
  background-color: #ededed;
  padding-top: 1.625rem;
  padding-bottom: 1.625rem;
}
#fitment-guide .fitment-container .head p {
  margin-bottom: 0;
}
#fitment-guide .fitment-container .content #app, #fitment-guide .fitment-container .content #fitment-vehicle-select {
  max-width: 360px;
  margin: 0 auto;
}
#fitment-guide .fitment-container .content .info {
  padding: 1.5rem;
}
#fitment-guide .fitment-container .foot p {
  font-size: 0.8125rem;
}

#error-page .page-content {
  background-image: url("/images/utility/error-bg (2).png");
  background-position: center 5%;
  background-repeat: no-repeat;
  background-size: 60%;
  padding: 75px;
  margin-top: 75px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 64em) {
  #error-page .page-content {
    height: 300px;
  }
}
#error-page .page-content {
  height: 440px;
  margin-bottom: 10rem;
}
#error-page .page-content h3 {
  font-size: 3rem;
  font-weight: 1000;
  color: #e82c39;
  margin-top: 3rem;
}
#error-page .page-content p {
  font-weight: 400;
  margin-bottom: -6rem;
  color: black;
  font-size: 1.1rem;
}
#error-page .page-content p a {
  font-weight: 700;
}
#error-page .page-content #return-home {
  margin-top: 9rem;
  padding-top: 11rem;
}
#error-page.coming-soon .page-content {
  background: transparent;
}

#downloads .downloads-section {
  padding: 2rem 0 4rem;
}
#downloads .button {
  background-color: #0a0a0a;
  color: #fefefe;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  padding: 1rem;
  border-radius: 50px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 0.5rem 1.25rem;
  width: auto;
  text-transform: none;
  font-size: 0.85rem;
  max-width: none;
}
#downloads .button:hover {
  background-color: #eb212e;
}
#downloads .button span {
  margin-right: 0.25rem;
}
#downloads .downloads-section-brands .content-list .brand-item {
  border: 1px solid #e6e6e6;
  padding: 1rem;
  text-transform: uppercase;
  font-size: 0.875rem;
  text-align: center;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #downloads .downloads-section-brands .content-list .brand-item {
    padding: 2rem;
    margin-bottom: 2rem;
  }
}
#downloads .downloads-section-brands .content-list .brand-item p {
  margin-bottom: 0;
}
#downloads .downloads-section-brands .content-list .brand-item .logo, #downloads .downloads-section-brands .content-list .brand-item .excerpt {
  margin-bottom: 1rem;
}
#downloads .downloads-section-brands .content-list .brand-item .break {
  width: 100%;
  height: 1px;
  background-color: #e6e6e6;
  margin: 1rem 0;
}
#downloads .downloads-section-assets .return a {
  color: #0a0a0a;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#downloads .downloads-section-assets .return span {
  color: #eb212e;
  margin-right: 0.5rem;
}
#downloads .downloads-section-assets .content-header {
  text-align: center;
}
#downloads .downloads-section-assets .content-header .image {
  margin-bottom: 2rem;
}
#downloads .downloads-section-assets .content-header img {
  max-height: 200px;
}
#downloads .downloads-section-assets .content-list-assets {
  text-align: center;
}
#downloads .downloads-section-assets .content-list-assets a {
  display: block;
  color: #0a0a0a;
  margin-bottom: 1rem;
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  #downloads .downloads-section-assets .content-list-assets a {
    margin-bottom: 2rem;
  }
}
#downloads .downloads-section-assets .content-list-assets .wheel-name {
  font-weight: 600;
}
#downloads .downloads-section-assets .content-list-assets .wheel-finish {
  font-size: 0.825rem;
}

.packaging {
  background-color: #F5F5F5;
  margin: 20px auto;
  max-width: 800px;
  padding: 20px;
  position: relative;
  width: auto;
}
.packaging .popup_header {
  font-size: 1.2rem;
}
.packaging .button-group {
  margin-bottom: 0;
  overflow: auto;
}
.packaging .returnTxt {
  font-size: 1.6rem;
  margin-top: 1rem;
}

.accessory-container {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .accessory-container {
    border-bottom: 1px solid #ccc;
  }
}
.accessory-container__left {
  border-right: 1px solid #ccc;
}

.accessory-popup {
  max-width: 425px;
  padding: 0 0 10px;
  text-align: center;
}
.accessory-popup--wide {
  max-width: 850px;
}
.accessory-popup__header {
  padding-top: 10px;
  border-bottom: 3px solid #ccc;
  background-color: #f2f2f2;
  color: #eb212e;
  font-size: 1.5rem;
  font-weight: bold;
}
.accessory-popup__item {
  width: 90%;
  margin: 0 auto 10px;
  padding-bottom: 15px;
  text-align: left;
}
.accessory-popup__item--border:not(:last-child) {
  border-bottom: 1px solid #ccc;
}
@media print, screen and (max-width: 39.99875em) {
  .accessory-popup__item {
    border-bottom: 1px solid #ccc;
  }
}
.accessory-popup__item .input {
  margin: 0 20px;
}
.accessory-popup__item .input--right {
  margin: 0;
}
.accessory-popup__item .img {
  max-width: 100px;
}
@media print, screen and (max-width: 39.99875em) {
  .accessory-popup__item .img {
    max-width: 90px;
  }
}
.accessory-popup__item .img--lrg {
  max-width: 50%;
  margin-bottom: 1rem;
}
@media print, screen and (max-width: 39.99875em) {
  .accessory-popup .title {
    font-size: 0.8rem;
  }
}
.accessory-popup .title--right {
  display: block;
  text-align: center;
  line-height: 1.2;
}
.accessory-popup__link {
  display: inline-block;
  color: #eb212e;
  cursor: pointer;
  font-size: 100%;
}
.accessory-popup__link:hover {
  text-decoration: underline;
}

.accessory-popup--right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.accessory-popup--right .input {
  margin: 0;
}
.accessory-popup--right .content {
  padding: 0 2rem;
}
.accessory-popup--right .subtext {
  color: #eb212e;
  display: block;
  margin-bottom: 1rem;
}

.gallery-quote-popup__header {
  font-size: 1.7rem;
}
.gallery-quote-popup__txt {
  font-size: 0.95rem;
  font-weight: 400;
  margin-bottom: 0.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .gallery-quote-popup__txt {
    line-height: 1.2;
  }
}
.gallery-quote-popup__note {
  font-size: 0.8rem;
  font-weight: 500;
  margin-bottom: 0;
}
.gallery-quote-popup label {
  font-size: 1rem;
  font-weight: 700;
}
.gallery-quote-popup input:not([type=submit]) {
  background-color: #eee;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  color: #000;
}

.form-name {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (max-width: 39.99875em) {
  .form-name {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.form-name input {
  width: 19.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .form-name input {
    width: 100%;
  }
}
.form-name input::-webkit-input-placeholder {
  color: #333;
  font-size: 0.9rem;
}
.form-name input::-moz-placeholder {
  color: #333;
  font-size: 0.9rem;
}
.form-name input:-ms-input-placeholder {
  color: #333;
  font-size: 0.9rem;
}
.form-name input::-ms-input-placeholder {
  color: #333;
  font-size: 0.9rem;
}
.form-name input::placeholder {
  color: #333;
  font-size: 0.9rem;
}

.gallery-product-info span {
  font-weight: 400;
}

.fitmentCheck__txt {
  color: #eb212e;
  font-weight: 600;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
}
.fitmentCheck__btn {
  background-color: #eb212e;
  padding-right: 2rem;
  padding-left: 2rem;
}

#fc #fc-cart header {
  background-color: transparent;
}
#fc .notice {
  padding-left: 15px;
  padding-right: 15px;
  color: #0a0a0a;
}
#fc .notice p {
  font-size: 0.75rem;
}

/* cart summary */
.snipcart-item-custom-fields__field.snipcart-item-custom-fields--textbox {
  width: 80%;
}

.snipcart-input__input.snipcart__font--secondary.snipcart__font--bold {
  border: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 0;
}

.im-custom-subtitle {
  margin-top: 2rem;
}

.inventory-layout-header {
  border-top: 0;
}
.inventory-layout-header .top-bar .nav-menu-right {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}
@media print, screen and (min-width: 64em) {
  .inventory-layout-header .top-bar .nav-menu-right {
    width: 75%;
  }
}
.inventory-layout-header .top-bar .nav-menu-right a {
  font-size: 1rem;
  letter-spacing: unset;
  color: #fefefe;
}
.inventory-layout-header .top-bar .nav-menu-right a:hover {
  color: #eb212e;
}
@media print, screen and (max-width: 63.99875em) {
  .inventory-layout-header .top-bar .nav-menu-right ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    width: 100%;
    margin-left: 0;
  }
}
.inventory-layout-header .top-bar .nav-menu-right ul > li {
  display: table-cell;
  padding-left: 1rem;
}
.inventory-layout-header .top-bar-title {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 64em) {
  .inventory-layout-header .top-bar .top-bar-title {
    width: 30%;
  }
}

.inventory-head {
  border-bottom: 5px solid #7f8283;
  background-color: #e4e4e4;
}
.inventory-head.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 10;
}
.inventory-head.fixed #left {
  background-color: #e4e4e4;
  padding-bottom: 1rem;
}

.user {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
  padding-top: 2rem;
  padding-bottom: 2rem;
  font-size: 1.05rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}
@media print, screen and (max-width: 63.99875em) {
  .user {
    font-size: 0.875rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.user-name {
  font-style: italic;
  font-weight: 600;
  text-transform: capitalize;
  font-family: "Roboto", sans-serif;
}
@media print, screen and (max-width: 63.99875em) {
  .user-name {
    border-bottom: 1px solid #777777;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
  }
}
.user-code {
  color: #eb212e;
}
.user-options {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-transform: uppercase;
}
@media print, screen and (max-width: 63.99875em) {
  .user-options {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.user-options > div {
  font-weight: 900;
  margin-left: 1rem;
}
@media print, screen and (max-width: 63.99875em) {
  .user-options > div {
    margin-left: 0;
    margin-right: 1rem;
  }
}
.user-options > div a {
  color: #0a0a0a;
  font-weight: 700;
  font-family: "Roboto", sans-serif;
}
@media print, screen and (max-width: 63.99875em) {
  .user-options > div a {
    font-weight: 500;
  }
}
.user-options > div a:hover {
  color: #eb212e;
}
.user-options > div a:hover i {
  color: #eb212e;
}
.user-options > div i {
  color: #7f8283;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.loading-screen {
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  content: "";
  display: block;
  z-index: 9999;
}
.loading-screen i {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 45px;
  height: 45px;
  font-size: 3rem;
  color: #fefefe;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
}
@-webkit-keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
  }
}
@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.inventory-layout-footer {
  background-color: #0a0a0a;
}
.inventory-layout-footer .footer-bottom__copy {
  color: #fefefe;
  font-weight: 700;
}

#inventory {
  background-color: #fefefe;
  font-family: "Roboto", sans-serif;
}
#inventory .inventory-item {
  font-weight: 700;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
  font-size: 1rem;
}
#inventory .inventory-item .slashout {
  text-decoration: line-through;
}
#inventory .inventory-part-number {
  color: #555555;
  font-weight: 400;
}
#inventory .inventory-stock {
  color: #eb212e;
}
@media print, screen and (min-width: 64em) {
  #inventory .inventory-stock {
    text-align: center;
  }
}
#inventory .inventory-stock-by-location {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #eb212e;
}
#inventory .inventory-dealer, #inventory .inventory-msrp {
  font-weight: 300;
  color: #cacaca;
  font-size: 0.8375rem;
  width: 50%;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .inventory-dealer, #inventory .inventory-msrp {
    width: auto;
  }
}
#inventory .inventory-msrp {
  text-transform: uppercase;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .inventory-msrp {
    padding-right: 1rem;
  }
}
#inventory .inventory-dealer {
  text-transform: capitalize;
}
#inventory .inventory-sale {
  color: #0a0a0a;
  text-transform: capitalize;
}
#inventory .inventory-sale-price {
  color: #eb212e;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .inventory-purchase {
    margin-top: 0.5rem;
  }
}
#inventory .inventory-purchase > button {
  background-color: #eb212e;
  font-family: "Roboto", sans-serif;
  color: #fefefe;
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 1rem 1.5rem;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .inventory-purchase > button {
    padding: 0.5rem 1rem;
  }
}
#inventory .inventory-purchase > button.backorder-link {
  background-color: #555555;
}
#inventory .inventory-purchase > button:hover {
  background-color: #7f8283;
}
#inventory .inventory-divider {
  height: 1px;
  background-color: #7f8283;
}
#inventory .no-matches, #inventory .result-count-empty {
  display: none;
}
#inventory .view-list .inventory-item {
  display: inline-block;
  border-bottom: 1px solid #7f8283;
  width: 100%;
}
#inventory .view-list .inventory-thumbnail {
  width: 12%;
  float: left;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .view-list .inventory-thumbnail {
    width: auto;
  }
}
#inventory .view-list .inventory-thumbnail img {
  max-width: 70px;
}
#inventory .view-list .inventory-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .view-list .inventory-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 1rem;
  }
}
#inventory .view-list .inventory-location {
  width: 40%;
}
#inventory .view-list .inventory-description {
  float: left;
}
@media print, screen and (min-width: 40em) {
  #inventory .view-list .inventory-description {
    width: 88%;
  }
}
#inventory .view-list .inventory-description-top {
  color: #0a0a0a;
  line-height: 1.35;
  padding-bottom: 0.5rem;
}
#inventory .view-list .inventory-description-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .view-list .inventory-description-bottom {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  #inventory .view-list .inventory-description-bottom > div {
    width: 50%;
  }
}
#inventory .view-list .inventory-description-bottom .inventory-description-left {
  width: 100%;
}
#inventory .view-list .inventory-description-bottom-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#inventory .view-gallery .inventory-thumbnail {
  text-align: center;
}
#inventory .view-gallery .inventory-thumbnail img {
  max-width: 200px;
  width: 100%;
}
#inventory .view-gallery .inventory-msrp, #inventory .view-gallery .inventory-dealer {
  color: #0a0a0a;
}
#inventory .view-gallery .inventory-location {
  width: 33%;
}
#inventory .view-gallery .inventory-purchase {
  margin-top: 0.5rem;
}

#ware-box, #ware-box2, #ware-box3 {
  position: fixed;
  display: none;
  opacity: 0;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 10;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.item-popup {
  font-size: 1rem;
  font-weight: 500;
  width: 600px;
  padding: 20px;
  background-color: #fefefe;
  /*@media screen and (max-height: 1100px) {
    overflow-y: scroll;
  }*/
}
.item-popup h3 {
  font-size: 1.25rem;
}
.item-popup .item-popup-title h3 {
  text-transform: uppercase;
  letter-spacing: 1px;
}
.item-popup label {
  text-transform: uppercase;
  width: 80px;
  font-weight: 600;
}
.item-popup input {
  width: 50px;
}
.item-popup input[name=vehicle] {
  width: 70%;
}
.item-popup input::-webkit-input-placeholder {
  font-style: italic;
}
.item-popup input::-moz-placeholder {
  font-style: italic;
}
.item-popup input:-ms-input-placeholder {
  font-style: italic;
}
.item-popup input::-ms-input-placeholder {
  font-style: italic;
}
.item-popup input::placeholder {
  font-style: italic;
}
.item-popup > div {
  width: 100%;
}
.item-popup .field {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: auto;
}
.item-popup .field-vehicle {
  margin-bottom: 1rem;
}
.item-popup .field > div {
  width: auto;
}
.item-popup .field.upsell {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.item-popup .button {
  padding: 1rem 1.5rem;
  font-size: 1rem;
  letter-spacing: 0;
}
.item-popup .button:hover {
  background-color: #0a0a0a;
}
.item-popup .item-popup-cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  .item-popup .item-popup-cta {
    padding-left: 80px;
    display: block;
  }
}
.item-popup .item-popup-cta .button:first-child {
  background-color: #0a0a0a;
}
.item-popup .item-popup-cta .button:hover {
  background-color: #7f8283;
}
.item-popup .upsell {
  padding-bottom: 1.5rem;
}
.item-popup .upsell label {
  width: 100%;
  padding-bottom: 0.5rem;
}
.item-popup .upsell input {
  margin-bottom: 0;
  width: auto;
}
.item-popup .upsell table {
  font-size: 0.85rem;
}
.item-popup .upsell table tr td {
  padding: 0.25rem 0.75rem;
}
.item-popup .upsell table span {
  text-transform: uppercase;
}

#ware-box2 .item-popup-msg {
  text-align: center;
  text-transform: uppercase;
  padding-bottom: 2rem;
}
#ware-box2 #message {
  font-weight: 500;
  font-size: 1rem;
}
#ware-box2 #message .fa-check-circle, #ware-box2 #message .fa-minus-circle, #ware-box2 #message .fa-times-circle, #ware-box2 #message .fa-exclamation-triangle {
  font-size: 3rem;
  margin-bottom: 1rem;
}
#ware-box2 #message .fa-check-circle {
  color: #33cc33;
}
#ware-box2 #message .fa-minus-circle, #ware-box2 #message .fa-times-circle, #ware-box2 #message .fa-exclamation-triangle {
  color: #f4a826;
}
#ware-box2 .item-popup-cta {
  margin-left: 0;
  text-align: center;
}
#ware-box2 .item-popup-cta a.button:link:first-child, #ware-box2 .item-popup-cta a.button:visited:first-child {
  background-color: #eb212e;
}
#ware-box2 .item-popup-cta a.button:link:last-child, #ware-box2 .item-popup-cta a.button:visited:last-child {
  background-color: #7f8283;
}
#ware-box2 .item-popup-cta a.button:link:hover, #ware-box2 .item-popup-cta a.button:visited:hover {
  background-color: #0a0a0a;
}

#ware-box3 .cart-results th, #ware-box3 .cart-results td {
  font-size: 1rem;
}
#ware-box3 .cart-top {
  padding-top: 1rem;
  padding-left: 1rem;
}
#ware-box3 .cart-top h1 {
  font-size: 2rem;
}
#ware-box3 .mobile-cart .accordion-item .accordion-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #e4e4e4;
  border-top: 1px solid #7f8283;
  border-bottom: 1px solid #7f8283;
  padding: 1rem 0.75rem;
}
#ware-box3 .mobile-cart .accordion-item .accordion-title::before {
  display: none;
}
#ware-box3 .mobile-cart .accordion-item .accordion-title .mobile-summary-title {
  font-weight: 700;
  color: #eb212e;
}
#ware-box3 .mobile-cart .accordion-item .accordion-title .mobile-summary-icon {
  padding-left: 0.5rem;
}
#ware-box3 .mobile-cart .accordion-item .accordion-title .mobile-summary-total {
  color: #0a0a0a;
}
#ware-box3 .mobile-cart .accordion-item.is-active .fa-angle-down:before {
  content: "\f106";
}
#ware-box3 .mobile-cart .inventory-item {
  background-color: #e4e4e4;
  display: inline-block;
  border-bottom: 1px solid #7f8283;
  width: 100%;
  padding: 0.75rem;
}
#ware-box3 .mobile-cart .inventory-thumbnail {
  width: 12%;
  float: left;
}
@media print, screen and (max-width: 63.99875em) {
  #ware-box3 .mobile-cart .inventory-thumbnail {
    width: auto;
  }
}
#ware-box3 .mobile-cart .inventory-thumbnail img {
  max-width: 70px;
}
#ware-box3 .mobile-cart .inventory-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (max-width: 63.99875em) {
  #ware-box3 .mobile-cart .inventory-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 1rem;
  }
}
#ware-box3 .mobile-cart .inventory-description {
  float: left;
}
@media print, screen and (min-width: 40em) {
  #ware-box3 .mobile-cart .inventory-description {
    width: 88%;
  }
}
#ware-box3 .mobile-cart .inventory-description-top {
  color: #0a0a0a;
  line-height: 1.35;
  padding-bottom: 0.5rem;
  font-weight: 700;
}
#ware-box3 .mobile-cart .inventory-description-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (max-width: 63.99875em) {
  #ware-box3 .mobile-cart .inventory-description-bottom {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  #ware-box3 .mobile-cart .inventory-description-bottom > div {
    width: 50%;
  }
}
#ware-box3 .mobile-cart .inventory-description-bottom .inventory-description-left {
  width: 100%;
}
#ware-box3 .mobile-cart .inventory-description-bottom-bottom {
  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;
}
#ware-box3 .mobile-cart .mobile-checkout-cta, #ware-box3 .mobile-cart .mobile-cart-cta {
  padding: 0.75rem;
}
#ware-box3 .mobile-cart .mobile-checkout-cta .button, #ware-box3 .mobile-cart .mobile-cart-cta .button {
  padding: 0.75rem 1rem;
  font-size: 1.15rem;
}
#ware-box3 .mobile-cart .mobile-checkout-cta .button.edit-cart, #ware-box3 .mobile-cart .mobile-cart-cta .button.edit-cart {
  background-color: #7f8283;
  margin-left: 0.75rem;
}
#ware-box3 .mobile-cart .mobile-checkout-cta .button.checkout-button, #ware-box3 .mobile-cart .mobile-cart-cta .button.checkout-button {
  background-color: #33cc33;
  margin-left: 0.75rem;
}
#ware-box3 .mobile-cart .mobile-checkout-total, #ware-box3 .mobile-cart .mobile-cart-total {
  padding: 0.75rem;
  text-align: right;
  font-weight: 700;
}
#ware-box3 .mobile-cart-table-container {
  padding-bottom: 0;
  border-bottom: 1px solid #7f8283;
  font-size: 1rem;
}
#ware-box3 .mobile-cart {
  border-top: 1px solid #7f8283;
}
#ware-box3 .mobile-cart .inventory-item .inventory-description-bottom-bottom {
  display: block;
}
#ware-box3 .mobile-cart .inventory-item .inventory-description-bottom-bottom-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#ware-box3 .mobile-cart .inventory-item .inventory-description-bottom-bottom-bottom i {
  font-size: 1.25rem;
}
#ware-box3 .mobile-cart .mobile-cart-cta {
  padding: 1.25rem 0.75rem;
}
#ware-box3 .mobile-cart .mobile-cart-total {
  text-align: center;
}

#inventory .pagination-container {
  padding: 3rem 0;
  margin: 3rem 0;
}
#inventory .navigation {
  margin-bottom: 3rem;
}
#inventory .navigation a {
  display: inline-block;
  margin-top: 2rem;
  padding: 1rem;
  color: #fefefe;
  background-color: #eb212e;
}
#inventory .navigation a:hover {
  background-color: #666666;
}

#inventory #box {
  background-color: orange;
  border: 4px solid pink;
  -webkit-transition: background-color 1s, border 1s;
  transition: background-color 1s, border 1s;
  width: 350px;
  height: 350px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px;
}
#inventory .vertical {
  color: white;
  font: 32px "Arial";
}
#inventory .extra {
  width: 350px;
  height: 350px;
  margin-top: 10px;
  border: 4px solid blue;
  text-align: center;
  padding: 20px;
}

.login label {
  font-weight: 600;
}
@media print, screen and (min-width: 40em) {
  .login input {
    max-width: 40%;
  }
}
.login .inv-login, .login .inv-msg, .login #login_form, .login .inv-links {
  padding: 0 2rem;
}
@media print, screen and (min-width: 40em) {
  .login .inv-login, .login .inv-msg, .login #login_form, .login .inv-links {
    padding: 0;
  }
}
.login .inv-links ul {
  margin: 0;
  list-style: none;
}
.login .inv-links ul li {
  margin-bottom: 0.5rem;
  text-decoration: underline;
  font-weight: 500;
}
.login .inv-disclaimer {
  text-align: center;
}
.login .title h3 {
  text-transform: uppercase;
  font-size: 2rem;
}
.login #login_form {
  text-transform: uppercase;
}
.login .inv-msg > p {
  font-weight: 700;
  color: #eb212e;
}

#inventory.hub {
  padding-top: 2rem;
}
@media print, screen and (min-width: 64em) {
  #inventory.hub {
    padding-top: 5rem;
    padding-bottom: 5rem;
  }
}
#inventory.hub .hub-cta {
  max-width: 70rem;
  margin: 0 auto;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  #inventory.hub .hub-cta {
    margin-bottom: 5rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #inventory.hub .hub-cta .row > .column:first-child .title, #inventory.hub .hub-cta .row > .columns:first-child .title {
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #inventory.hub .hub-cta .row > .column:nth-child(2) .image, #inventory.hub .hub-cta .row > .columns:nth-child(2) .image {
    margin-bottom: -2.5rem;
    margin-top: -1rem;
  }
}
#inventory.hub .hub-cta .image {
  margin-bottom: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#inventory.hub .hub-cta img {
  max-width: 75%;
}
#inventory.hub .hub-cta h3 {
  font-family: "Roboto", sans-serif;
  font-weight: 600;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#inventory.hub .hub-cta .title {
  margin-bottom: 4rem;
}
@media print, screen and (min-width: 40em) {
  #inventory.hub .hub-cta .title {
    margin-bottom: 0;
  }
}
#inventory.hub .hub-cta a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#inventory.hub .hub-cta a:hover h3 {
  color: #eb212e;
}
#inventory.hub .hub-cta a:hover .image {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
}

@media print, screen and (max-width: 63.99875em) {
  .orders .page-content .accordion, .orders .inventory-head .accordion {
    background-color: #e4e4e4;
  }
  .orders .page-content .accordion #inventory-filter-search, .orders .inventory-head .accordion #inventory-filter-search {
    padding: 0;
  }
  .orders .page-content .accordion .accordion-item, .orders .inventory-head .accordion .accordion-item {
    border: 0;
  }
}
.orders .page-content .subheader, .orders .inventory-head .subheader {
  font-weight: 1rem;
  color: #0a0a0a;
  font-weight: 600;
  background-color: #e4e4e4;
  padding: 2rem;
  margin: 0;
}
@media print, screen and (max-width: 63.99875em) {
  .orders .page-content .subheader, .orders .inventory-head .subheader {
    padding: 1rem;
  }
}
.orders .page-content .subheader label, .orders .inventory-head .subheader label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 1rem;
  color: #0a0a0a;
  font-weight: 600;
}
@media print, screen and (max-width: 39.99875em) {
  .orders .page-content .subheader label, .orders .inventory-head .subheader label {
    width: 100%;
    margin-bottom: 1rem;
  }
}
.orders .page-content .subheader input, .orders .inventory-head .subheader input {
  width: auto;
  margin-bottom: 0;
  margin-left: 0.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .orders .page-content .subheader input, .orders .inventory-head .subheader input {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  .orders .page-content .subheader .search-filter, .orders .inventory-head .subheader .search-filter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.orders .page-content .subheader .search-filter > div, .orders .inventory-head .subheader .search-filter > div {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.orders .page-content .subheader .search-filter > div.po-number, .orders .inventory-head .subheader .search-filter > div.po-number {
  text-transform: uppercase;
}
@media print, screen and (min-width: 64em) {
  .orders .page-content .subheader .search-filter > div, .orders .inventory-head .subheader .search-filter > div {
    /*
    &:first-child {
      width:37%;
    }
    &:nth-child(2) {
      width:5%;
      justify-content: center;
    }
    &:nth-child(3) {
      width:20%;
    }*/
  }
}
.orders .page-content .subheader .search-filter .divider, .orders .inventory-head .subheader .search-filter .divider {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}
.orders .page-content .subheader .search-filter .button, .orders .inventory-head .subheader .search-filter .button {
  margin-bottom: 0;
  padding: 0.7rem 1.5rem;
}
@media print, screen and (max-width: 39.99875em) {
  .orders .page-content .subheader .search-filter .button, .orders .inventory-head .subheader .search-filter .button {
    width: 100%;
  }
}
.orders .page-content .subheader .dates > label, .orders .inventory-head .subheader .dates > label {
  margin-right: 0.5rem;
  font-size: 1rem;
}
.orders .page-content .subheader .dates > label:nth-child(2), .orders .inventory-head .subheader .dates > label:nth-child(2) {
  margin-right: 0;
}
.orders .page-content {
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
.orders .page-content > div:first-child {
  padding-top: 1rem;
}
.orders .order-query {
  padding: 1rem 2rem;
  text-transform: uppercase;
  font-style: italic;
  color: #eb212e;
  font-weight: 600;
}
@media print, screen and (max-width: 63.99875em) {
  .orders .order-query {
    padding: 1rem;
  }
}
.orders .order-table {
  padding-bottom: 1rem;
}
@media print, screen and (max-width: 63.99875em) {
  .orders .order-table {
    overflow-y: auto;
  }
}
.orders .order-table table {
  text-transform: uppercase;
}
.orders .order-table thead, .orders .order-table tbody {
  border: 0;
  border-bottom: 10px solid #0a0a0a;
  background-color: transparent;
}
.orders .order-table tr {
  background-color: transparent;
  border-bottom: 1px solid #cccccc;
}
.orders .order-table td {
  white-space: nowrap;
}
.orders .order-table .button {
  margin-bottom: 0;
  padding: 0.75rem 1rem;
}
.orders .order-table .button.tracking-order-button {
  visibility: hidden;
}
.orders .disclaimer {
  color: #eb212e;
  font-style: italic;
}
@media print, screen and (min-width: 40em) {
  .orders .disclaimer {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}

#ware-box2.order-details, #inv-order-print {
  color: #0a0a0a;
}
#ware-box2.order-details .item-popup, #inv-order-print .item-popup {
  border-radius: 5px;
}
@media print, screen and (min-width: 40em) {
  #ware-box2.order-details .item-popup, #inv-order-print .item-popup {
    padding: 2rem;
    width: 900px;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #ware-box2.order-details .item-popup, #inv-order-print .item-popup {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
#ware-box2.order-details .header, #inv-order-print .header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  #ware-box2.order-details .header, #inv-order-print .header {
    margin-bottom: 2rem;
  }
}
#ware-box2.order-details .header > div, #inv-order-print .header > div {
  width: 35%;
}
@media print, screen and (max-width: 63.99875em) {
  #ware-box2.order-details .header > div, #inv-order-print .header > div {
    width: 45%;
    line-height: 1.4;
  }
}
#ware-box2.order-details .header .address, #inv-order-print .header .address {
  font-size: 0.9rem;
  line-height: 1.1;
}
@media print, screen and (max-width: 39.99875em) {
  #ware-box2.order-details .header .address, #inv-order-print .header .address {
    font-size: 0.8rem;
  }
}
#ware-box2.order-details .header .address > div, #inv-order-print .header .address > div {
  padding-left: 1rem;
}
#ware-box2.order-details .header .address > div:first-child, #inv-order-print .header .address > div:first-child {
  padding-left: 0;
}
#ware-box2.order-details .header .order-info, #inv-order-print .header .order-info {
  font-weight: 600;
}
@media print, screen and (max-width: 39.99875em) {
  #ware-box2.order-details .header .order-info, #inv-order-print .header .order-info {
    font-size: 0.9rem;
  }
}
#ware-box2.order-details .product-list, #inv-order-print .product-list {
  margin-bottom: 1rem;
}
@media print, screen and (max-width: 39.99875em) {
  #ware-box2.order-details .product-list, #inv-order-print .product-list {
    line-height: 1.25;
    font-size: 0.9rem;
  }
}
#ware-box2.order-details table, #inv-order-print table {
  text-transform: uppercase;
}
#ware-box2.order-details table thead, #ware-box2.order-details table tbody, #inv-order-print table thead, #inv-order-print table tbody {
  border: 0;
  background-color: transparent;
  border-bottom: 10px solid #0a0a0a;
}
#ware-box2.order-details table td, #inv-order-print table td {
  text-align: left;
}
#ware-box2.order-details .cta, #inv-order-print .cta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
#ware-box2.order-details .cta > div, #inv-order-print .cta > div {
  margin-left: 1rem;
}
#ware-box2.order-details .cta .button, #inv-order-print .cta .button {
  margin-bottom: 0;
}

.user-options > div.user-options-inventory {
  display: none;
}
.user-options > div.user-options-inventory a, .user-options > div.user-options-inventory i {
  color: #eb212e;
}
.user-options > div.user-options-inventory a:hover {
  color: #0a0a0a;
}
.user-options > div.user-options-inventory a:hover i {
  color: #0a0a0a;
}

.user-options-inventory {
  display: none;
}

.print-container {
  background-color: #fefefe;
}

#inv-order-print .item-popup {
  margin: 0 auto;
  width: 100%;
}
#inv-order-print .order-info, #inv-order-print table {
  font-size: 0.9rem;
}

.cart #login {
  display: none;
}
.cart .cart-title {
  padding-top: 1rem;
}
.cart .page-content {
  background-color: transparent;
}
.cart .page-content.cart-table-container form {
  width: 100%;
}
.cart .page-content .cart-listing {
  width: 100%;
  border: 1px solid #8a8a8a;
  border-top: 5px solid #eb212e;
}
.cart .page-content .cart-listing .vehicle-message {
  font-style: italic;
  color: #555555;
  line-height: 2;
}
.cart th {
  color: #fefefe;
  text-transform: uppercase;
  background-color: #8a8a8a;
  font-weight: 400;
}
.cart td {
  font-weight: 400;
}
.cart-buttons, .cart-total {
  padding: 2rem;
}
.cart-buttons .button {
  padding: 0.75rem 1rem;
  margin-bottom: 0;
}
.cart-buttons .button:hover {
  background-color: #0a0a0a;
}
.cart .update-message {
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .cart .update-message {
    margin-bottom: 0;
  }
}
.cart .update-message span {
  color: #33cc33;
  font-weight: 700;
}
.cart .update-checkout {
  text-align: right;
}
.cart .update-checkout .button:first-child {
  background-color: #7f8283;
}
.cart .update-checkout .button:last-child {
  background-color: #33cc33;
}
.cart .update-checkout .button:hover {
  background-color: black;
}
.cart .edit-cart {
  text-align: right;
}
.cart .edit-cart .button {
  background-color: #7f8283;
}
.cart .edit-cart .button:hover {
  background-color: #0a0a0a;
}
.cart-qty {
  width: 60px;
  margin: 0 auto;
}
.cart-total {
  font-weight: 900;
  text-transform: uppercase;
}
.cart-total-title {
  text-align: right;
}
.cart .disclaimer {
  text-align: left;
  padding-top: 1rem;
  border-top: 5px solid #8a8a8a;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .cart .disclaimer {
    margin-top: 5rem;
  }
}
@media print, screen and (min-width: 40em) {
  .cart .inv-btn-container {
    padding-left: 0;
    padding-right: 0;
  }
}
.cart .checkout-error {
  color: #ed001a;
  font-size: 0.9rem;
  font-weight: 600;
}

.page-content .checkout-form {
  width: 100%;
}
@media print, screen and (min-width: 64em) {
  .page-content .checkout-form .buttons {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}

#checkout h1, #checkout h2, #cart h1, #cart h2 {
  text-transform: uppercase;
}
#checkout .page-content h1, #cart .page-content h1 {
  color: #eb212e;
}
@media print, screen and (min-width: 40em) {
  #checkout .checkout-title, #checkout .cart-title, #cart .checkout-title, #cart .cart-title {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #checkout .checkout-title h1, #checkout .cart-title h1, #cart .checkout-title h1, #cart .cart-title h1 {
    padding: 0 0.75rem;
    font-size: 2rem;
    letter-spacing: 0;
  }
}
@media print, screen and (max-width: 39.99875em) {
  #checkout .checkout-form h2, #cart .checkout-form h2 {
    letter-spacing: 0;
  }
}

.checkout-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.checkout-form {
  padding: 0.75rem;
  border-right-color: #7f8283;
}
@media print, screen and (min-width: 64em) {
  .checkout-form {
    border: 1px solid #8a8a8a;
    padding: 2rem;
  }
}
.checkout-form .buttons .button {
  max-width: 150px;
  width: 100%;
}
.checkout-form .buttons .button:first-child {
  background-color: #33cc33;
  margin-right: 0.5rem;
  padding-left: 0;
  padding-right: 0;
}
.checkout-form .buttons .button:last-child {
  background-color: #7f8283;
}
.checkout-form .buttons .button:hover {
  background-color: #0a0a0a;
}
.checkout-form .invalid {
  background-color: #ed001a;
  color: #fefefe;
}
.checkout label {
  max-width: 200px;
  width: 100%;
  font-weight: 700;
  /*font-size:1rem;*/
  text-transform: capitalize;
}
@media print, screen and (min-width: 64em) {
  .checkout .field input, .checkout .field select {
    max-width: 350px;
  }
}
.checkout .field textarea {
  max-width: 500px;
  min-height: 150px;
}
.checkout .customer-address {
  text-transform: none;
  line-height: 1.25;
  margin-bottom: 1rem;
  font-weight: 700;
}

#checkout .summary {
  padding: 2rem;
  background-color: #e4e4e4;
  border: 1px solid #8a8a8a;
  border-left: 0;
  font-size: 1rem;
}
#checkout .summary .cart-listing {
  margin-top: 2.5rem;
}
#checkout .summary table {
  line-height: 1.25;
}
#checkout .summary th:nth-child(3) {
  min-width: 100px;
}

#checkout .mobile-checkout .accordion-item .accordion-title, #cart .mobile-cart .accordion-item .accordion-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  background-color: #e4e4e4;
  border-top: 1px solid #7f8283;
  border-bottom: 1px solid #7f8283;
  padding: 1rem 0.75rem;
}
#checkout .mobile-checkout .accordion-item .accordion-title::before, #cart .mobile-cart .accordion-item .accordion-title::before {
  display: none;
}
#checkout .mobile-checkout .accordion-item .accordion-title .mobile-summary-title, #cart .mobile-cart .accordion-item .accordion-title .mobile-summary-title {
  font-weight: 700;
  color: #eb212e;
}
#checkout .mobile-checkout .accordion-item .accordion-title .mobile-summary-icon, #cart .mobile-cart .accordion-item .accordion-title .mobile-summary-icon {
  padding-left: 0.5rem;
}
#checkout .mobile-checkout .accordion-item .accordion-title .mobile-summary-total, #cart .mobile-cart .accordion-item .accordion-title .mobile-summary-total {
  color: #0a0a0a;
}
#checkout .mobile-checkout .accordion-item.is-active .fa-angle-down:before, #cart .mobile-cart .accordion-item.is-active .fa-angle-down:before {
  content: "\f106";
}
#checkout .mobile-checkout .inventory-item, #cart .mobile-cart .inventory-item {
  background-color: #e4e4e4;
  display: inline-block;
  border-bottom: 1px solid #7f8283;
  width: 100%;
  padding: 0.75rem;
}
#checkout .mobile-checkout .inventory-thumbnail, #cart .mobile-cart .inventory-thumbnail {
  width: 12%;
  float: left;
}
@media print, screen and (max-width: 63.99875em) {
  #checkout .mobile-checkout .inventory-thumbnail, #cart .mobile-cart .inventory-thumbnail {
    width: auto;
  }
}
#checkout .mobile-checkout .inventory-thumbnail img, #cart .mobile-cart .inventory-thumbnail img {
  max-width: 70px;
}
#checkout .mobile-checkout .inventory-info, #cart .mobile-cart .inventory-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (max-width: 63.99875em) {
  #checkout .mobile-checkout .inventory-info, #cart .mobile-cart .inventory-info {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-left: 1rem;
  }
}
#checkout .mobile-checkout .inventory-description, #cart .mobile-cart .inventory-description {
  float: left;
}
@media print, screen and (min-width: 40em) {
  #checkout .mobile-checkout .inventory-description, #cart .mobile-cart .inventory-description {
    width: 88%;
  }
}
#checkout .mobile-checkout .inventory-description-top, #cart .mobile-cart .inventory-description-top {
  color: #0a0a0a;
  line-height: 1.35;
  padding-bottom: 0.5rem;
  font-weight: 700;
}
#checkout .mobile-checkout .inventory-description-bottom, #cart .mobile-cart .inventory-description-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (max-width: 63.99875em) {
  #checkout .mobile-checkout .inventory-description-bottom, #cart .mobile-cart .inventory-description-bottom {
    width: 100%;
  }
}
@media print, screen and (min-width: 40em) {
  #checkout .mobile-checkout .inventory-description-bottom > div, #cart .mobile-cart .inventory-description-bottom > div {
    width: 50%;
  }
}
#checkout .mobile-checkout .inventory-description-bottom .inventory-description-left, #cart .mobile-cart .inventory-description-bottom .inventory-description-left {
  width: 100%;
}
#checkout .mobile-checkout .inventory-description-bottom-bottom, #cart .mobile-cart .inventory-description-bottom-bottom {
  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;
}
#checkout .mobile-checkout .inventory-description .inventory-quantity, #cart .mobile-cart .inventory-description .inventory-quantity {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#checkout .mobile-checkout .inventory-description .inventory-quantity .cart-qty, #cart .mobile-cart .inventory-description .inventory-quantity .cart-qty {
  margin: 0;
  margin-left: 0.5rem;
}
#checkout .mobile-checkout .inventory-description .inventory-vehicle, #cart .mobile-cart .inventory-description .inventory-vehicle {
  color: #555555;
  font-style: italic;
}
#checkout .mobile-checkout .mobile-checkout-cta, #checkout .mobile-checkout .mobile-cart-cta, #cart .mobile-cart .mobile-checkout-cta, #cart .mobile-cart .mobile-cart-cta {
  padding: 0.75rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#checkout .mobile-checkout .mobile-checkout-cta .button, #checkout .mobile-checkout .mobile-cart-cta .button, #cart .mobile-cart .mobile-checkout-cta .button, #cart .mobile-cart .mobile-cart-cta .button {
  padding: 0.75rem 1rem;
  font-size: 1.15rem;
}
#checkout .mobile-checkout .mobile-checkout-cta .button.edit-cart, #checkout .mobile-checkout .mobile-cart-cta .button.edit-cart, #cart .mobile-cart .mobile-checkout-cta .button.edit-cart, #cart .mobile-cart .mobile-cart-cta .button.edit-cart {
  text-align: center;
  background-color: #7f8283;
}
#checkout .mobile-checkout .mobile-checkout-cta .button.checkout-button, #checkout .mobile-checkout .mobile-cart-cta .button.checkout-button, #cart .mobile-cart .mobile-checkout-cta .button.checkout-button, #cart .mobile-cart .mobile-cart-cta .button.checkout-button {
  background-color: #33cc33;
}
#checkout .mobile-checkout .mobile-checkout-total, #checkout .mobile-checkout .mobile-cart-total, #cart .mobile-cart .mobile-checkout-total, #cart .mobile-cart .mobile-cart-total {
  padding: 0.75rem;
  text-align: right;
  font-weight: 700;
}

/*///// Mobile - Cart /////*/
#cart .mobile-cart-table-container {
  padding-bottom: 0;
  border-bottom: 1px solid #7f8283;
}

#cart .mobile-cart {
  border-top: 1px solid #7f8283;
}
#cart .mobile-cart .inventory-item .inventory-description-bottom-bottom {
  display: block;
}
#cart .mobile-cart .inventory-item .inventory-description-bottom-bottom-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#cart .mobile-cart .inventory-item .inventory-description-bottom-bottom-bottom i {
  font-size: 1.25rem;
}
#cart .mobile-cart .mobile-cart-cta {
  padding: 1.25rem 0.75rem;
}
#cart .mobile-cart .mobile-cart-total {
  text-align: center;
}

#cart .mobile-cart .item-update {
  display: none;
  margin-left: 0.5rem;
}
#cart .mobile-cart .mobile-update {
  background-color: transparent;
  color: #0a0a0a;
  border: 0;
  text-transform: uppercase;
  color: #33cc33;
  font-weight: 800;
  text-decoration: underline;
}

/*///// Remove Item Popup /////*/
#ware-box2.cart .item-popup-cta {
  padding-left: 0;
}

@media print, screen and (min-width: 40em) {
  #inventory {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

#inventory .filter, .inventory-head .filter {
  padding-bottom: 2rem;
}
#inventory .filter-selection, .inventory-head .filter-selection {
  border-right: 1px solid #7f8283;
}
#inventory .filter-selection h5, .inventory-head .filter-selection h5 {
  text-transform: uppercase;
  letter-spacing: 0;
  font-size: 1.15rem;
}
#inventory .filter-selection ul, .inventory-head .filter-selection ul {
  list-style: none;
  margin: 0;
}
#inventory .filter-selection li, .inventory-head .filter-selection li {
  font-weight: 400;
  font-size: 0.875rem;
  line-height: 0;
}
#inventory .filter-selection input, .inventory-head .filter-selection input {
  margin-bottom: 0.75rem;
}
#inventory .filter-selection label, .inventory-head .filter-selection label {
  line-height: 0;
}
#inventory .filter-active, .inventory-head .filter-active {
  font-weight: 400;
  padding-bottom: 2rem;
}
#inventory .filter-active:after, .inventory-head .filter-active:after {
  content: "";
  display: block;
  width: 75%;
  background-color: #7f8283;
  height: 1px;
}
#inventory .filter-active ul, .inventory-head .filter-active ul {
  padding-bottom: 2rem;
}
#inventory .filter-active a, .inventory-head .filter-active a {
  color: #336699;
  font-weight: 900;
  padding-right: 0.5rem;
}
#inventory .filter-active a#clear, .inventory-head .filter-active a#clear {
  display: block;
  margin-top: 0.5rem;
}
#inventory .filter-active-selected, .inventory-head .filter-active-selected {
  padding: 0.5rem;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  display: inline-block;
  border-radius: 5px;
}
#inventory .filter-active-selected:hover, .inventory-head .filter-active-selected:hover {
  background-color: #eb212e;
  color: white;
}
#inventory .filter-active-selected:hover a, .inventory-head .filter-active-selected:hover a {
  color: #fefefe;
}
#inventory .filter-button, .inventory-head .filter-button {
  color: #eb212e;
  font-weight: 900;
  font-size: 1rem;
}
#inventory .filter-part-number, .inventory-head .filter-part-number {
  max-width: 80%;
  border-bottom: 1px solid #7f8283;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
#inventory .filter-part-number input, .inventory-head .filter-part-number input {
  padding: 0.5rem;
  margin-bottom: 0;
  width: 100%;
  font-size: 1rem;
}
#inventory .filter-shopby, .inventory-head .filter-shopby {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (max-width: 39.99875em) {
  #inventory .filter-shopby, .inventory-head .filter-shopby {
    padding-bottom: 1rem;
  }
}
@media print, screen and (min-width: 40em) {
  #inventory .filter-shopby, .inventory-head .filter-shopby {
    border-bottom: 5px solid #7f8283;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 2rem;
    max-width: 80%;
  }
}
#inventory .filter-shopby label, #inventory .filter-shopby select, .inventory-head .filter-shopby label, .inventory-head .filter-shopby select {
  margin-bottom: 0;
}
#inventory .filter-shopby label, .inventory-head .filter-shopby label {
  margin-right: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  #inventory .filter-shopby label, .inventory-head .filter-shopby label {
    margin-right: 1rem;
  }
}
#inventory .filter-shopby select, .inventory-head .filter-shopby select {
  width: auto;
}
@media print, screen and (max-width: 39.99875em) {
  #inventory .filter-shopby select, .inventory-head .filter-shopby select {
    font-size: 0.9rem;
  }
}
#inventory .filter-shopby h5, .inventory-head .filter-shopby h5 {
  color: #eb212e;
  margin-bottom: 0;
}
@media print, screen and (max-width: 39.99875em) {
  #inventory .filter-shopby h5, .inventory-head .filter-shopby h5 {
    font-size: 1.15rem;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
}
#inventory #clearSKU, .inventory-head #clearSKU {
  display: none;
}

#inventory .options-bar {
  border-bottom: 5px solid #7f8283;
  padding-bottom: 2rem;
  color: #0a0a0a;
  font-weight: 400;
  font-size: 1rem;
}
#inventory .options-bar select, #inventory .options-bar input {
  font-size: 0.75rem;
}
#inventory .options-bar > div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#inventory .options-bar > div:first-child {
  border-right: 1px solid #7f8283;
}
#inventory .options-bar-view {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#inventory .options-bar-view i {
  font-size: 1.5rem;
  color: #e4e4e4;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
#inventory .options-bar-view i:hover {
  color: #eb212e;
}
#inventory .options-bar-view button.active-view i {
  color: #eb212e;
}
#inventory .options-bar-instock input {
  margin-bottom: 0;
}
#inventory .options-bar-sort select {
  width: auto;
  margin-bottom: 0;
  margin-left: 0.5rem;
}
#inventory .options-bar .result-count, #inventory .options-bar .result-count-empty {
  padding-right: 0.25rem;
}

@media print, screen and (max-width: 63.99875em) {
  #inventory .filter-selection, .inventory-head .filter-selection {
    border: 0;
    padding: 0.75rem;
    height: 50vh;
    overflow-x: scroll;
  }
  #inventory .accordion-item, .inventory-head .accordion-item {
    border: 1px solid #7f8283;
  }
}
#inventory .accordion-item.is-active a, .inventory-head .accordion-item.is-active a {
  color: #eb212e;
}
#inventory .accordion-title, .inventory-head .accordion-title {
  font-family: "Teko", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  border: 0;
}

.inv.thanks {
  /*  .page-content {
      padding-top:1rem;
    }*/
}
.inv.thanks h3 {
  color: #33cc33;
  font-size: 4rem;
}
.inv.thanks .buttons > a {
  background-color: #eb212e;
  color: #fefefe;
  padding: 1rem 1.5rem;
  font-size: 1rem;
  letter-spacing: 0;
  text-transform: uppercase;
  font-weight: 400;
}
.inv.thanks .thanks-text {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .inv.thanks .thanks-text {
    padding-right: 3rem;
    padding-left: 3rem;
  }
}/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19jaGVja2JveC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2hlbHAtdGV4dC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faW5wdXQtZ3JvdXAuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19zZWxlY3Quc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2Vycm9yLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9faGVscGVycy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fcHJpbnQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY2xhc3Nlcy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fZ3V0dGVyLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NvbHVtbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19zaXplLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX3Bvc2l0aW9uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2xheW91dC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Nsb3NlLWJ1dHRvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19wcm9ncmVzcy1iYXIuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fc2xpZGVyLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJsZS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19iYWRnZS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2NhcmQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcGFnaW5hdGlvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b29sdGlwLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZWRpYS1vYmplY3Quc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb3JiaXQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190YWJzLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RodW1ibmFpbC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX21lbnUtaWNvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24tbWVudS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24tbWVudS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vZmYtY2FudmFzLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aXRsZS1iYXIuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9wLWJhci5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL192aXNpYmlsaXR5LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL190cmFuc2l0aW9uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fa2V5ZnJhbWUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zbGlkZS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19oaW5nZS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2LzJjcmF2ZTIwMjUvbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3pvb20uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19hbmltYXRpb24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9zbGljay1jYXJvdXNlbC9zbGljay9zbGljay10aGVtZS5zY3NzIiwib3ZlcnJpZGVzL3NsaWNrLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvMmNyYXZlMjAyNS9ub2RlX21vZHVsZXMvc2xpY2stY2Fyb3VzZWwvc2xpY2svc2xpY2suc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9tYWduaWZpYy1wb3B1cC9zcmMvY3NzL21haW4uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi8yY3JhdmUyMDI1L25vZGVfbW9kdWxlcy9tYWduaWZpYy1wb3B1cC9zcmMvY3NzL19zZXR0aW5ncy5zY3NzIiwiX2dlbmVyYWwuc2NzcyIsIl91dGlsaXR5LnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJob21lL19zZWN0aW9ucy5zY3NzIiwiaG9tZS9faGVyby5zY3NzIiwiaG9tZS9fZXhwbG9yZS5zY3NzIiwiaG9tZS9fcGVuY2lsLnNjc3MiLCJob21lL193aGVlbHMuc2NzcyIsImhvbWUvX3Nlcmllcy5zY3NzIiwiaG9tZS9fdGlyZXMtYWNjZXNzb3JpZXMuc2NzcyIsImhvbWUvX2N0YS5zY3NzIiwiaG9tZS9fZGVhbGVycy5zY3NzIiwiaG9tZS9fYWJvdXQuc2NzcyIsImhvbWUvX2luc3RhZ3JhbS5zY3NzIiwiX2ZpbHRlcnMuc2NzcyIsIl92ZWhpY2xlLWJhci5zY3NzIiwiX25hdi1zZWFyY2guc2NzcyIsIndoZWVsL19jb2xsZWN0aW9uLnNjc3MiLCJ3aGVlbC9fYnJhbmQuc2NzcyIsIndoZWVsL193aGVlbHMuc2NzcyIsIndoZWVsL193aGVlbC5zY3NzIiwid2hlZWwvX3N0YWdlLnNjc3MiLCJ3aGVlbC9fc3BlY3Muc2NzcyIsIndoZWVsL19pbmZvLnNjc3MiLCJ3aGVlbC9fY3RhLnNjc3MiLCJ3aGVlbC9fZGV0YWlscy1tZWRpYS5zY3NzIiwid2hlZWwvX3ZpZXctb24tdmVoaWNsZS5zY3NzIiwid2hlZWwvX3ZpZXctb24tdmVoaWNsZS1wb3B1cC5zY3NzIiwid2hlZWwvX3ZlaGljbGUtZ2FsbGVyeS5zY3NzIiwid2hlZWwvX3NwZWMtdGFicy5zY3NzIiwid2hlZWwvX2ZpbmlzaGVzLnNjc3MiLCJ3aGVlbC9fZ2FsbGVyeS5zY3NzIiwid2hlZWwvX25hdmlnYXRpb24uc2NzcyIsIndoZWVsL190aXRsZS5zY3NzIiwid2hlZWwvX2NhcnQuc2NzcyIsIndoZWVsL19zdWJtZW51LnNjc3MiLCJ3aGVlbC9maXRtZW50L19maWx0ZXIuc2NzcyIsIndoZWVsL2ZpdG1lbnQvX2luZm8uc2NzcyIsIndoZWVsL2ZpdG1lbnQvX3NwZWNzLnNjc3MiLCJ3aGVlbC9maXRtZW50L19zdGFnZS5zY3NzIiwid2hlZWwvZml0bWVudC9fd2hlZWxzLnNjc3MiLCJ0aXJlL190aXJlLnNjc3MiLCJ0aXJlL19pbmZvLnNjc3MiLCJ0aXJlL19jdGEuc2NzcyIsInRpcmUvX3NwZWNzLnNjc3MiLCJ0aXJlL190aXJlcy5zY3NzIiwiYWNjZXNzb3J5L19hY2Nlc3Nvcmllcy5zY3NzIiwiYWNjZXNzb3J5L19hY2Nlc3Nvcnkuc2NzcyIsImFjY2Vzc29yeS9fY3RhLnNjc3MiLCJhY2Nlc3NvcnkvX2Jhci5zY3NzIiwiZ2FsbGVyeS9fZmlsdGVyLnNjc3MiLCJnYWxsZXJ5L19sYW5kaW5nLnNjc3MiLCJnYWxsZXJ5L19kZXRhaWwuc2NzcyIsImNvbnRlbnQvX2NvbnRhY3Quc2NzcyIsImNvbnRlbnQvX3BhZ2Uuc2NzcyIsImNvbnRlbnQvX25ld3Muc2NzcyIsImNvbnRlbnQvX2Fib3V0LnNjc3MiLCJjb250ZW50L19kZWFsZXJzLnNjc3MiLCJjb250ZW50L19maXRtZW50LnNjc3MiLCJjb250ZW50L19lcnJvci5zY3NzIiwiY29udGVudC9fZG93bmxvYWRzLnNjc3MiLCJwb3B1cHMvX3BhY2thZ2Uuc2NzcyIsInBvcHVwcy9fYWNjZXNzb3J5LnNjc3MiLCJwb3B1cHMvX2dhbGxlcnktcXVvdGUuc2NzcyIsInBvcHVwcy9fZml0bWVudC1jaGVjay5zY3NzIiwidXRpbGl0eS9fZm94eWNhcnQuc2NzcyIsIm92ZXJyaWRlcy9fc25pcGNhcnQuc2NzcyIsImludmVudG9yeS9faGVhZGVyLnNjc3MiLCJpbnZlbnRvcnkvX2Zvb3Rlci5zY3NzIiwiaW52ZW50b3J5L19pbnZlbnRvcnkuc2NzcyIsImludmVudG9yeS9fbG9naW4uc2NzcyIsImludmVudG9yeS9fb3JkZXJzLnNjc3MiLCJpbnZlbnRvcnkvX2NhcnQuc2NzcyIsImludmVudG9yeS9fZmlsdGVyLnNjc3MiLCJpbnZlbnRvcnkvX3RoYW5rcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7OztDQUFBO0FDQUE7Ozs7O0VBQUE7QUNtTFE7RUN0SU47SUFDRSxXQUFBO0lBQ0EsVUFBQTtJQUNBLGNBQUE7RUovQkY7QUFDRjtBS2ZFLDJFQUFBO0FBUUE7RUFDRSxpQkFBQTtFQUNBLDhCQUFBO0FMVUo7O0FLRkU7RUFDRSxTQUFBO0FMS0o7O0FLQ0U7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7QUxFSjs7QUtPRTtFQUNFLCtCQUFBO1VBQUEsdUJBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7QUxKSjs7QUtVRTtFQUNFLGlDQUFBO0VBQ0EsY0FBQTtBTFBKOztBS2VFO0VBQ0UsNkJBQUE7QUxaSjs7QUtrQkU7RUFDRSxnQkFBQTtFQUNBLGlDQUFBO0FMZko7O0FLb0JFOztFQUVFLG1CQUFBO0FMakJKOztBS3VCRTs7O0VBR0UsaUNBQUE7RUFDQSxjQUFBO0FMcEJKOztBS3lCRTtFQUNFLGNBQUE7QUx0Qko7O0FLNEJFOztFQUVFLGNBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSx3QkFBQTtBTHpCSjs7QUs0QkU7RUFDRSxlQUFBO0FMekJKOztBSzRCRTtFQUNFLFdBQUE7QUx6Qko7O0FLaUNFO0VBQ0Usa0JBQUE7QUw5Qko7O0FLdUNFOzs7OztFQUtFLG9CQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsU0FBQTtBTHBDSjs7QUswQ0U7O0VBRUUsaUJBQUE7QUx2Q0o7O0FLNkNFOztFQUVFLG9CQUFBO0FMMUNKOztBSytDRTs7OztFQUlFLDBCQUFBO0FMNUNKOztBS2lERTs7OztFQUlFLGtCQUFBO0VBQ0EsVUFBQTtBTDlDSjs7QUttREU7Ozs7RUFJRSw4QkFBQTtBTGhESjs7QUtxREU7RUFDRSw4QkFBQTtBTGxESjs7QUswREU7RUFDRSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsVUFBQTtFQUNBLG1CQUFBO0FMdkRKOztBSzRERTtFQUNFLHdCQUFBO0FMekRKOztBSzhERTtFQUNFLGNBQUE7QUwzREo7O0FLaUVFOztFQUVFLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxVQUFBO0FMOURKOztBS21FRTs7RUFFRSxZQUFBO0FMaEVKOztBS3NFRTtFQUNFLDZCQUFBO0VBQ0Esb0JBQUE7QUxuRUo7O0FLd0VFO0VBQ0Usd0JBQUE7QUxyRUo7O0FLMkVFO0VBQ0UsMEJBQUE7RUFDQSxhQUFBO0FMeEVKOztBS2dGRTtFQUNFLGNBQUE7QUw3RUo7O0FLa0ZFO0VBQ0Usa0JBQUE7QUwvRUo7O0FLdUZFO0VBQ0UsYUFBQTtBTHBGSjs7QUt5RkU7RUFDRSxhQUFBO0FMdEZKOztBSzhGSTs7Ozs7OztFQUNFLGFBQUE7QUxyRk47O0FLMEZFO0VBQ0UsMkJBQUE7RUFDQSx5QkFBQTtBTHZGSjs7QU1qRUU7RUFDRSx3RUFBQTtBTm9FSjs7QU1qRUU7RUFDRSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0EsZUNyR2U7QVB5S25COztBTWhFRTs7O0VBR0UsMkJBQUE7VUFBQSxtQkFBQTtBTm1FSjs7QU0vREU7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQVVBLG1CQzlHSTtFRGdISixtRUM3R2U7RUQ4R2YsbUJDMUdtQjtFRDJHbkIsZ0JDOUhnQjtFRCtIaEIsY0NwSEk7RUR1SEYsbUNBQUE7RUFDQSxrQ0FBQTtBTnNETjs7QU1sREU7RUFFRSxxQkFBQTtFQUNBLHNCQUFBO0VBR0EsZUFBQTtFQUNBLFlBQUE7RUFDQSwrQkFBQTtBTmtESjs7QU05Q0U7RUFDRSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkNqSVk7QVBrTGhCOztBTTdDRTtFQUNFLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JDeElZO0FQd0xoQjs7QU16Q0k7Ozs7OztFQUdFLDBCQUFBO0FOK0NOOztBUTFERTtFQUNFLFVBQUE7QVI2REo7QU05Q0U7RUFFRSxVQUFBO0VBQ0Esd0JBQUE7S0FBQSxxQkFBQTtVQUFBLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGdCQzVKWTtFRDZKWix1QkFBQTtFQUNBLGNBQUE7RUFDQSxZQS9HbUI7QU44SnZCOztBTTNDRTtFQUNFLGNBQUE7RUFDQSxpQ0FBQTtBTjhDSjs7QU0xQ0U7Ozs7O0VBS0Usb0JBQUE7QU42Q0o7O0FNekNFO0VBQ0UseUJBQUE7QU40Q0o7O0FNekNFO0VBQ0Usd0JBQUE7QU40Q0o7O0FTOUtFOztFQUVFLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQXZDRixjQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFMUztFQU1ULGdCQUFBO0VBQ0EsZUF0Q2M7RUF3Q2QseUJGOFJhO0VFN1JiLGdCRnhCYztFRXlCZCx5QkZsQ007RUVtQ04seURGNlJhO1VFN1JiLGlERjZSYTtFRTNSYixvQkZtUmtCO0VFbFJsQixlRm1SZ0I7RUVsUmhCLG1CRmhDcUI7RUVpQ3JCLGdCRnBEa0I7RUVxRGxCLGNGMUNNO0VFNkNKLDJFRnVSZTtFRXZSZixtRUZ1UmU7RUV2UmYsMkRGdVJlO0VFdlJmLG9GRnVSZTtBUGxFbkI7QVNqTkU7O0VBQ0UsYUFBQTtFQUNBLHlCRjZRaUI7RUU1UWpCLHlCRm5ESTtFRW9ESixtQ0Y2UWlCO1VFN1FqQiwyQkY2UWlCO0VFMVFmLDJFRjRRYTtFRTVRYixtRUY0UWE7RUU1UWIsMkRGNFFhO0VFNVFiLG9GRjRRYTtBUDFEbkI7O0FTcE1FO0VBQ0UsZUFBQTtBVHVNSjtBU3JNSTtFQUNFLFlBQUE7QVR1TU47O0FTaE1JOzs7RUFFRSx5QkZ0Rk87RUV1RlAsbUJGK09rQjtBUDNDeEI7O0FTL0xFOztFQUVFLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLGdCRmxGWTtBUG9SaEI7O0FTOUxFO0VBQ0UsOEJBQUE7VUFBQSxzQkFBQTtBVGlNSjs7QVNoTEU7RUFDRSxjRnJIVTtBUHdTZDs7QVNwTEU7RUFDRSxjRnJIVTtBUHdTZDs7QVNwTEU7RUFDRSxjRnJIVTtBUHdTZDs7QVNwTEU7RUFDRSxjRnJIVTtBUHdTZDs7QVNwTEU7RUFDRSxjRnJIVTtBUHdTZDs7QVUxVkU7OztFQUdFLGdCQUFBO0FWNlZKOztBVXpWRTs7RUFFRSxxQkFBQTtFQUNBLHdCQUFBO0VBRUEsbUJBQUE7RUFDQSxrQkgrVVc7RUc5VVgsZ0JBQUE7QVYyVko7QVV6Vkk7O0VBQ0UsZUFBQTtBVjRWTjs7QVV2VkU7O0VBRUUsb0JBQUE7QVYwVko7O0FVdFZFO0VBQ0UsV0FBQTtBVnlWSjs7QVdwVkU7RUFsQkEsY0FBQTtFQUNBLFNBQUE7RUFFQSxtQkprVnFCO0VJalZyQixtQkp3Q3FCO0VJdkNyQixnQkprVnVCO0VJalZ2QixjSjhCTTtBUDJVUjtBVzFWSTtFQVRGLGdCQUFBO0VBQ0EsZ0JKWWtCO0VJWGxCLG9CQUFBO0FYc1dGOztBWXhYRTtFQUdFLG1CQUZhO0VBR2Isb0JMOFVpQjtFSzdVakIsa0JMOFVrQjtFSzdVbEIsY0xrQ0k7QVB1VlI7O0FhMVhFO0VBQ0UsY0FBQTtFQUNBLFdBQUE7RUFDQSxtQk53VVc7QVBxRGY7QWF0WE07RUFDRSxzQkFBQTtBYndYUjtBYW5YTTtFQUNFLHNCQUFBO0FicVhSOztBYWhYRTs7OztFQUNFLFNBQUE7RUFDQSxtQkFBQTtFQUdFLG1CQUFBO0VBQ0Esc0JBQUE7QWJvWE47O0FhaFhFO0VBRUUsZUFBQTtFQUNBLHlCTjhTa0I7RU03U2xCLG1CTkpTO0VNTVQsY05ISTtFTUlKLGtCQUFBO0VBQ0EsbUJBQUE7RUFRRSxTQUFBO0VBQ0EsWUFBQTtBYjBXTjtBYXRXTTtFQUNFLGVBQUE7QWJ3V1I7QWFyV007RUFDRSxjQUFBO0FidVdSOztBYWxXRTtFQUVFLGdCQUFBO0Fib1dKOztBYTVWRTtFQUVFLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBT0UsU0FBQTtFQUNBLFlBQUE7QWJ3Vk47QWFyVkk7Ozs7RUFXSSxpQkFyR0c7RUF1R0wsY0FBQTtFQUNBLGlCQUFBO0VBQ0EsZU5zUFk7QVB5RmxCOztBYXhVTTtFQUNFLG1CQUFBO0FiMlVSOztBYzlhRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtBZGliSjs7QWM5YUU7RUFDRSxlQUFBO0VBQ0EscUJBQUE7QWRpYko7O0FjOWFFO0VBeEJBLGtCUDBVZ0I7RU96VWhCLGdCUHdVaUI7RU92VWpCLHlCUHNVZ0I7QVBvSWxCO0FjeGNFO0VBRUUsU0FBQTtFQUNBLHVCQUFBO0VBQ0Esb0JQbVVhO0FQc0lqQjs7QWVuWkU7RUFoRUEsaUJBRlM7RUFHVCxnQkFBQTtFQUNBLGVONkJjO0VNM0JkLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLHlCUmdXYTtFUS9WYixnQlIwQ2M7RVF6Q2QseUJSZ0NNO0VROUJOLG9CUnNWa0I7RVFyVmxCLGVSc1ZnQjtFUXJWaEIsbUJSbUNxQjtFUWxDckIsZ0JSZWtCO0VRZGxCLGNSeUJNO0VRdEJKLDJFUjBWZTtFUTFWZixtRVIwVmU7RVExVmYsMkRSMFZlO0VRMVZmLG9GUjBWZTtFUXRWZiw4QkFBQTtFQUNBLHVDQUFBO0VBQ0EsNEJBQUE7RUFDQSx3QkFBQTtFQUVBLHFCQUFBO0VQMkdGLHdPQUFBO0FScVdGO0FRbldFO0VPdEVBO0lQeUVJLHVXQUFBO0VSb1dKO0FBQ0Y7QWUvY0U7RUFDRSxhQUFBO0VBQ0EseUJScVVpQjtFUXBVakIseUJSS0k7RVFKSixtQ1JxVWlCO1VRclVqQiwyQlJxVWlCO0VRbFVmLDJFUm9VYTtFUXBVYixtRVJvVWE7RVFwVWIsMkRSb1VhO0VRcFViLG9GUm9VYTtBUDJJbkI7QWUxY0U7RUFDRSx5QlJUUztFUVVULG1CUjRUb0I7QVBnSnhCO0FleGNFO0VBQ0UsYUFBQTtBZjBjSjtBZXZjRTtFQUNFLFlBQUE7RUFDQSxzQkFBQTtBZnljSjtBZXZjRTtFQUNFLGNBQUE7RUFDQSxpQkFBQTtBZnljSjs7QWdCL2VFO0VBQ0UscUJUZ0p1QjtFUy9JdkIsd0NBQUE7QWhCa2ZKO0FnQmhmSTtFQUNFLGNUNElxQjtBUHNXM0I7QWdCbmZJO0VBQ0UsY1Q0SXFCO0FQc1czQjtBZ0JuZkk7RUFDRSxjVDRJcUI7QVBzVzNCO0FnQm5mSTtFQUNFLGNUNElxQjtBUHNXM0I7QWdCbmZJO0VBQ0UsY1Q0SXFCO0FQc1czQjs7QWdCeGRJO0VBQ0UsY1RrSHFCO0FQeVczQjs7QWdCdGRFO0VBekJBLGFBQUE7RUFDQSxtQkFBQTtFQUNBLG1CVDJTYTtFU3pTYixrQlRvSXNCO0VTbkl0QixpQlRTbUI7RVNSbkIsY1RpSWtCO0FQaVhwQjtBZ0I1ZEk7RUFDRSxjQUFBO0FoQjhkTjs7QWlCaFZFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQUE7RUFDQSxVQUFBO0FqQm1WSjs7QWlCL1VFO0VBQ0UsbUJWckhzQjtFVXVIdEIsa0JBQUE7RUFDQSxnQlZ6SG1CO0VVMEhuQixrQ1Z4SHVCO0FQeWMzQjs7QWlCN1VFOztFQUVFLGtCQUFBO0VBQ0Esb0JBQUE7QWpCZ1ZKOztBaUI1VUU7O0VBRUUsaUJWdk1pQjtFVXdNakIsb0JBQUE7QWpCK1VKOztBaUIzVUU7RUFDRSxjVi9JYztFVWdKZCxvQkFBQTtBakI4VUo7O0FpQjFVRTs7Ozs7O0VBTUUsbUVWN05lO0VVOE5mLGtCVm5MZ0I7RVVvTGhCLG1CVjNObUI7RVU0Tm5CLGNWbkxXO0VVb0xYLGtDVi9Kb0I7QVA0ZXhCO0FpQjNVSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNWM09RO0FQNmpCZDs7QWlCelVRO0VBSUksaUJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQmlUWjs7QWlCaFZRO0VBSUksa0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQndUWjs7QWlCdlZRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQitUWjs7QWlCOVZRO0VBSUksbUJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQnNVWjs7QWlCcldRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQjZVWjs7QWlCNVdRO0VBSUksZUFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWpCb1ZaOztBRy9lUTtFYzRIQTtJQUlJLGVBRGlCO0VqQnFYM0I7RWlCeFhNO0lBSUksaUJBRGlCO0VqQndYM0I7RWlCM1hNO0lBSUksb0JBRGlCO0VqQjJYM0I7RWlCOVhNO0lBSUksb0JBRGlCO0VqQjhYM0I7RWlCallNO0lBSUksa0JBRGlCO0VqQmlZM0I7RWlCcFlNO0lBSUksZUFEaUI7RWpCb1kzQjtBQUNGO0FpQmpXRTtFQUNFLG9CQUFBO0VBQ0EsY0MxTmdCO0VEMk5oQixxQlZ4TXFCO0VVME1yQixlQUFBO0FqQmtXSjtBaUJoV0k7RUFFRSxpQ1YvTWU7QVBnakJyQjtBaUIzVkk7RUFDRSxTQUFBO0FqQjZWTjs7QWlCeFZFO0VBQ0UsV0FBQTtFQUVBLGdCVjdUVztFVThUWCxTQUFBO0VBQ0Esb0JWM05RO0VVNk5SLGFBQUE7RUFDQSxlQUFBO0VBQ0EsZ0NWaE9RO0VVaU9SLGNBQUE7QWpCeVZKOztBaUJyVkU7OztFQUdFLG1CVnJQc0I7RVVzUHRCLDRCVnBPa0I7RVVxT2xCLGdCVnhQbUI7QVBnbEJ2Qjs7QWlCcFZFO0VBQ0Usa0JBQUE7QWpCdVZKOztBaUJuVkU7RUFDRSxvQlY5T2U7RVUrT2YscUJWalBjO0FQdWtCbEI7O0FpQmxWRTtFQUNFLG9CVnBQZTtBUHlrQm5COztBaUJoVkk7RUFDRSxvQlZ6UG9CO0VVMFBwQixnQkFBQTtBakJtVk47O0FpQjlVRTtFQUNFLG1CVi9QcUI7QVBnbEJ6QjtBaUIvVUk7RUFDRSxxQlZoUXdCO0VVaVF4QixpQlZ6VmU7QVAwcUJyQjs7QWlCNVVFO0VBQ0UsZ0JBQUE7RUFDQSxzQ1Z0UWlCO0VVdVFqQiw4QlZ0UWdCO0FQcWxCcEI7QWlCN1VJO0VBQ0UsZ0JWcFNpQjtFVXFTakIsY1YvV007QVA4ckJaOztBaUJqVUU7RUFDRSxpQ1ZoUmE7RVVpUmIsWUFBQTtFQUNBLHFCQUFBO0FqQm9VSjs7QWlCaFVFO0VBQ0UsU0FBQTtBakJtVUo7O0FpQnhURTtFQUNFLFNBQUE7RUFDQSwyQlZ0U2dCO0VVd1NoQix5QlZ0WlM7RVV3WlQsNERWcldvQjtFVXNXcEIsY1Z0Wkk7QVArc0JSOztBbUJ2b0JFO0VBQ0Usa0JaOENtQjtFWTdDbkIscUJaOENzQjtFWTVDdEIsbUJacEVtQjtFWXFFbkIsZ0JadUNtQjtFWXRDbkIsY1ovRVE7QVB3dEJaOztBbUJyb0JFO0VBQ0UsZVorQmE7RVk5QmIsZ0JaK0JjO0FQeW1CbEI7O0FtQnBvQkU7RUFDRSxpQlpnQ2E7RVkvQmIsY0FBQTtBbkJ1b0JKO0FtQnJvQkk7RUFDRSxpQkFBQTtBbkJ1b0JOOztBbUJqb0JJO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FuQm9vQk47O0FtQmhvQkU7RUFqRkEsY0FBQTtFQUNBLGNaMUJVO0VZMkJWLG9CWjJFZTtBUDBvQmpCO0FtQm50QkU7RUFDRSxhWjBFa0I7QVAyb0J0Qjs7QW1Cam9CRTtFQTdFQSx5Qlo0Q1k7RVkzQ1oseUJaeENXO0VZMENYLDREWlNzQjtFWVJ0QixtQlpoQ3FCO0VZaUNyQixjWnpDTTtFWStDTixlQUFBO0VBQ0EsZUFBQTtFQUNBLHFCQUFBO0VBRUEscUNaOEJhO0FQNnFCZjs7QW1CcG9CRTtFQXRGQSx5Qlo0Q1k7RVkzQ1oseUJaeENXO0VZMENYLDREWlNzQjtFWVJ0QixtQlpoQ3FCO0VZaUNyQixjWnpDTTtFWXlETixjQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBRUEsYUE1Q21CO0VBNkNuQixxQkF6Q3lCO0FuQnN2QjNCOztBb0IxekJVO0VBQ0UsZ0JBUlU7QXBCcTBCdEI7O0FvQjl6QlU7RUFDRSxpQkFSVTtBcEJ5MEJ0Qjs7QW9CbDBCVTtFQUNFLGtCQVJVO0FwQjYwQnRCOztBb0J0MEJVO0VBQ0UsbUJBUlU7QXBCaTFCdEI7O0FHcnFCUTtFaUIxS0U7SUFDRSxnQkFIVTtFcEJzMUJwQjtFb0JwMUJRO0lBQ0UsaUJBSFU7RXBCeTFCcEI7RW9CdjFCUTtJQUNFLGtCQUhVO0VwQjQxQnBCO0VvQjExQlE7SUFDRSxtQkFIVTtFcEIrMUJwQjtBQUNGO0FHcHJCUTtFaUIxS0U7SUFDRSxnQkFIVTtFcEJvMkJwQjtFb0JsMkJRO0lBQ0UsaUJBSFU7RXBCdTJCcEI7RW9CcjJCUTtJQUNFLGtCQUhVO0VwQjAyQnBCO0VvQngyQlE7SUFDRSxtQkFIVTtFcEI2MkJwQjtBQUNGO0FxQnAyQkU7RUFBa0Isd0JBQUE7QXJCdTJCcEI7O0FxQnIyQkU7RUFDRTtJQUlJLGtDQUFBO0lBQ0EsdUJBQUE7SUFDQSxtQ0FBQTtZQUFBLDJCQUFBO0lBT0YsbUNBQUE7WUFBQSwyQkFBQTtJQUNBLDRCQUFBO0VyQisxQko7RXFCNTFCRTtJQUFrQix5QkFBQTtFckIrMUJwQjtFcUI5MUJFO0lBQWtCLHdCQUFBO0VyQmkyQnBCO0VxQi8xQkU7SUFBdUIseUJBQUE7RXJCazJCekI7RXFCajJCRTtJQUF1QixzQ0FBQTtFckJvMkJ6QjtFcUJuMkJFO0lBQXVCLG1DQUFBO0VyQnMyQnpCO0VxQnIyQkU7SUFBb0IsNkJBQUE7RXJCdzJCdEI7RXFCdjJCRTtJQUFvQiw4QkFBQTtFckIwMkJ0QjtFcUJ6MkJFO0lBQW9CLDhCQUFBO0VyQjQyQnRCO0VxQnoyQkU7O0lBQ1ksMEJBQUE7RXJCNDJCZDtFcUIxMkJJO0lBQWdCLDRCQUFBO0VyQjYyQnBCO0VxQnoyQkU7OztJQUVxQixXQUFBO0VyQjQyQnZCO0VxQnoyQkU7SUFBb0IsNkJBQUE7RXJCNDJCdEI7RXFCejJCRTs7SUFFRSx5QkFBQTtJQUNBLHdCQUFBO0VyQjIyQko7RXFCdjJCRTtJQUFRLDJCQUFBO0VyQjAyQlY7RXFCeDJCRTs7SUFDTSx3QkFBQTtFckIyMkJSO0VxQnoyQkU7SUFBTSwwQkFBQTtFckI0MkJSO0VxQjEyQkU7SUFBUSxhQUFBO0VyQjYyQlY7RXFCMzJCRTs7O0lBR0UsVUFBQTtJQUNBLFNBQUE7RXJCNjJCSjtFcUJ6MkJFOztJQUNLLHVCQUFBO0VyQjQyQlA7RXFCejJCRTtJQUNFLHVCQUFBO0VyQjIyQko7QUFDRjtBc0I3NkJFO0VDc0VBLGdCaEJoRGE7RWdCYVgsa0JBQUE7RUFDQSxpQkFBQTtBdkI4NEJKO0FRL3hCRTtFQUVFLGNBQUE7RUFDQSxZQUFBO0FSZ3lCSjtBUXh4QkU7RUFDRSxXQUFBO0FSMHhCSjtBc0JwN0JNO0VFVkYsZ0JBRlU7RUFHVixlQUhVO0F4Qm84QmQ7QXNCbDdCSTtFQzhDQSx1QkFGUztFQUdULHNCQUhTO0F2QjA0QmI7QUd6eUJRO0VtQjdJSjtJQzhDQSx3QkFGUztJQUdULHVCQUhTO0V2Qis0Qlg7QUFDRjtBRy95QlE7RW1CN0lKO0lDOENBLHdCQUZTO0lBR1QsdUJBSFM7RXZCcTVCWDtBQUNGO0FzQi83Qk07RUFDRSxlQUFBO0VBQ0EsY0FBQTtBdEJpOEJSO0FzQjU3Qkk7RUNpREYsZUFIUztBdkJpNUJYO0FzQjU3Qk07RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0F0Qjg3QlI7QXNCMTdCSTtFQ3dDRixlQUhTO0F2Qnc1Qlg7QXNCcDdCVTtFRTVDTix1QkFGVTtFQUdWLHNCQUhVO0F4QnMrQmQ7QXNCeDdCVTtFRTVDTix3QkFGVTtFQUdWLHVCQUhVO0F4QjArQmQ7O0FzQm43QkU7RUc5Q0EsV25CaUdZO0VvQmhIWixXQUFBO0VGUUUsdUJBRlU7RUFHVixzQkFIVTtBeEJpL0JkO0FHbDFCUTtFbUJ4R047SUVyREUsd0JBRlU7SUFHVix1QkFIVTtFeEJzL0JaO0FBQ0Y7QTJCeC9CSTtFQUNFLFdyQjBHUTtFcUJ6R1IsV0FBQTtBM0IwL0JOO0EyQnIvQk07RUFDRSxZckJvR087QU5tNUJmO0EyQjE4QkU7RUFDRSxXckJxRFU7QU51NUJkOztBc0I5N0JFO0VBQ0UsV0FBQTtBdEJpOEJKOztBc0I3N0JFO0VBQ0UsZUFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QXRCZzhCSjs7QXNCMTdCTTtFSXhGSixvQkFBQTtBMUJzaENGOztBc0J2N0JVO0VLekVOLGtCQUFBO0VBQ0EsbUJBSFM7QTNCdWdDYjs7QXNCdDdCVTtFSy9FTixrQkFBQTtFQUNBLG9CQUhTO0EzQjRnQ2I7O0FzQmo3QlE7RUszRE4sZUFBQTtBM0JnL0JGOztBc0I1OEJNO0VJeEZKLHFCQUFBO0ExQndpQ0Y7O0FzQno4QlU7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0J5aENiOztBc0J4OEJVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCOGhDYjs7QXNCbjhCUTtFSzNETiwwQkFBQTtBM0JrZ0NGOztBc0I5OUJNO0VJeEZKLFVBQUE7QTFCMGpDRjs7QXNCMzlCVTtFS3pFTixrQkFBQTtFQUNBLFNBSFM7QTNCMmlDYjs7QXNCMTlCVTtFSy9FTixrQkFBQTtFQUNBLFVBSFM7QTNCZ2pDYjs7QXNCcjlCUTtFSzNETiwyQkFBQTtBM0JvaENGOztBc0JoL0JNO0VJeEZKLHFCQUFBO0ExQjRrQ0Y7O0FzQjcrQlU7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0I2akNiOztBc0I1K0JVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCa2tDYjs7QXNCditCUTtFSzNETixnQkFBQTtBM0JzaUNGOztBc0JsZ0NNO0VJeEZKLHFCQUFBO0ExQjhsQ0Y7O0FzQi8vQlU7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0Ira0NiOztBc0I5L0JVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCb2xDYjs7QXNCei9CUTtFSzNETiwyQkFBQTtBM0J3akNGOztBc0JwaENNO0VJeEZKLFVBQUE7QTFCZ25DRjs7QXNCamhDVTtFS3pFTixrQkFBQTtFQUNBLFNBSFM7QTNCaW1DYjs7QXNCaGhDVTtFSy9FTixrQkFBQTtFQUNBLFVBSFM7QTNCc21DYjs7QXNCM2dDUTtFSzNETiwyQkFBQTtBM0Iwa0NGOztBc0J0aUNNO0VJeEZKLHFCQUFBO0ExQmtvQ0Y7O0FzQm5pQ1U7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0JtbkNiOztBc0JsaUNVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCd25DYjs7QXNCN2hDUTtFSzNETixnQkFBQTtBM0I0bENGOztBc0J4akNNO0VJeEZKLHFCQUFBO0ExQm9wQ0Y7O0FzQnJqQ1U7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0Jxb0NiOztBc0JwakNVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCMG9DYjs7QXNCL2lDUTtFSzNETiwyQkFBQTtBM0I4bUNGOztBc0Ixa0NNO0VJeEZKLFVBQUE7QTFCc3FDRjs7QXNCdmtDVTtFS3pFTixrQkFBQTtFQUNBLFNBSFM7QTNCdXBDYjs7QXNCdGtDVTtFSy9FTixrQkFBQTtFQUNBLFVBSFM7QTNCNHBDYjs7QXNCamtDUTtFSzNETiwyQkFBQTtBM0Jnb0NGOztBc0I1bENNO0VJeEZKLHFCQUFBO0ExQndyQ0Y7O0FzQnpsQ1U7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0J5cUNiOztBc0J4bENVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCOHFDYjs7QXNCbmxDUTtFSzNETixnQkFBQTtBM0JrcENGOztBc0I5bUNNO0VJeEZKLHFCQUFBO0ExQjBzQ0Y7O0FzQjNtQ1U7RUt6RU4sa0JBQUE7RUFDQSxvQkFIUztBM0IyckNiOztBc0IxbUNVO0VLL0VOLGtCQUFBO0VBQ0EscUJBSFM7QTNCZ3NDYjs7QXNCcm1DUTtFSzNETiwyQkFBQTtBM0JvcUNGOztBc0Job0NNO0VJeEZKLFdBQUE7QTFCNHRDRjs7QXNCN21DUTtFSzNETiwyQkFBQTtBM0I0cUNGOztBNEJ6dENFO0VBQ0UsV3RCd0dVO0VzQnZHVixXQUFBO0E1QjR0Q0o7QTRCdHNDSTtFQUNFLFdBQUE7QTVCd3NDTjtBNEJyc0NJO0VBQ0UsV0FBQTtBNUJ1c0NOO0E0QnBzQ0k7RUFDRSxXdEJ3RVE7QU44bkNkOztBNEJ2dUNFO0VBQ0UsV3RCd0dVO0VzQnZHVixVQUFBO0E1QjB1Q0o7QTRCcHRDSTtFQUNFLFdBQUE7QTVCc3RDTjtBNEJudENJO0VBQ0UsV0FBQTtBNUJxdENOO0E0Qmx0Q0k7RUFDRSxXdEJ3RVE7QU40b0NkOztBNEJydkNFO0VBQ0UsV3RCd0dVO0VzQnZHVixxQkFBQTtBNUJ3dkNKO0E0Qmx1Q0k7RUFDRSxXQUFBO0E1Qm91Q047QTRCanVDSTtFQUNFLFdBQUE7QTVCbXVDTjtBNEJodUNJO0VBQ0UsV3RCd0VRO0FOMHBDZDs7QTRCbndDRTtFQUNFLFd0QndHVTtFc0J2R1YsVUFBQTtBNUJzd0NKO0E0Qmh2Q0k7RUFDRSxXQUFBO0E1Qmt2Q047QTRCL3VDSTtFQUNFLFdBQUE7QTVCaXZDTjtBNEI5dUNJO0VBQ0UsV3RCd0VRO0FOd3FDZDs7QTRCanhDRTtFQUNFLFd0QndHVTtFc0J2R1YsVUFBQTtBNUJveENKO0E0Qjl2Q0k7RUFDRSxXQUFBO0E1Qmd3Q047QTRCN3ZDSTtFQUNFLFdBQUE7QTVCK3ZDTjtBNEI1dkNJO0VBQ0UsV3RCd0VRO0FOc3JDZDs7QTRCL3hDRTtFQUNFLFd0QndHVTtFc0J2R1YscUJBQUE7QTVCa3lDSjtBNEI1d0NJO0VBQ0UsV0FBQTtBNUI4d0NOO0E0QjN3Q0k7RUFDRSxXQUFBO0E1QjZ3Q047QTRCMXdDSTtFQUNFLFd0QndFUTtBTm9zQ2Q7O0E0Qjd5Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLHFCQUFBO0E1Qmd6Q0o7QTRCMXhDSTtFQUNFLFdBQUE7QTVCNHhDTjtBNEJ6eENJO0VBQ0UsV0FBQTtBNUIyeENOO0E0Qnh4Q0k7RUFDRSxXdEJ3RVE7QU5rdENkOztBNEIzekNFO0VBQ0UsV3RCd0dVO0VzQnZHVixZQUFBO0E1Qjh6Q0o7QTRCeHlDSTtFQUNFLFdBQUE7QTVCMHlDTjtBNEJ2eUNJO0VBQ0UsV0FBQTtBNUJ5eUNOO0E0QnR5Q0k7RUFDRSxXdEJ3RVE7QU5ndUNkOztBc0JsdENNO0VFdEhGLGdCQUZVO0VBR1YsZUFIVTtBeEIrMENkO0FzQnJ0Q007RUFDRSxlQUFBO0VBQ0EsY0FBQTtBdEJ1dENSOztBc0JudENJO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QXRCc3RDTjs7QXNCbHRDTTtFRXBJRix1QkFGVTtFQUdWLHNCQUhVO0F4QjYxQ2Q7O0FzQmx0Q007RUtySEYsaUJBQUE7RUFDQSxrQkFBQTtBM0IyMENKO0EyQjEwQ0k7RUFDRSxXQUFBO0VBQ0EsV0FBQTtBM0I0MENOOztBc0Ivc0NNO0VLbEhKLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QTNCcTBDRjtBMkI3MkNJO0VBQ0UsV3JCMEdRO0VxQnpHUixXQUFBO0EzQisyQ047QTJCMTJDTTtFQUNFLFlyQm9HTztBTnd3Q2Y7O0FHcHRDUTtFbUI3RUY7SUl4Rkosb0JBQUE7RTFCODNDQTtFc0IveENRO0lLekVOLGtCQUFBO0lBQ0EsbUJBSFM7RTNCODJDWDtFc0I3eENRO0lLL0VOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCazNDWDtFc0J2eENNO0lLM0ROLGVBQUE7RTNCcTFDQTtFc0JqekNJO0lJeEZKLHFCQUFBO0UxQjQ0Q0E7RXNCN3lDUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQjQzQ1g7RXNCM3lDUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQmc0Q1g7RXNCcnlDTTtJSzNETiwwQkFBQTtFM0JtMkNBO0VzQi96Q0k7SUl4RkosVUFBQTtFMUIwNUNBO0VzQjN6Q1E7SUt6RU4sa0JBQUE7SUFDQSxTQUhTO0UzQjA0Q1g7RXNCenpDUTtJSy9FTixrQkFBQTtJQUNBLFVBSFM7RTNCODRDWDtFc0JuekNNO0lLM0ROLDJCQUFBO0UzQmkzQ0E7RXNCNzBDSTtJSXhGSixxQkFBQTtFMUJ3NkNBO0VzQnowQ1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0J3NUNYO0VzQnYwQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0I0NUNYO0VzQmowQ007SUszRE4sZ0JBQUE7RTNCKzNDQTtFc0IzMUNJO0lJeEZKLHFCQUFBO0UxQnM3Q0E7RXNCdjFDUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQnM2Q1g7RXNCcjFDUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQjA2Q1g7RXNCLzBDTTtJSzNETiwyQkFBQTtFM0I2NENBO0VzQnoyQ0k7SUl4RkosVUFBQTtFMUJvOENBO0VzQnIyQ1E7SUt6RU4sa0JBQUE7SUFDQSxTQUhTO0UzQm83Q1g7RXNCbjJDUTtJSy9FTixrQkFBQTtJQUNBLFVBSFM7RTNCdzdDWDtFc0I3MUNNO0lLM0ROLDJCQUFBO0UzQjI1Q0E7RXNCdjNDSTtJSXhGSixxQkFBQTtFMUJrOUNBO0VzQm4zQ1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0JrOENYO0VzQmozQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0JzOENYO0VzQjMyQ007SUszRE4sZ0JBQUE7RTNCeTZDQTtFc0JyNENJO0lJeEZKLHFCQUFBO0UxQmcrQ0E7RXNCajRDUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQmc5Q1g7RXNCLzNDUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQm85Q1g7RXNCejNDTTtJSzNETiwyQkFBQTtFM0J1N0NBO0VzQm41Q0k7SUl4RkosVUFBQTtFMUI4K0NBO0VzQi80Q1E7SUt6RU4sa0JBQUE7SUFDQSxTQUhTO0UzQjg5Q1g7RXNCNzRDUTtJSy9FTixrQkFBQTtJQUNBLFVBSFM7RTNCaytDWDtFc0J2NENNO0lLM0ROLDJCQUFBO0UzQnE4Q0E7RXNCajZDSTtJSXhGSixxQkFBQTtFMUI0L0NBO0VzQjc1Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0I0K0NYO0VzQjM1Q1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0JnL0NYO0VzQnI1Q007SUszRE4sZ0JBQUE7RTNCbTlDQTtFc0IvNkNJO0lJeEZKLHFCQUFBO0UxQjBnREE7RXNCMzZDUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQjAvQ1g7RXNCejZDUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQjgvQ1g7RXNCbjZDTTtJSzNETiwyQkFBQTtFM0JpK0NBO0VzQjc3Q0k7SUl4RkosV0FBQTtFMUJ3aERBO0VzQno2Q007SUszRE4sMkJBQUE7RTNCdStDQTtFNEJwaERBO0lBQ0UsV3RCd0dVO0lzQnZHVixXQUFBO0U1QnNoREY7RTRCaGdERTtJQUNFLFdBQUE7RTVCa2dESjtFNEIvL0NFO0lBQ0UsV0FBQTtFNUJpZ0RKO0U0QjkvQ0U7SUFDRSxXdEJ3RVE7RU53N0NaO0U0QmppREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCbWlERjtFNEI3Z0RFO0lBQ0UsV0FBQTtFNUIrZ0RKO0U0QjVnREU7SUFDRSxXQUFBO0U1QjhnREo7RTRCM2dERTtJQUNFLFd0QndFUTtFTnE4Q1o7RTRCOWlEQTtJQUNFLFd0QndHVTtJc0J2R1YscUJBQUE7RTVCZ2pERjtFNEIxaERFO0lBQ0UsV0FBQTtFNUI0aERKO0U0QnpoREU7SUFDRSxXQUFBO0U1QjJoREo7RTRCeGhERTtJQUNFLFd0QndFUTtFTms5Q1o7RTRCM2pEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUI2akRGO0U0QnZpREU7SUFDRSxXQUFBO0U1QnlpREo7RTRCdGlERTtJQUNFLFdBQUE7RTVCd2lESjtFNEJyaURFO0lBQ0UsV3RCd0VRO0VOKzlDWjtFNEJ4a0RBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1QjBrREY7RTRCcGpERTtJQUNFLFdBQUE7RTVCc2pESjtFNEJuakRFO0lBQ0UsV0FBQTtFNUJxakRKO0U0QmxqREU7SUFDRSxXdEJ3RVE7RU40K0NaO0U0QnJsREE7SUFDRSxXdEJ3R1U7SXNCdkdWLHFCQUFBO0U1QnVsREY7RTRCamtERTtJQUNFLFdBQUE7RTVCbWtESjtFNEJoa0RFO0lBQ0UsV0FBQTtFNUJra0RKO0U0Qi9qREU7SUFDRSxXdEJ3RVE7RU55L0NaO0U0QmxtREE7SUFDRSxXdEJ3R1U7SXNCdkdWLHFCQUFBO0U1Qm9tREY7RTRCOWtERTtJQUNFLFdBQUE7RTVCZ2xESjtFNEI3a0RFO0lBQ0UsV0FBQTtFNUIra0RKO0U0QjVrREU7SUFDRSxXdEJ3RVE7RU5zZ0RaO0U0Qi9tREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFlBQUE7RTVCaW5ERjtFNEIzbERFO0lBQ0UsV0FBQTtFNUI2bERKO0U0QjFsREU7SUFDRSxXQUFBO0U1QjRsREo7RTRCemxERTtJQUNFLFd0QndFUTtFTm1oRFo7RXNCcmdESTtJRXRIRixnQkFGVTtJQUdWLGVBSFU7RXhCaW9EWjtFc0J2Z0RJO0lBQ0UsZUFBQTtJQUNBLGNBQUE7RXRCeWdETjtFc0JyZ0RFO0lBQ0UsZUFBQTtJQUNBLGNBQUE7RXRCdWdESjtFc0JuZ0RJO0lFcElGLHdCQUZVO0lBR1YsdUJBSFU7RXhCNm9EWjtFc0JsZ0RJO0lLckhGLGlCQUFBO0lBQ0Esa0JBQUE7RTNCMG5ERjtFMkJ6bkRFO0lBQ0UsV0FBQTtJQUNBLFdBQUE7RTNCMm5ESjtFc0I5L0NJO0lLbEhKLGdCQUFBO0lBQ0EsZUFBQTtJQUNBLGNBQUE7RTNCbW5EQTtFMkIzcERFO0lBQ0UsV3JCMEdRO0lxQnpHUixXQUFBO0UzQjZwREo7RTJCeHBESTtJQUNFLFlyQm9HTztFTnNqRGI7QUFDRjtBR25nRFE7RW1CN0VGO0lJeEZKLG9CQUFBO0UxQjRxREE7RXNCN2tEUTtJS3pFTixrQkFBQTtJQUNBLG1CQUhTO0UzQjRwRFg7RXNCM2tEUTtJSy9FTixrQkFBQTtJQUNBLG9CQUhTO0UzQmdxRFg7RXNCcmtETTtJSzNETixlQUFBO0UzQm1vREE7RXNCL2xESTtJSXhGSixxQkFBQTtFMUIwckRBO0VzQjNsRFE7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0IwcURYO0VzQnpsRFE7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0I4cURYO0VzQm5sRE07SUszRE4sMEJBQUE7RTNCaXBEQTtFc0I3bURJO0lJeEZKLFVBQUE7RTFCd3NEQTtFc0J6bURRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0J3ckRYO0VzQnZtRFE7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQjRyRFg7RXNCam1ETTtJSzNETiwyQkFBQTtFM0IrcERBO0VzQjNuREk7SUl4RkoscUJBQUE7RTFCc3REQTtFc0J2bkRRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCc3NEWDtFc0JybkRRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCMHNEWDtFc0IvbURNO0lLM0ROLGdCQUFBO0UzQjZxREE7RXNCem9ESTtJSXhGSixxQkFBQTtFMUJvdURBO0VzQnJvRFE7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0JvdERYO0VzQm5vRFE7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0J3dERYO0VzQjduRE07SUszRE4sMkJBQUE7RTNCMnJEQTtFc0J2cERJO0lJeEZKLFVBQUE7RTFCa3ZEQTtFc0JucERRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0JrdURYO0VzQmpwRFE7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQnN1RFg7RXNCM29ETTtJSzNETiwyQkFBQTtFM0J5c0RBO0VzQnJxREk7SUl4RkoscUJBQUE7RTFCZ3dEQTtFc0JqcURRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCZ3ZEWDtFc0IvcERRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCb3ZEWDtFc0J6cERNO0lLM0ROLGdCQUFBO0UzQnV0REE7RXNCbnJESTtJSXhGSixxQkFBQTtFMUI4d0RBO0VzQi9xRFE7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0I4dkRYO0VzQjdxRFE7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0Jrd0RYO0VzQnZxRE07SUszRE4sMkJBQUE7RTNCcXVEQTtFc0Jqc0RJO0lJeEZKLFVBQUE7RTFCNHhEQTtFc0I3ckRRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0I0d0RYO0VzQjNyRFE7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQmd4RFg7RXNCcnJETTtJSzNETiwyQkFBQTtFM0JtdkRBO0VzQi9zREk7SUl4RkoscUJBQUE7RTFCMHlEQTtFc0Izc0RRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCMHhEWDtFc0J6c0RRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCOHhEWDtFc0Juc0RNO0lLM0ROLGdCQUFBO0UzQml3REE7RXNCN3RESTtJSXhGSixxQkFBQTtFMUJ3ekRBO0VzQnp0RFE7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0J3eURYO0VzQnZ0RFE7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0I0eURYO0VzQmp0RE07SUszRE4sMkJBQUE7RTNCK3dEQTtFc0IzdURJO0lJeEZKLFdBQUE7RTFCczBEQTtFc0J2dERNO0lLM0ROLDJCQUFBO0UzQnF4REE7RTRCbDBEQTtJQUNFLFd0QndHVTtJc0J2R1YsV0FBQTtFNUJvMERGO0U0Qjl5REU7SUFDRSxXQUFBO0U1Qmd6REo7RTRCN3lERTtJQUNFLFdBQUE7RTVCK3lESjtFNEI1eURFO0lBQ0UsV3RCd0VRO0VOc3VEWjtFNEIvMERBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1QmkxREY7RTRCM3pERTtJQUNFLFdBQUE7RTVCNnpESjtFNEIxekRFO0lBQ0UsV0FBQTtFNUI0ekRKO0U0Qnp6REU7SUFDRSxXdEJ3RVE7RU5tdkRaO0U0QjUxREE7SUFDRSxXdEJ3R1U7SXNCdkdWLHFCQUFBO0U1QjgxREY7RTRCeDBERTtJQUNFLFdBQUE7RTVCMDBESjtFNEJ2MERFO0lBQ0UsV0FBQTtFNUJ5MERKO0U0QnQwREU7SUFDRSxXdEJ3RVE7RU5nd0RaO0U0QnoyREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCMjJERjtFNEJyMURFO0lBQ0UsV0FBQTtFNUJ1MURKO0U0QnAxREU7SUFDRSxXQUFBO0U1QnMxREo7RTRCbjFERTtJQUNFLFd0QndFUTtFTjZ3RFo7RTRCdDNEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUJ3M0RGO0U0QmwyREU7SUFDRSxXQUFBO0U1Qm8yREo7RTRCajJERTtJQUNFLFdBQUE7RTVCbTJESjtFNEJoMkRFO0lBQ0UsV3RCd0VRO0VOMHhEWjtFNEJuNERBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJxNERGO0U0Qi8yREU7SUFDRSxXQUFBO0U1QmkzREo7RTRCOTJERTtJQUNFLFdBQUE7RTVCZzNESjtFNEI3MkRFO0lBQ0UsV3RCd0VRO0VOdXlEWjtFNEJoNURBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJrNURGO0U0QjUzREU7SUFDRSxXQUFBO0U1QjgzREo7RTRCMzNERTtJQUNFLFdBQUE7RTVCNjNESjtFNEIxM0RFO0lBQ0UsV3RCd0VRO0VOb3pEWjtFNEI3NURBO0lBQ0UsV3RCd0dVO0lzQnZHVixZQUFBO0U1Qis1REY7RTRCejRERTtJQUNFLFdBQUE7RTVCMjRESjtFNEJ4NERFO0lBQ0UsV0FBQTtFNUIwNERKO0U0QnY0REU7SUFDRSxXdEJ3RVE7RU5pMERaO0VzQm56REk7SUV0SEYsZ0JBRlU7SUFHVixlQUhVO0V4Qis2RFo7RXNCcnpESTtJQUNFLGVBQUE7SUFDQSxjQUFB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QTdCODNETjtBNkIvMkRFO0VBSUUsY1hsSmdCO0FsQmdnRXBCO0E2QjMyREU7RUFDRSwwQkFYWTtBN0J3M0RoQjtBNkJyM0RFO0VBSUUsY3RCN05pQjtBUGlsRXJCO0E2QmozREU7RUFDRSwwQkFYWTtBN0I4M0RoQjtBNkIzM0RFO0VBSUUsY3RCN05pQjtBUHVsRXJCO0E2QnYzREU7RUFDRSxjQVhZO0E3Qm80RGhCO0E2Qmo0REU7RUFJRSxjdEI3TmlCO0FQNmxFckI7QTZCNzNERTtFQUNFLHdEQVhZO0E3QjA0RGhCO0E2QnY0REU7RUFJRSxjdEI3TmlCO0FQbW1FckI7QTZCbjRERTtFQUNFLHdCQVhZO0E3Qmc1RGhCO0E2Qjc0REU7RUFJRSxjdEI3TmlCO0FQeW1FckI7QTZCejRERTtFQUNFLHNEQVhZO0E3QnM1RGhCO0E2Qi94REk7RUFuR0YsYXRCNUJ3QjtFc0I2QnhCLG1CQUFBO0E3QnE0REY7QTZCejNERTtFckIzUEEsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBRUEsbUJBQUE7RUFDQSxtQnFCa1BPO0VyQmhQUCxXQUFBO0VBR0Usc0JBQUE7RUFDQSw2Q0FBQTtFcUJrUEEsa0JBQUE7RUFDQSxVQUFBO0VBRUEscUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBVE87QTdCMDREWDtBNkJueURRO0VBQ0UseUJYbFJVO0FsQnVqRXBCO0E2Qmh5RFk7RUFDRSx5QnRCbldPO0FQcW9FckI7QTZCbnlEWTtFQUNFLHlCdEJuV087QVB3b0VyQjtBNkJ0eURZO0VBQ0UseUJ0Qm5XTztBUDJvRXJCO0E2Qnp5RFk7RUFDRSx5QnRCbldPO0FQOG9FckI7QTZCNXlEWTtFQUNFLHlCdEJuV087QVBpcEVyQjtBNkJ0eURJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0E3Qnd5RE47O0E2Qm55REk7RUFFRSxxQkFBQTtBN0JxeUROOztBOEJ0L0RFO0VBcExBLG1CdkJzT21CO0V1QnhOakIsWUFBQTtBOUJpcUVKO0FRcGlFRTtFQUVFLGNBQUE7RUFDQSxZQUFBO0FScWlFSjtBUTdoRUU7RUFDRSxXQUFBO0FS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Rzl6RVE7RTJCc0hKO0lBRUksY0FBQTtFOUIwc0VOO0U4QnhzRU07SUFDRSxjQUFBO0lBQ0EsZUFBQTtFOUIwc0VSO0FBQ0Y7O0ErQjk0RUU7RUFkQSxrQkFBQTtFQUNBLFdBakZvQjtFQWtGcEIsY3hCcENVO0V3QnFDVixlQUFBO0EvQmc2RUY7QVFuekVFO0VBQ0UsVUFBQTtBUnF6RUo7QStCLzVFRTtFQUVFLGN4QjFDSTtBUDA4RVI7QStCbDVFUTtFQWxDTixjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtBL0J1N0VGOztBK0J4NUVRO0VBbENOLFdBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7QS9CODdFRjs7QWdDbCtFRTtFQVpBLHFCQUFBO0VBQ0EsMEJ6QnVXYztFeUJyV2QsZ0J6QjhCYztFeUI1QmQsaUJ6QmtXZ0I7RXlCaldoQixjQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBT0UsbUJkeUVnQjtFY3hFaEIsY3pCUUk7QVBrK0VSO0FnQ3YrRU07RUFDRSxtQnpCUGE7RXlCUWIsY0FBQTtBaEN5K0VSO0FnQzMrRU07RUFDRSxtQnpCUGE7RXlCUWIsY0FBQTtBaEM2K0VSO0FnQy8rRU07RUFDRSxtQnpCUGE7RXlCUWIsY0FBQTtBaENpL0VSO0FnQ24vRU07RUFDRSxtQnpCUGE7RXlCUWIsY0FBQTtBaENxL0VSO0FnQ3YvRU07RUFDRSxtQnpCUGE7RXlCUWIsY0FBQTtBaEN5L0VSOztBaUMzZ0ZFO0VBbkNBLFkxQjhkZ0I7RTBCN2RoQixtQjFCNERjO0UwQjNEZCxnQjFCK0RjO0UwQjlEZCx5QjFCa0RZO0FQZ2dGZDtBaUM3Z0ZRO0VBQ0UseUIxQklXO0FQMmdGckI7QWlDaGhGUTtFQUNFLHlCMUJJVztBUDhnRnJCO0FpQ25oRlE7RUFDRSx5QjFCSVc7QVBpaEZyQjtBaUN0aEZRO0VBQ0UseUIxQklXO0FQb2hGckI7QWlDemhGUTtFQUNFLHlCMUJJVztBUHVoRnJCOztBaUNwaEZFO0VBeENBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFNBQUE7RUFDQSxZQUFBO0VB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RUFDRSxxQ0EzSTZCO0FuQ210RmpDO0FtQ25rRkU7RUFDRSxtQkFqR3FCO0VBa0dyQixZQXRHc0I7QW5DMnFGMUI7QVEvaEZFO0VBQ0UsVUFBQTtBUmlpRko7O0FtQ2ovRUU7RUE3RUEsa0JBQUE7RUFDQSxRQUFBO0VBQ0EsbUNBQUE7VUFBQSwyQkFBQTtBbkNra0ZGOztBbUNsL0VFO0VBM0VBLFFBQUE7RUFDQSxhQUFBO0FuQ2lrRkY7QW1DL2pGRTtFQUNFLGNBQUE7QW5DaWtGSjs7QW1DcC9FRTtFQXZFQSxVQUFBO0FuQytqRkY7QW1DN2pGRTtFQUNFLGFBQUE7QW5DK2pGSjs7QW1Dci9FRTtFQXZEQSxjNUIwVG1CO0FQc3ZFckI7QW1DOWlGRTtFQUNFLFdBUmE7RUFTYixjNUJzVGlCO0U0QnJUakIsbUJBbURxQjtBbkM2L0V6QjtBbUM3aUZFO0VBQ0UsWTVCdVRtQjtFNEJ0VG5CLGE1QnNUbUI7RTRCclRuQixXQWZhO0VBZ0JiLFlBZmM7QW5DOGpGbEI7QW1DNWlGRTtFQUNFLGFBbEJxQjtBbkNna0Z6Qjs7QW1DbmdGRTtFQTNEQSxlNUIyVG9CO0FQdXdFdEI7QW1DaGtGRTtFQUNFLGFBUmE7RUFTYixlNUJ1VGtCO0U0QnRUbEIsa0JBdURxQjtBbkMyZ0Z6QjtBbUMvakZFO0VBQ0UsWTVCdVRtQjtFNEJ0VG5CLGE1QnNUbUI7RTRCclRuQixjQWZhO0VBZ0JiLGVBZmM7QW5DZ2xGbEI7QW1DOWpGRTtFQUNFLFVBbEJxQjtBbkNrbEZ6Qjs7QW1DamhGRTtFQS9EQSxjNUI0VG9CO0FQd3hFdEI7QW1DbGxGRTtFQUNFLFdBUmE7RUFTYixjNUJ3VGtCO0U0QnZUbEIsZUEyRHFCO0FuQ3loRnpCO0FtQ2psRkU7RUFDRSxZNUJ1VG1CO0U0QnRUbkIsYTVCc1RtQjtFNEJyVG5CLFdBZmE7RUFnQmIsWUFmYztBbkNrbUZsQjtBbUNobEZFO0VBQ0UsYUFsQnFCO0FuQ29tRnpCOztBb0N6Z0ZFO0VBOUdBLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CN0JuSWM7RTZCb0lkLGdCN0JoSWM7QVAydkZoQjtBb0NudEZFOzs7RUFHRSwwQzdCZ2JXO0U2Qi9hWCx5QjdCckRJO0FQMHdGUjs7QW9DanRGRTtFQUNFLGlDN0IyYVk7RTZCMWFaLGlCN0JuRGlCO0FQdXdGckI7O0FvQ2h0RkU7RUFDRSx1QzdCNGFvQjtFNkIzYXBCLGM3QmxFSTtBUHF4RlI7O0FvQy9zRkU7RUFDRSxvQzdCd2FvQjtFNkJ2YXBCLGM3QnhFSTtBUDB4RlI7O0FvQzNzRkk7O0VBQ0UsdUJBQUE7QXBDK3NGTjtBb0Mzc0ZJOzs7O0VBRUUsaUM3QmdaVTtFNkIvWVYsaUI3QjlFZTtFNkIrRWYsZ0JBQUE7QXBDK3NGTjs7QW9DenNGSTs7RUFFRSxpQzdCc1lVO0FQczBFaEI7O0FvQ2p4Rk07RUFDRSxnQkFBQTtFQUNBLDBDN0I4Y21CO0FQczBFM0I7O0FvQ3RzRk07RUFDRSx5QjdCM0dBO0FQb3pGUjtBb0Mxd0ZFO0VBQ0UsaUQ3QnliVztFNkJ4YlgseUI3QjVDSTtBUHd6RlI7O0FHbnNGUTtFaUMwR0o7SUFDRSxhQUFBO0VwQzZsRko7RW9DemxGQTtJQUNFLGFBQUE7RXBDMmxGRjtFb0N4bEZBOzs7SUFHRSxjQUFBO0VwQzBsRkY7RW9DdmxGQTtJQUNFLGFBQUE7RXBDeWxGRjtBQUNGOztBb0Mza0ZFO0VBdkdBLGNBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7QXBDc3JGRjs7QW9DL3FGSTtFQUNFLDZDN0I0VWlCO0FQczJFdkI7QW9DNXFGSTtFQUNFLDBDN0J1VWlCO0FQdTJFdkI7QW9DeHFGSTtFQUNFLDBDN0J3VFk7QVBrM0VsQjtBb0NucUZNO0VBQ0UsNkM3QmlUaUI7QVBvM0V6Qjs7QW9DdGxGRTtFQUNFLGdCQUFBO0FwQ3lsRko7O0FxQzcyRkU7RUFYQSxxQkFBQTtFQUNBLGdCOUJ5TGU7RThCeExmLGM5QnVMYztFOEJyTGQsa0JBQUE7RUFFQSxpQjlCcUxnQjtFOEJwTGhCLGtCQUFBO0VBT0UsbUJuQjBFZ0I7RW1CekVoQixjOUJTSTtBUDIyRlI7QXFDajNGTTtFQUNFLG1COUJOYTtFOEJPYixjQUFBO0FyQ20zRlI7QXFDcjNGTTtFQUNFLG1COUJOYTtFOEJPYixjQUFBO0FyQ3UzRlI7QXFDejNGTTtFQUNFLG1COUJOYTtFOEJPYixjQUFBO0FyQzIzRlI7QXFDNzNGTTtFQUNFLG1COUJOYTtFOEJPYixjQUFBO0FyQyszRlI7QXFDajRGTTtFQUNFLG1COUJOYTtFOEJPYixjQUFBO0FyQ200RlI7O0FzQzkwRkU7RUEvQ0Esa0IvQnNLbUI7RStCcktuQixnQkFBQTtBdENpNEZGO0FRcHhGRTtFQUVFLGNBQUE7RUFDQSxZQUFBO0FScXhGSjtBUTd3RkU7RUFDRSxXQUFBO0FSK3dGSjtBc0NuNEZFO0VBQ0UsV0FBQTtFQUVBLG9CL0I4SnlCO0UrQjdKekIsYy9CYkk7RStCY0osZUFBQTtFQUdFLHlCQUFBO0F0Q2s0Rk47QXNDMTNGUTtFQUNFLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsWUFQUTtFQVFSLGMvQmhDSTtBUDQ1RmQ7QXNDbDNGRTtFQUNFLGNwQndCZ0I7QWxCNDFGcEI7QXNDbDNGSTtFQUNFLDBCQUFBO0F0Q28zRk47QXNDMzJGSTtFQUNFLGMvQnhEUTtFK0J5RFIsbUJBQUE7QXRDNjJGTjs7QXVDcjRGRTtFQXBCQSw2Q0FGYTtFQUdiLGNBQUE7RUF2QkEsa0JBQUE7RUFDQSxrQmhDa09lO0VnQ2pPZixhQUFBO0VBRUEsd0NoQzhOZTtFZ0M3TmYsZ0JoQ2dCYztBUG82RmhCO0F1Q2o3RkU7RUFDRSxhQUFBO0F2Q203Rko7QXVDaDdGRTtFQUNFLGdCQUFBO0F2Q2s3Rko7QXVDajVGTTtFQXhCSixxRUFGYTtFQUdiLGNBQUE7QXZDNDZGRjtBdUNyNUZNO0VBeEJKLDZDQUZhO0VBR2IsY0FBQTtBdkNnN0ZGO0F1Q3o1Rk07RUF4QkosNENBRmE7RUFHYixjQUFBO0F2Q283RkY7QXVDNzVGTTtFQXhCSiwwQ0FGYTtFQUdiLGNBQUE7QXZDdzdGRjtBdUNqNkZNO0VBeEJKLHVDQUZhO0VBR2IsY0FBQTtBdkM0N0ZGO0F1Qy81Rk07RUF6QkosbUJBd0IyQjtFQXZCM0IscUJBdUIyQjtFQXRCM0Isc0JBc0IyQjtFQXJCM0Isb0JBcUIyQjtBdkNzNkY3QjtBdUNyNkZNO0VBekJKLGlCQXdCMkI7RUF2QjNCLG1CQXVCMkI7RUF0QjNCLG9CQXNCMkI7RUFyQjNCLGtCQXFCMkI7QXZDNDZGN0I7O0F3Q2w2RkU7RUFsREEsbUJqQ01jO0VpQ0pkLHlCakNtT1k7RWlDbE9aLGdCakNPYztFaUNMZCxtQmpDSk07RWlDS04sd0JqQ2dPWTtVaUNoT1osZ0JqQ2dPWTtFaUM5TlosZ0JBQUE7RUFDQSxjakNUTTtBUDg5RlI7QXdDbjlGRTtFQUNFLGdCQUFBO0F4Q3E5Rko7O0F3QzM2RkU7RUE1QkEsYWpDbkJlO0VpQ29CZixtQmpDOUJXO0FQeStGYjtBd0N6OEZFO0VBQ0UsZ0JBQUE7QXhDMjhGSjs7QXdDLzZGRTtFQWhCQSxhakNuQ2U7QVBzK0ZqQjtBd0NqOEZFO0VBQ0UsZ0JBQUE7QXhDbThGSjs7QXdDaDdGRTtFQUNFLGVBQUE7QXhDbTdGSjs7QXlDMytGRTtFQTVCQSxrQkFBQTtFQUNBLFdBQUE7RUFFQSxhQUFBO0VBRUEsWWxDNlJlO0VrQzVSZixhbEN3UmlCO0VrQ3RSakIsa0JBQUE7RUFDQSx5QmxDdVJnQjtFa0N0UmhCLGdCbENtQmM7RWtDbEJkLHlCbENTTTtFa0NQTixlbENvUm1CO0FQbXZGckI7QXlDbmdHRTtFQUNFLGNBQUE7QXpDcWdHSjtBeUNsZ0dFO0VBQ0UsY0FBQTtFQUNBLG1CQUFBO0F6Q29nR0o7O0F5Q3ovRk07RUFDRSxZbENpUVM7QVAydkZqQjs7QXlDNy9GTTtFQUNFLFlsQ2lRUztBUCt2RmpCOztBeUNqZ0dNO0VBQ0UsWWxDaVFTO0FQbXdGakI7O0EwQ3g2RkU7RUFwRkEsY0FBQTtFQUNBLG1CbkNuQmM7QVBtaEdoQjtBUXg2RkU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtBUnk2Rko7QVFqNkZFO0VBQ0UsV0FBQTtBUm02Rko7QTBDbmdHRTtFQUNFLHVCbkMyWHNCO0VtQzFYdEIsZ0JuQ3JCWTtFbUNzQlosbUJuQ3FYbUI7RW1DL1dqQixhQUFBO0ExQ2dnR047QTBDOS9GTTtFQUVFLHFCQUFBO0ExQysvRlI7QUduN0ZRO0V1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QUFBO0VBQ0EsV0FBQTtBaEQwNUdKOztBZ0R6MEdJO0VBQ0UsVUFBQTtBaEQ0MEdOO0FnRDEwR007RUFDRSx1QkFBQTtBaEQ0MEdSOztBZ0R0MEdFO0VBQ0UsbUI5QnZDZ0I7QWxCZzNHcEI7QWdEdjBHSTtFQUNFLGNBQUE7QWhEeTBHTjtBZ0R2MEdNO0VBRUUscUNBQUE7QWhEdzBHUjs7QWdEbjBHRTtFQTNGQSxXQUFBO0FoRGs2R0Y7QWdEaDZHRTtFQUNFLGNBQUE7RUFDQSx1QnpDa2VlO0V5Q2plZixrQnpDK2RpQjtFeUM5ZGpCLGNBQUE7RUFDQSxjOUJpQ2dCO0FsQmk0R3BCO0FRanpHRTtFQUNFLFVBQUE7QVJtekdKO0FnRGw2R0k7RUFDRSxtQnpDbkNFO0V5Q29DRixpQ0FBQTtBaERvNkdOO0FnRGo2R0k7RUFFRSxtQnpDN0NPO0V5QzhDUCxjOUJzQmM7QWxCNDRHcEI7O0FnRHIxR0U7RUFsRUEseUJBQUE7RUFDQSxhQUFBO0VBQ0EsbUJ6Q3ZETTtFeUN3RE4sY3pDekRNO0V5QzBETixpQ0FBQTtFQUFBLHlCQUFBO0FoRDI1R0Y7O0FnRHoxR0U7RUEzREEseUJBQUE7RUFDQSxjQUFBO0FoRHc1R0Y7O0FnRDExR0U7RUF2REEsYUFBQTtFQUNBLGF6QzBib0I7QVAyOUZ0QjtBZ0RuNUdFO0VBQ0UsY0FBQTtBaERxNUdKOztBaURwK0dFO0VBekJBLHFCQUFBO0VBQ0EsZUFBQTtFQUNBLG1CMUMrQmM7RTBDN0JkLHlCMUNnaUJpQjtFMEMvaEJqQixnQjFDZ0NjO0UwQy9CZCxtRDFDZ2lCaUI7VTBDaGlCakIsMkMxQ2dpQmlCO0UwQzloQmpCLGNBQUE7QWpEKy9HRjs7QWlEMStHRTtFQWpCQSxxRDFDNGhCcUI7RTBDNWhCckIsNkMxQzRoQnFCO0UwQzVoQnJCLHFDMUM0aEJxQjtFMEM1aEJyQix3RTFDNGhCcUI7QVBtK0Z2QjtBaUQ3L0dFO0VBRUUsdUQxQ3VoQnFCO1UwQ3ZoQnJCLCtDMUN1aEJxQjtBUHUrRnpCO0FpRDMvR0U7RUFDRSx3QkFBQTtVQUFBLGdCQUFBO0FqRDYvR0o7O0FrRGhyR0U7RUExVUEsVUFBQTtFQUNBLFNBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0FsRDgvR0Y7QVE1MkdFO0VBQ0UsVUFBQTtBUjgyR0o7QWtEdC9HRTs7RUFFRSxjQUFBO0VBQ0EscUJBQUE7RUFDQSxjQUFBO0VBQ0Esb0I1Q3dCa0I7QU5nK0d0QjtBa0RwL0dFOzs7O0VBSUUsZ0JBQUE7QWxEcy9HSjtBa0RuL0dFO0VBQ0UscUJBQUE7QWxEcS9HSjtBa0RyNUdNO0VBQ0UscUJBQUE7QWxEdTVHUjtBa0Q3NEdNO0VBQ0UsY0FBQTtBbEQrNEdSO0FrRGpzR0k7RUE5U0EsY0FBQTtFQUNBLFdBQUE7QWxEay9HSjtBa0RoL0dJO0VBQ0UsbUJBQUE7RUFDQSxzQkFBQTtBbERrL0dOO0FrRHQ0R0U7RUFDRSxpQkFoTWlCO0FsRHdrSHJCO0FrRHI0R0U7RUFDRSxVQUFBO0FsRHU0R0o7QUc5NkdRO0UrQ0tGO0lBQ0UscUJBQUE7RWxENDZHTjtFa0RsNkdJO0lBQ0UsY0FBQTtFbERvNkdOO0VrRGxzR0k7SUFsVUYsY0FBQTtJQUNBLFdBQUE7RWxEdWdIRjtFa0RyZ0hFO0lBQ0UsbUJBQUE7SUFDQSxzQkFBQTtFbER1Z0hKO0VrRHRzR0k7SUF0VUYsY0FBQTtJQUNBLFdBQUE7RWxEK2dIRjtFa0Q3Z0hFO0lBQ0UsbUJBQUE7SUFDQSxzQkFBQTtFbEQrZ0hKO0FBQ0Y7QUd0OEdRO0UrQ0tGO0lBQ0UscUJBQUE7RWxEbzhHTjtFa0QxN0dJO0lBQ0UsY0FBQTtFbEQ0N0dOO0VrRDF0R0k7SUFsVUYsY0FBQTtJQUNBLFdBQUE7RWxEK2hIRjtFa0Q3aEhFO0lBQ0UsbUJBQUE7SUFDQSxzQkFBQTtFbEQraEhKO0VrRDl0R0k7SUF0VUYsY0FBQTtJQUNBLFdBQUE7RWxEdWlIRjtFa0RyaUhFO0lBQ0UsbUJBQUE7SUFDQSxzQkFBQTtFbER1aUhKO0FBQ0Y7QWtEanVHSTtFQXRNQSxlQUFBO0VBQ0EsaUI1Q3BJd0I7QU44aUg1QjtBa0Q3NUdJOzs7RUFHRSxzQkFBQTtBbEQrNUdOO0FrRDc1R007OztFQUNFLHNCQUFBO0FsRGk2R1I7QWtEdjZHSTs7Ozs7Ozs7O0VBR0Usc0JBQUE7QWxEKzZHTjtBa0Q3NkdNOzs7Ozs7Ozs7RUFDRSxzQkFBQTtBbER1N0dSO0FrRDk0R007Ozs7O0VBR0UscUIzQ3NIWTtFMkNuSFYscUJBQUE7QWxEZzVHVjtBa0RyNEdNOzs7OztFQUdFLG9CM0NxR1k7RTJDbEdWLHFCQUFBO0FsRHU0R1Y7QWtEajRHSTtFQUtJLGtCQUFBO0FsRCszR1I7QWtENTNHTTs7Ozs7RUFJSSxjQUFBO0VBQ0Esc0JBQUE7QWxEKzNHVjtBa0RwM0dJO0VBS0ksa0JBQUE7QWxEazNHUjtBa0QvMkdNOzs7OztFQUlJLGNBQUE7RUFDQSxzQkFBQTtBbERrM0dWO0FrRDl2R0k7RUEvRkYsbUIzQ2lDNEI7RTJDaEM1QixjQUFBO0FsRGcyR0Y7QWtENXZHTTtFQXJHSixtQjNDaUM0QjtFMkNoQzVCLGNBQUE7QWxEbzJHRjtBa0QxdkdJO0VBcFhFLGdCNUNTUTtBTndtSGQ7QWtEeHZHSTtFQWpXRSxpQjVDZFM7QU4wbUhmO0FrRDFsSE07RUFDRSxnQjVDbEJNO0FOOG1IZDtBa0R4bEhRO0VBQ0UsaUI1Q3RCSztBTmduSGY7QWtEN3ZHTTtFQTVRRixrQjVDL0h3QjtFNENnSXhCLGNBQUE7QWxENGdISjtBa0QzdkdJO0VBbFZFLGtCQUFBO0FsRGdsSE47QWtEOWtITTtFQUNFLGdCNUMzQ007QU4ybkhkO0FrRDd2R0k7RUF0SUYsb0I1Q2xSb0I7RTRDb1JwQixpQkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0FsRHE0R0Y7O0FrRDV2R007RUE3VkEsa0JBQUE7QWxENmxITjtBa0QzbEhNO0VBQ0UsZ0I1QzNDTTtBTndvSGQ7O0FrRHh2R0U7RUFDRSxhQUFBO0FsRDJ2R0o7O0FtRHp3SEU7RTNDMEdBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtFQUNBLFdBekJRO0VBMEJSLFlBekJTO0VBMEJULGVBQUE7QVJtcUhGO0FRaHFIRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFFQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFdBbkNPO0VBcUNQLG1CRDlESTtFQytESixxREF0QlM7VUFzQlQsNkNBdEJTO0VBd0JULFdBQUE7QVIrcEhKO0FRcHBISTtFQUNFLG1CRGhGUTtFQ2lGUixxREFMZTtVQUtmLDZDQUxlO0FSMnBIckI7O0FtRDd4SEU7RTNDc0dBLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtFQUNBLFdBekJRO0VBMEJSLFlBekJTO0VBMEJULGVBQUE7QVIyckhGO0FReHJIRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFFQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLFdBbkNPO0VBcUNQLG1CRC9ESTtFQ2dFSixxREF0QlM7VUFzQlQsNkNBdEJTO0VBd0JULFdBQUE7QVJ1ckhKO0FRNXFISTtFQUNFLG1CRC9FTTtFQ2dGTixxREFMZTtVQUtmLDZDQUxlO0FSbXJIckI7O0FvRHh1SEk7RUFNRSxXQUFBO0FwRHN1SE47QW9EbnVISTtFQUlFLG9COUNLZ0I7QU42dEh0QjtBb0QvdEhJO0VBQ0Usb0I5Q0NnQjtBTmd1SHRCO0FvRDl0SEk7RUZvSUEsZUFBQTtFQUNBLGlCNUNwSXdCO0FOaXVINUI7QW9EN3RITTtFRjJIRixrQjVDL0h3QjtFNENnSXhCLGNBQUE7QWxEcW1ISjtBb0R2eEhFO0VBQ0Usa0JBQUE7QXBEeXhISjtBb0R2eEhJO0U1Q1RGLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsaUJEa0t5QjtFQ2hLekIsV0FBQTtFQUdFLHNCQUFBO0VBQ0EsNkNBQUE7RTRDQUUsa0JBQUE7RUFDQSxRQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0FwRGd5SE47QW9ENXhIRTtFQUNFLFdBQUE7RUFDQSxVQUFBO0FwRDh4SEo7QW9EM3hIRTtFQUNFLFdBQUE7RUFDQSxVQUFBO0FwRDZ4SEo7QW9EbHZITTtFQUNFLGlDQUFBO1VBQUEseUJBQUE7RUFDQSxpQ0FBQTtVQUFBLHlCQUFBO0FwRG92SFI7O0FvRHh1SEU7RUFDRSxrQkFBQTtBcEQydUhKOztBb0R4dUhFO0VBQ0Usa0JBNUZpQztBcER1MEhyQzs7QW9EdnVIRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFFQSxXQXJHaUM7RUFzR2pDLFlBdEdpQztFQXdHakMsZUFBQTtBcER3dUhKO0FvRC90SEk7RTVDNUdGLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsaUJEa0t5QjtFQ2hLekIsV0FBQTtFQUdFLHNCQUFBO0VBQ0EsNkNBQUE7RTRDb0dFLE1BQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtBcER1dUhOOztBb0RsdUhFO0VBQ0UsNkJBQUE7VUFBQSxxQkFBQTtFQUNBLGlDQUFBO1VBQUEseUJBQUE7QXBEcXVISjs7QW9EbHVIRTtFNUNtREEsNkJBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7RUFDQSwyQkFBQTtFQUNBLGlDQUFBO0VBQ0EsOEJBQUE7RUFDQSxvQkFBQTtBUm1ySEY7O0FxRDkwSEU7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0FyRGkxSEo7QXFELzBISTtFQUNFLGNBQUE7QXJEaTFITjtBcUQ5MEhJO0VBQ0UsK0JBQUE7RUFBQSx1QkFBQTtBckRnMUhOOztBcUQxMEhJO0VBQ0Usb0IvQ1dnQjtFK0NWaEIsbUI5QzVCRTtBUHkySFI7QXFEejBISTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFVBQUE7RUFDQSxXQUFBO0VBRUEsV0FBQTtFQUNBLG1COUN2Q0U7RThDd0NGLGtEOUN5TmlCO0U4Q3pOakIsMEM5Q3lOaUI7RThDek5qQixrQzlDeU5pQjtFOEN6TmpCLGtFOUN5TmlCO0FQaW5IdkI7QXFEeDBITTtFQUNFLFVBQUE7RUFDQSxjQUFBO0VBQ0Esb0NBQUE7VUFBQSw0QkFBQTtBckQwMEhSO0FxRHYwSE07RUFDRSxtQ0FBQTtVQUFBLDJCQUFBO0FyRHkwSFI7QXFEcjBITTtFQUNFLG9CL0NoQmM7QU51MUh0QjtBcURuMEhJO0VIa0hBLGVBQUE7RUFDQSxjR3JOc0I7QXJEeTZIMUI7QXFEbjBISTtFQUNFLGdCQUFBO0FyRHEwSE47QXFEcjVIRTtFQUNFLGtCQUFBO0FyRHU1SEo7QXFEcjVISTtFN0NERixjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFFQSxtQkFBQTtFQUNBLGlCRDhRcUI7RUM1UXJCLFdBQUE7RUFXRSxxQkFBQTtFQUNBLHlEQUFBO0U2Q2hCRSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxnQkFBQTtFQUNBLFdBQUE7QXJEODVITjtBcUQxNUhFO0U3Q1ZBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsaUJEcVN3QjtFQ25TeEIsV0FBQTtFQVdFLHFCQUFBO0VBQ0EseURBQUE7RTZDUEEsV0FBQTtFQUNBLFVBQUE7QXJEbTZISjtBcURoNkhFO0U3Q2hCQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFFQSxtQkFBQTtFQUNBLGlCRHFTd0I7RUNuU3hCLFdBQUE7RUFlRSxvQkFBQTtFQUNBLHlEQUFBO0U2Q0xBLFdBQUE7RUFDQSxVQUFBO0FyRHk2SEo7QXFEeDJITTtFN0NwRkosY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBRUEsbUJBQUE7RUFDQSxpQkQ4UXFCO0VDNVFyQixXQUFBO0VBZUUsb0JBQUE7RUFDQSx5REFBQTtFNkMrREkscUJBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0FyRGkzSFI7O0FzRHA2SE07RUFDRSxTQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7QXREdTZIUjtBc0RsNkhNO0VBQ0UsU0FBQTtFQUNBLFdBQUE7RUFDQSxPQUFBO0F0RG82SFI7QXNELzVITTtFQUNFLGtCQUFBO0VBQ0EscUJBaEZxQjtBdERpL0g3QjtBc0Q5NUhNO0U5QzFESixjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFFQSxtQkFBQTtFQUNBLGlCRHFTd0I7RUNuU3hCLFdBQUE7RUFHRSxzQkFBQTtFQUNBLDZDQUFBO0U4Q2lESSxVQUFBO0VBQ0EsVUFBQTtFQUNBLGdCQUFBO0F0RHU2SFI7QVF0MEhFO0VBQ0UsVUFBQTtBUncwSEo7QXNEOTNISTtFQUNFLG1CL0M1RkU7RStDNkZGLG9CaER2RGdCO0FOdTdIdEI7QXNENTNISTtFQUNFLHVCQWpHaUM7RUFrR2pDLGNBdEc0QjtBdERvK0hsQztBc0QzM0hJO0VBQ0UsYUFBQTtBdEQ2M0hOO0FzRDEzSEk7RUprRUEsZUFBQTtFQUNBLGNJak15QjtBdEQ0L0g3QjtBc0RuN0hNO0VBQ0UsTUFBQTtBdERxN0hSO0FzRGo3SFE7RUFDRSxNQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QXREbTdIVjtBc0Q5NkhRO0VBQ0UsV0FBQTtFQUNBLFVBQUE7QXREZzdIVjtBc0RoL0hFO0VBQ0UsV0FBQTtBdERrL0hKO0FzRC8rSEU7RTlDdkJBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsaUJEcVN3QjtFQ25TeEIsV0FBQTtFQWVFLG9CQUFBO0VBQ0EseURBQUE7RThDRUEsV0FBQTtFQUNBLFNBQUE7QXREdy9ISjtBc0RyL0hFO0U5QzdCQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFFQSxtQkFBQTtFQUNBLGlCRHFTd0I7RUNuU3hCLFdBQUE7RUFXRSxxQkFBQTtFQUNBLHlEQUFBO0FSeWdJSjtBR3g1SFE7RW1EL0ZGO0lBQ0UsU0FBQTtJQUNBLFFBQUE7SUFDQSxVQUFBO0V0RDAvSE47RXNEci9ISTtJQUNFLFNBQUE7SUFDQSxXQUFBO0lBQ0EsT0FBQTtFdER1L0hOO0VzRGwvSEk7SUFDRSxrQkFBQTtJQUNBLHFCQWhGcUI7RXREb2tJM0I7RXNEai9ISTtJOUMxREosY0FBQTtJQUNBLFFBQUE7SUFDQSxTQUFBO0lBRUEsbUJBQUE7SUFDQSxpQkRxU3dCO0lDblN4QixXQUFBO0lBR0Usc0JBQUE7SUFDQSw2Q0FBQTtJOENpREksVUFBQTtJQUNBLFVBQUE7SUFDQSxnQkFBQTtFdEQwL0hOO0VzRHAvSEk7SUFDRSxNQUFBO0V0RHMvSE47RXNEbC9ITTtJQUNFLE1BQUE7SUFDQSxXQUFBO0lBQ0EsVUFBQTtFdERvL0hSO0VzRC8rSE07SUFDRSxXQUFBO0lBQ0EsVUFBQTtFdERpL0hSO0VzRGpqSUE7SUFDRSxXQUFBO0V0RG1qSUY7RXNEaGpJQTtJOUN2QkEsY0FBQTtJQUNBLFFBQUE7SUFDQSxTQUFBO0lBRUEsbUJBQUE7SUFDQSxpQkRxU3dCO0lDblN4QixXQUFBO0lBZUUsb0JBQUE7SUFDQSx5REFBQTtJOENFQSxXQUFBO0lBQ0EsU0FBQTtFdER5aklGO0VzRHRqSUE7STlDN0JBLGNBQUE7SUFDQSxRQUFBO0lBQ0EsU0FBQTtJQUVBLG1CQUFBO0lBQ0EsaUJEcVN3QjtJQ25TeEIsV0FBQTtJQVdFLHFCQUFBO0lBQ0EseURBQUE7RVIwa0lGO0FBQ0Y7QUcxOUhRO0VtRC9GRjtJQUNFLFNBQUE7SUFDQSxRQUFBO0lBQ0EsVUFBQTtFdEQ0aklOO0VzRHZqSUk7SUFDRSxTQUFBO0lBQ0EsV0FBQTtJQUNBLE9BQUE7RXREeWpJTjtFc0RwaklJO0lBQ0Usa0JBQUE7SUFDQSxxQkFoRnFCO0V0RHNvSTNCO0VzRG5qSUk7STlDMURKLGNBQUE7SUFDQSxRQUFBO0lBQ0EsU0FBQTtJQUVBLG1CQUFBO0lBQ0EsaUJEcVN3QjtJQ25TeEIsV0FBQTtJQUdFLHNCQUFBO0lBQ0EsNkNBQUE7SThDaURJLFVBQUE7SUFDQSxVQUFBO0lBQ0EsZ0JBQUE7RXRENGpJTjtFc0R0aklJO0lBQ0UsTUFBQTtFdER3aklOO0VzRHBqSU07SUFDRSxNQUFBO0lBQ0EsV0FBQTtJQUNBLFVBQUE7RXREc2pJUjtFc0RqaklNO0lBQ0UsV0FBQTtJQUNBLFVBQUE7RXREbWpJUjtFc0RubklBO0lBQ0UsV0FBQTtFdERxbklGO0VzRGxuSUE7STlDdkJBLGNBQUE7SUFDQSxRQUFBO0lBQ0EsU0FBQTtJQUVBLG1CQUFBO0lBQ0EsaUJEcVN3QjtJQ25TeEIsV0FBQTtJQWVFLG9CQUFBO0lBQ0EseURBQUE7SThDRUEsV0FBQTtJQUNBLFNBQUE7RXREMm5JRjtFc0R4bklBO0k5QzdCQSxjQUFBO0lBQ0EsUUFBQTtJQUNBLFNBQUE7SUFFQSxtQkFBQTtJQUNBLGlCRHFTd0I7SUNuU3hCLFdBQUE7SUFXRSxxQkFBQTtJQUNBLHlEQUFBO0VSNG9JRjtBQUNGO0FzRGhoSU07RUFDRSxTQUFBO0VBQ0EsUUFBQTtFQUNBLFVBQUE7QXREa2hJUjs7QXNEN2dJRTtFQUNFLFlBQUE7QXREZ2hJSjtBc0Q5Z0lJO0VBQ0UsWUFBQTtBdERnaElOOztBc0Q1Z0lFO0VBQ0Usa0JBQUE7QXREK2dJSjtBc0Q3Z0lJO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsVUFBQTtFQUNBLFVBQUE7RUFDQSxnQkFBQTtBdEQrZ0lOO0FzRDVnSUk7RUFFRSxTQUFBO0VBS0UsVUFBQTtBdER5Z0lSO0FzRHJnSUk7RUFDRSxXQUFBO0VBQ0EsVUFBQTtBdER1Z0lOO0FzRHBnSUk7RUFDRSxXQUFBO0VBQ0EsVUFBQTtBdERzZ0lOOztBc0RsZ0lFO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsVUFBQTtFQUNBLFVBQUE7RUFFQSxhQUFBO0VBQ0EsZ0IvQ21HcUI7RStDakdyQix5Qi9DbUdrQjtFK0NsR2xCLG1CL0M1TEk7QVArcklSO0FzRGpnSUk7RUFDRSxvQmhEekpnQjtBTjRwSXRCO0FzRDlySUU7RUFDRSxXQUFBO0F0RGdzSUo7QXNEN3JJRTtFOUN2QkEsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBRUEsbUJBQUE7RUFDQSxpQkRxU3dCO0VDblN4QixXQUFBO0VBZUUsb0JBQUE7RUFDQSx5REFBQTtFOENFQSxXQUFBO0VBQ0EsU0FBQTtBdERzc0lKO0FzRG5zSUU7RTlDN0JBLGNBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUVBLG1CQUFBO0VBQ0EsaUJEcVN3QjtFQ25TeEIsV0FBQTtFQVdFLHFCQUFBO0VBQ0EseURBQUE7QVJ1dElKO0FzRGxoSU07RUFDRSxnQkFBQTtBdERvaElSO0FzRGhoSUk7RUFDRSxXQUFBO0F0RGtoSU47QXNEN2dJSTtFQUNFLGNBQUE7QXREK2dJTjs7QXVEdnNJRTtFQUNFLGdCQUFBO0F2RDBzSUo7O0F1RHRzSUU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0E5RHVCO0VBZ0V2QixXQUFBO0VBQ0EsWUFBQTtFQUVBLDJEQUFBO0VBQUEsbURBQUE7RUFFQSxxQ2hEa1Z3QjtFZ0RoVnhCLFVBQUE7RUFDQSxrQkFBQTtFQUVBLGdCQUFBO0F2RG9zSUo7QXVEbHNJSTtFQUNFLFVBQUE7RUFDQSxtQkFBQTtBdkRvc0lOO0F1RGpzSUk7RUFDRSxlQUFBO0F2RG1zSU47QXVEaHNJSTtFQUNFLGtCQUFBO0F2RGtzSU47QXVEL3JJSTtFQUNFLGVBQUE7QXZEaXNJTjs7QXVEajRIRTtFQXpUQSxrQkFBQTtFQUNBLGdCQUFBO0F2RDhySUY7O0F1RGo0SEU7RUFuVEEsV0E1RGtGO0VBNkRsRiwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsK0JBQUE7RUFBQSw0REFBQTtFQUNBLG1DQUFBO1VBQUEsMkJBQUE7RUFDQSxtQmhEM0ZXO0VnRDhGVCxlQUFBO0F2RHNySUo7QVFob0lFO0VBQ0UsVUFBQTtBUmtvSUo7QXVEaHJJRTtFQUNFLFdBNUVnRjtBdkQ4dklwRjtBdUQ5cUlFO0VBQ0Usa0JBQUE7QXZEZ3JJSjtBdUQ1cUlFO0VBQ0UsV0FyRm1GO0F2RG13SXZGO0F1RDVxSUk7RUFDRSxrRGhEdVFhO1VnRHZRYiwwQ2hEdVFhO0FQdTZIbkI7QXVEenFJRTtFQUNFLGtDQUFBO1VBQUEsMEJBQUE7QXZEMnFJSjs7QXVEaDVIRTtFQTlUQSxXQTVEa0Y7RUE2RGxGLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwrQkFBQTtFQUFBLDREQUFBO0VBQ0EsbUNBQUE7VUFBQSwyQkFBQTtFQUNBLG1CaEQzRlc7RWdEaUdULGtCQUFBO0F2RDZzSUo7QVExcElFO0VBQ0UsVUFBQTtBUjRwSUo7QXVEMXNJRTtFQUNFLFdBNUVnRjtBdkR3eElwRjtBdUR4c0lFO0VBQ0Usa0JBQUE7QXZEMHNJSjtBdUR0c0lFO0VBQ0UsV0FyRm1GO0F2RDZ4SXZGO0F1RHRzSUk7RUFDRSxrRGhEdVFhO1VnRHZRYiwwQ2hEdVFhO0FQaThIbkI7QXVEbnNJRTtFQUNFLGtDQUFBO1VBQUEsMEJBQUE7QXZEcXNJSjs7QXVEcjZIRTtFQXJSRSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGlDQUFBO0VBSUksWUFYRTtFQVlGLHFDQUFBO1VBQUEsNkJBQUE7QXZEMnJJUjtBR2p0SVE7RW9Ea1NOO0lBN1FNLFlBWEU7SUFZRixxQ0FBQTtZQUFBLDZCQUFBO0V2RGdzSU47QUFDRjtBdUQ1cklhO0VBSUgscUNBQUE7VUFBQSw2QkFBQTtBdkQycklWO0FHMXRJUTtFb0QyQks7SUFJSCxxQ0FBQTtZQUFBLDZCQUFBO0V2RCtySVI7QUFDRjtBdUQ3cklNO0VBQ0Usa0NBQUE7VUFBQSwwQkFBQTtBdkQrcklSOztBdUR6cklNO0VBR00sb0NBQUE7VUFBQSw0QkFBQTtBdkQwcklaO0FHdHVJUTtFb0R5Q0Y7SUFHTSxvQ0FBQTtZQUFBLDRCQUFBO0V2RDhySVY7QUFDRjs7QXVEcmtJSTtFL0MxVEEsbUVBQUE7VUFBQSwyREFBQTtBUm00SUo7O0F1RDU4SEU7RUFoUEUsTUFBQTtFQUNBLFFBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQ0FBQTtFQUlJLFlBakRFO0VBa0RGLG9DQUFBO1VBQUEsNEJBQUE7QXZENnJJUjtBR3p2SVE7RW9EbVNOO0lBeE9NLFlBakRFO0lBa0RGLG9DQUFBO1lBQUEsNEJBQUE7RXZEa3NJTjtBQUNGO0F1RDlySWE7RUFJSCxvQ0FBQTtVQUFBLDRCQUFBO0F2RDZySVY7QUdsd0lRO0VvRGlFSztJQUlILG9DQUFBO1lBQUEsNEJBQUE7RXZEaXNJUjtBQUNGO0F1RC9ySU07RUFDRSxrQ0FBQTtVQUFBLDBCQUFBO0F2RGlzSVI7O0F1RDNySU07RUFHTSxxQ0FBQTtVQUFBLDZCQUFBO0F2RDRySVo7QUc5d0lRO0VvRCtFRjtJQUdNLHFDQUFBO1lBQUEsNkJBQUE7RXZEZ3NJVjtBQUNGOztBdUQ3bUlJO0UvQzVUQSxrRUFBQTtVQUFBLDBEQUFBO0FSNjZJSjs7QXVEbi9IRTtFQTNNRSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGlDQUFBO0VBSUksYUF2RkU7RUF3RkYscUNBQUE7VUFBQSw2QkFBQTtBdkQrcklSO0FHanlJUTtFb0RvU047SUFuTU0sYUF2RkU7SUF3RkYscUNBQUE7WUFBQSw2QkFBQTtFdkRvc0lOO0FBQ0Y7QXVEaHNJYTtFQUdILHFDQUFBO1VBQUEsNkJBQUE7QXZEZ3NJVjtBRzF5SVE7RW9EdUdLO0lBR0gscUNBQUE7WUFBQSw2QkFBQTtFdkRvc0lSO0FBQ0Y7QXVEbHNJTTtFQUNFLGtDQUFBO1VBQUEsMEJBQUE7QXZEb3NJUjs7QXVEOXJJTTtFQUdNLG9DQUFBO1VBQUEsNEJBQUE7QXZEK3JJWjtBR3R6SVE7RW9Eb0hGO0lBR00sb0NBQUE7WUFBQSw0QkFBQTtFdkRtc0lWO0FBQ0Y7O0F1RHJwSUk7RS9DeFRBLG1FQUFBO1VBQUEsMkRBQUE7QVJpOUlKOztBdUQxaElFO0VBdktFLFNBQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsaUNBQUE7RUFJSSxhQTVIRTtFQTZIRixvQ0FBQTtVQUFBLDRCQUFBO0F2RGtzSVI7QUd6MElRO0VvRHFTTjtJQS9KTSxhQTVIRTtJQTZIRixvQ0FBQTtZQUFBLDRCQUFBO0V2RHVzSU47QUFDRjtBdURuc0lhO0VBR0gsb0NBQUE7VUFBQSw0QkFBQTtBdkRtc0lWO0FHbDFJUTtFb0Q0SUs7SUFHSCxvQ0FBQTtZQUFBLDRCQUFBO0V2RHVzSVI7QUFDRjtBdURyc0lNO0VBQ0Usa0NBQUE7VUFBQSwwQkFBQTtBdkR1c0lSOztBdURqc0lNO0VBR00scUNBQUE7VUFBQSw2QkFBQTtBdkRrc0laO0FHOTFJUTtFb0R5SkY7SUFHTSxxQ0FBQTtZQUFBLDZCQUFBO0V2RHNzSVY7QUFDRjs7QXVEN3JJSTtFL0M5VEEsa0VBQUE7VUFBQSwwREFBQTtBUisvSUo7O0F1RGhrSUU7RUE3R0EsdUJBQUE7VUFBQSxlQUFBO0VBQ0EsbUNBQUE7VUFBQSwyQkFBQTtBdkRpcklGO0F1RDlxSUU7RUFFRSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsK0JBQUE7RUFBQSw0REFBQTtBdkQrcUlKO0F1RDNxSUU7RUFDRSxrQ0FBQTtVQUFBLDBCQUFBO0F2RDZxSUo7QXVEenFJRTtFQUNFLGtDQUFBO1VBQUEsMEJBQUE7QXZEMnFJSjs7QUdyM0lRO0VvRCtTQTtJQTFGTix1QkFBQTtZQUFBLGVBQUE7SUFDQSxXQWpUc0Y7SUFrVHRGLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFdkRxcUlBO0V1RC9wSUE7SUFDRSxhQUFBO0V2RGlxSUY7RXVEN3BJQTtJQUNFLHVCQUFBO1lBQUEsZUFBQTtFdkQrcElGO0V1RDVwSVM7SUFDUCxrQkFBQTtFdkQ4cElGO0V1RDFwSUE7SUFDRSxrQkFBQTtFdkQ0cElGO0V1RHRsSU07SUE5Rk4sdUJBQUE7WUFBQSxlQUFBO0lBQ0EsV0FqVHNGO0lBa1R0Rix3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsbUJBQUE7RXZEdXJJQTtFdURqcklBO0lBQ0UsYUFBQTtFdkRtcklGO0V1RC9xSUE7SUFDRSx1QkFBQTtZQUFBLGVBQUE7RXZEaXJJRjtFdUQ5cUlTO0lBQ1AsbUJBQUE7RXZEZ3JJRjtFdUQ1cUlBO0lBQ0UsbUJBQUE7RXZEOHFJRjtFdURwbUlNO0lBbEdOLHVCQUFBO1lBQUEsZUFBQTtJQUNBLFdBalRzRjtJQWtUdEYsd0JBQUE7SUFBQSxnQkFBQTtJQUNBLG1CQUFBO0V2RHlzSUE7RXVEbnNJQTtJQUNFLGFBQUE7RXZEcXNJRjtFdURqc0lBO0lBQ0UsdUJBQUE7WUFBQSxlQUFBO0V2RG1zSUY7RXVEaHNJUztJQUNQLGlCQUFBO0V2RGtzSUY7RXVEOXJJQTtJQUNFLGlCQUFBO0V2RGdzSUY7RXVEbG5JTTtJQXRHTix1QkFBQTtZQUFBLGVBQUE7SUFDQSxXQWpUc0Y7SUFrVHRGLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFdkQydElBO0V1RHJ0SUE7SUFDRSxhQUFBO0V2RHV0SUY7RXVEbnRJQTtJQUNFLHVCQUFBO1lBQUEsZUFBQTtFdkRxdElGO0V1RGx0SVM7SUFDUCxvQkFBQTtFdkRvdElGO0V1RGh0SUE7SUFDRSxvQkFBQTtFdkRrdElGO0FBQ0Y7QUdoOElRO0VvRCtTQTtJQTFGTix1QkFBQTtZQUFBLGVBQUE7SUFDQSxXQWpUc0Y7SUFrVHRGLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFdkQrdUlBO0V1RHp1SUE7SUFDRSxhQUFBO0V2RDJ1SUY7RXVEdnVJQTtJQUNFLHVCQUFBO1lBQUEsZUFBQTtFdkR5dUlGO0V1RHR1SVM7SUFDUCxrQkFBQTtFdkR3dUlGO0V1RHB1SUE7SUFDRSxrQkFBQTtFdkRzdUlGO0V1RGhxSU07SUE5Rk4sdUJBQUE7WUFBQSxlQUFBO0lBQ0EsV0FqVHNGO0lBa1R0Rix3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsbUJBQUE7RXZEaXdJQTtFdUQzdklBO0lBQ0UsYUFBQTtFdkQ2dklGO0V1RHp2SUE7SUFDRSx1QkFBQTtZQUFBLGVBQUE7RXZEMnZJRjtFdUR4dklTO0lBQ1AsbUJBQUE7RXZEMHZJRjtFdUR0dklBO0lBQ0UsbUJBQUE7RXZEd3ZJRjtFdUQ5cUlNO0lBbEdOLHVCQUFBO1lBQUEsZUFBQTtJQUNBLFdBalRzRjtJQWtUdEYsd0JBQUE7SUFBQSxnQkFBQTtJQUNBLG1CQUFBO0V2RG14SUE7RXVEN3dJQTtJQUNFLGFBQUE7RXZEK3dJRjtFdUQzd0lBO0lBQ0UsdUJBQUE7WUFBQSxlQUFBO0V2RDZ3SUY7RXVEMXdJUztJQUNQLGlCQUFBO0V2RDR3SUY7RXVEeHdJQTtJQUNFLGlCQUFBO0V2RDB3SUY7RXVENXJJTTtJQXRHTix1QkFBQTtZQUFBLGVBQUE7SUFDQSxXQWpUc0Y7SUFrVHRGLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFdkRxeUlBO0V1RC94SUE7SUFDRSxhQUFBO0V2RGl5SUY7RXVEN3hJQTtJQUNFLHVCQUFBO1lBQUEsZUFBQTtFdkQreElGO0V1RDV4SVM7SUFDUCxvQkFBQTtFdkQ4eElGO0V1RDF4SUE7SUFDRSxvQkFBQTtFdkQ0eElGO0FBQ0Y7QUcxZ0pRO0VvRHNVQTtJQW5GTixtQkFBQTtJQUNBLFlBQUE7SUFDQSxnQkFBQTtJQUNBLGdCQUFBO0lBQ0EsV0FBQTtJQUNBLGlCQUFBO0lBQ0Esd0JBQUE7SUFBQSxnQkFBQTtFdkQyeElBO0V1RHh4SUE7SUFJRSx3QkFBQTtZQUFBLGdCQUFBO0lBQ0EsdUJBQUE7WUFBQSxlQUFBO0V2RHV4SUY7RXVEcHhJQTtJQUNFLGFBQUE7RXZEc3hJRjtBQUNGO0FHNWhKUTtFb0RzVUE7SUFuRk4sbUJBQUE7SUFDQSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxnQkFBQTtJQUNBLFdBQUE7SUFDQSxpQkFBQTtJQUNBLHdCQUFBO0lBQUEsZ0JBQUE7RXZENnlJQTtFdUQxeUlBO0lBSUUsd0JBQUE7WUFBQSxnQkFBQTtJQUNBLHVCQUFBO1lBQUEsZUFBQTtFdkR5eUlGO0V1RHR5SUE7SUFDRSxhQUFBO0V2RHd5SUY7QUFDRjtBSTNsSkU7RUFDRSxlQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0FKNmxKSjtBSTNsSkk7RUFDRSxrQkFBQTtFQUNBLGlDQUFBO0FKNmxKTjtBSTFsSkk7RUFDRSxrQkFBQTtBSjRsSk47O0FJdmxKRTtFQTlGQSxlQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLGFHK2JjO0VIN2JkLGFBQUE7RUFDQSx3Q0c2YjBCO0VINWIxQixnQkFBQTtFQUNBLGlDQUFBO0FKd3JKRjs7QUkvbEpFO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUNBQUE7RUExRkYsYUFBQTtFQUVBLG1DQUFBO1VBQUEsMkJBQUE7RUFFQSxhQUFBO0VBQ0EsYUdSZTtFSFVmLHlCRzRhYztFSDNhZCxnQkdSYztFSFNkLHlCR2xCTTtBUDRzSlI7QVE1akpFO0VBQ0UsVUFBQTtBUjhqSko7QUcxbEpRO0VDeEJOO0lBdEVFLGFBQUE7RUo0ckpGO0FBQ0Y7QUl6ckpFO0VBQ0UsWUFBQTtBSjJySko7QUl2ckpFO0VBQ0UsZ0JBQUE7QUp5ckpKO0FHcm1KUTtFQ3hCTjtJQTlDRSxZRzBZVztJSHpZWCxnQkc3RFc7RVA0dUpiO0FBQ0Y7QUl2bkpJO0VBQ0UsVUFBQTtBSnluSk47QUc5bUpRO0VDUEo7SUEvREEsVUErRHNDO0lBOUR0QyxnQkc3RFc7RVBxdkpiO0FBQ0Y7QUdwbkpRO0VDTko7SUFoRUEsVUFnRXNDO0lBL0R0QyxnQkc3RFc7RVAydkpiO0FBQ0Y7QUcxbkpRO0VDTEo7SUFqRUEsVUFpRXNDO0lBaEV0QyxnQkc3RFc7RVBpd0piO0FBQ0Y7QUlsb0pJO0VBN0RGLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFFQSxXQUFBO0VBQ0EsZUFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFFQSxTQUFBO0VBQ0EsZ0JBQUE7QUpnc0pGO0FHN29KUTtFQ3hCTjtJQXZDQSxNQUFBO0lBQ0EsUUFBQTtJQUNBLFNBQUE7SUFDQSxPQUFBO0lBRUEsV0FBQTtJQUNBLGVBQUE7SUFDQSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxjQUFBO0lBRUEsU0FBQTtJQUNBLGdCQUFBO0VKOHNKQTtBQUNGO0FJdHBKSTtFQUNFLGVBQUE7QUp3cEpOOztBd0Q3MEpFO0VBQ0Usa0JBQUE7QXhEZzFKSjs7QXdENzBKRTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLHVDQUFBO1VBQUEsK0JBQUE7QXhEZzFKSjs7QXdENzBKRTtFQUNFLGVBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtBeERnMUpKO0F3RDkwSkk7RUFDRSxNQUFBO0F4RGcxSk47QXdENzBKSTtFQUNFLFNBQUE7QXhEKzBKTjs7QXdEMzBKRTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLFVBQUE7QXhEODBKSjtBd0Q1MEpJO0VBQ0UsU0FBQTtBeEQ4MEpOOztBeUQ1MEpFO0VBQ0UsZWxENGlCZTtFa0QzaUJmLG1CbERzQkk7RWtEckJKLGNsRHNCSTtBUHl6SlI7QVF6c0pFO0VBRUUsY0FBQTtFQUNBLFlBQUE7QVIwc0pKO0FRbHNKRTtFQUNFLFdBQUE7QVJvc0pKO0F5RDMwSkk7RUFDRSxvQmxEa2lCa0I7RWtEamlCbEIscUJsRGlpQmtCO0FQNHlJeEI7O0F5RDl6Skk7RUFDRSxXQUFBO0F6RGkwSk47O0F5RDl6Skk7RUFDRSxZQUFBO0VBQ0EsaUJBQUE7QXpEaTBKTjs7QXlEN3pKRTtFQUNFLHFCQUFBO0VBQ0Esc0JBQUE7RUFDQSxpQmxEa2dCd0I7QVA4ekk1Qjs7QTBEenhKRTtFQXRGQSxlbkRza0JlO0FQNnlJakI7QVF2dUpFO0VBRUUsY0FBQTtFQUNBLFlBQUE7QVJ3dUpKO0FRaHVKRTtFQUNFLFdBQUE7QVJrdUpKO0EwRDkySkU7O0VBRUUseUJuRFVTO0FQczJKYjtBMERyMkpFO0VBQ0UsZ0JuRGdqQmlCO0VtRC9pQmpCLGtCQUFBO0ExRHUySko7QTBEbjJKRTtFQUNFLFdBQUE7RUFDQSxlQUFBO0ExRHEySko7QTBEbDJKRTtFQUNFLFdBQUE7QTFEbzJKSjs7QTBEbDFKSTs7RUFFRSxXQUFBO0ExRHExSk47O0FHN3ZKUTtFdURuRUo7O0lBRUUsV0FBQTtFMURvMEpKO0FBQ0Y7QUdwd0pRO0V1RDFGSjs7SUFFRSxXQUFBO0UxRGkySko7QUFDRjtBRzF3SlE7RXVEMUZKOztJQUVFLFdBQUE7RTFEdTJKSjtBQUNGOztBMERyeUpJO0VBQ0UscUJBQUE7RUFDQSxXQUFBO0VBQ0EsNkJuRDBjaUI7QVA4MUl2QjtBMER0eUpNO0VBQ0UsV0FBQTtBMUR3eUpSOztBMERweUpJO0VBQ0UsV0FBQTtBMUR1eUpOOztBMERweUpJO0VBQ0UsWUFBQTtBMUR1eUpOOztBMkQzOEpFO0VBQ0Usc0JBQUE7QTNEODhKSjs7QTJEMzhKRTtFQUNFLHVCQUFBO0EzRDg4Sko7O0EyRDM4SkU7RUFDRSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBM0Q4OEpKOztBUXB6SkU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtBUnN6Sko7QVE5eUpFO0VBQ0UsV0FBQTtBUmd6Sko7O0E0RDE2SkU7RUFDRSx3QkFBQTtBNUQ2NkpKOztBNEQxNkpFO0VBQ0Usa0JBQUE7QTVENjZKSjs7QTREMzZKRTtFQUNFLG1CQUFBO0E1RDg2Sko7O0FHbjBKUTtFeUQ1Rko7SUE3QkEsd0JBQUE7RTVEaThKRjtBQUNGOztBNERyOUpJO0VBb0RBO0lBbkRFLHdCQUFBO0U1RHk5Sko7QUFDRjs7QUcvMEpRO0V5RHJHRjtJQTVCRix3QkFBQTtFNURxOUpGO0FBQ0Y7O0FHaDFKUTtFeUR0R0Y7SUFwRUYsd0JBQUE7RTVEKy9KRjtBQUNGOztBRzMxSlE7RXlENUZKO0lBN0JBLHdCQUFBO0U1RHk5SkY7QUFDRjs7QTRENytKSTtFQW9EQTtJQW5ERSx3QkFBQTtFNURpL0pKO0FBQ0Y7O0FHdjJKUTtFeURyR0Y7SUE1QkYsd0JBQUE7RTVENitKRjtBQUNGOztBR3gySlE7RXlEdEdGO0lBcEVGLHdCQUFBO0U1RHVoS0Y7QUFDRjs7QUduM0pRO0V5RDVGSjtJQTdCQSx3QkFBQTtFNURpL0pGO0FBQ0Y7O0E0RHJnS0k7RUFvREE7SUFuREUsd0JBQUE7RTVEeWdLSjtBQUNGOztBNERoOUpFOztFcEQySEEsNkJBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EscUJBQUE7RUFDQSwyQkFBQTtFQUNBLGlDQUFBO0VBQ0EsOEJBQUE7RUFDQSxvQkFBQTtBUjAxSkY7O0E0RHI5Skk7RXBEcUlGLDJCQUFBO0VBQ0Esc0JBQUE7RUFDQSx1QkFBQTtFQUNBLDRCQUFBO0VBQ0EscUJBQUE7RUFDQSw4QkFBQTtBUm8xSkY7O0E0RHY5SkU7O0VBRUUseUJBQUE7QTVEMDlKSjtBR3A1SlE7RXlEeEVOOztJQUtJLHlCQUFBO0U1RDQ5Sko7QUFDRjtBRzE1SlE7RXlEeEVOOztJQVNJLHdCQUFBO0U1RDg5Sko7QUFDRjs7QTREMzlKRTs7RUFFRSx3QkFBQTtBNUQ4OUpKO0FHcjZKUTtFeUQzRE47O0lBS0ksd0JBQUE7RTVEZytKSjtBQUNGO0FHMzZKUTtFeUQzRE47O0lBU0kseUJBQUE7RTVEaytKSjtBQUNGOztBNEQ5OUpFO0VBQ0UsYUFBQTtBNURpK0pKOztBNEQvOUpFO0VBQ0UsY0FBQTtBNURrK0pKOztBNERoK0pFO0VBQ0U7SUFDRSx5QkFBQTtFNURtK0pKO0U0RGorSkU7SUFDRSx3QkFBQTtFNURtK0pKO0FBQ0Y7QTRELzlKRTtFQUNFLGFBQUE7QTVEaStKSjs7QTRELzlKRTtFQUNFO0lBQ0UseUJBQUE7RTVEaytKSjtFNERoK0pFO0lBQ0Usd0JBQUE7RTVEaytKSjtBQUNGO0E0RDk5SkU7RUFDRSxhQUFBO0E1RGcrSko7O0E0RDk5SkU7RUFDRSxjQUFBO0E1RGkrSko7O0E0RC85SkU7RUFDRSxhQUFBO0E1RGsrSko7O0E2RDVuS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsb0NBRlU7VUFFViw0QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFeW5LSjs7QTZEeG5LSTtFRW9CQSxnQ0FGVTtVQUVWLHdCQUZVO0EvRDBtS2Q7O0E2RHhvS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsb0NBRlU7VUFFViw0QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFcW9LSjs7QTZEcG9LSTtFRW9CQSxnQ0FGVTtVQUVWLHdCQUZVO0EvRHNuS2Q7O0E2RHBwS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsbUNBRlU7VUFFViwyQkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFaXBLSjs7QTZEaHBLSTtFRW9CQSxnQ0FGVTtVQUVWLHdCQUZVO0EvRGtvS2Q7O0E2RGhxS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsbUNBRlU7VUFFViwyQkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFNnBLSjs7QTZENXBLSTtFRW9CQSxnQ0FGVTtVQUVWLHdCQUZVO0EvRDhvS2Q7O0E2RDVxS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsZ0NBRlU7VUFFVix3QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFeXFLSjs7QTZEeHFLSTtFRW9CQSxtQ0FGVTtVQUVWLDJCQUZVO0EvRDBwS2Q7O0E2RHhyS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsZ0NBRlU7VUFFVix3QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFcXJLSjs7QTZEcHJLSTtFRW9CQSxtQ0FGVTtVQUVWLDJCQUZVO0EvRHNxS2Q7O0E2RHBzS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsZ0NBRlU7VUFFVix3QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFaXNLSjs7QTZEaHNLSTtFRW9CQSxvQ0FGVTtVQUVWLDRCQUZVO0EvRGtyS2Q7O0E2RGh0S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsZ0NBRlU7VUFFVix3QkFGVTtFQ3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUdGLG1DQUFBO1VBQUEsMkJBQUE7QWhFNnNLSjs7QTZENXNLSTtFRW9CQSxvQ0FGVTtVQUVWLDRCQUZVO0EvRDhyS2Q7O0E2RDV0S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsVUFMcUI7RUV6QnJCLG9DQUFBO0VBQUEsNEJBQUE7QWpFaXVLSjs7QTZEdnRLSTtFRW9CQSxVQUxxQjtBL0Q0c0t6Qjs7QTZEdnVLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxVQUxxQjtFRXpCckIsb0NBQUE7RUFBQSw0QkFBQTtBakU0dUtKOztBNkRsdUtJO0VFb0JBLFVBTHFCO0EvRHV0S3pCOztBNkRsdktJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLHNEQUxxQjtVQUtyQiw4Q0FMcUI7RUFLckIsNkJBRlU7VUFFVixxQkFGVTtFR3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QWxFa3ZLTjs7QTZEL3VLSTtFRW9CQSxtREFMcUI7VUFLckIsMkNBTHFCO0VHUm5CLFVBQUE7QWxFNnVLTjs7QTZEaHdLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxzREFMcUI7VUFLckIsOENBTHFCO0VBS3JCLCtCQUZVO1VBRVYsdUJBRlU7RUd0QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FsRWd3S047O0E2RDd2S0k7RUVvQkEsbURBTHFCO1VBS3JCLDJDQUxxQjtFR1JuQixVQUFBO0FsRTJ2S047O0E2RDl3S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUscURBTHFCO1VBS3JCLDZDQUxxQjtFQUtyQixnQ0FGVTtVQUVWLHdCQUZVO0VHdEJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBbEU4d0tOOztBNkQzd0tJO0VFb0JBLG1EQUxxQjtVQUtyQiwyQ0FMcUI7RUdSbkIsVUFBQTtBbEV5d0tOOztBNkQ1eEtJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLHFEQUxxQjtVQUtyQiw2Q0FMcUI7RUFLckIsOEJBRlU7VUFFVixzQkFGVTtFR3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QWxFNHhLTjs7QTZEenhLSTtFRW9CQSxtREFMcUI7VUFLckIsMkNBTHFCO0VHUm5CLFVBQUE7QWxFdXhLTjs7QTZEMXlLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxzREFMcUI7VUFLckIsOENBTHFCO0VBS3JCLGdDQUZVO1VBRVYsd0JBRlU7RUd0QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FsRTB5S047O0E2RHZ5S0k7RUVvQkEsbURBTHFCO1VBS3JCLDJDQUxxQjtFR1JuQixVQUFBO0FsRXF5S047O0E2RHh6S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsc0RBTHFCO1VBS3JCLDhDQUxxQjtFQUtyQixnQ0FGVTtVQUVWLHdCQUZVO0VHdEJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBbEV3ektOOztBNkRyektJO0VFb0JBLG1EQUxxQjtVQUtyQiwyQ0FMcUI7RUdSbkIsVUFBQTtBbEVtektOOztBNkR0MEtJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLG1EQUxxQjtVQUtyQiwyQ0FMcUI7RUFLckIsNkJBRlU7VUFFVixxQkFGVTtFR3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QWxFczBLTjs7QTZEbjBLSTtFRW9CQSxxREFMcUI7VUFLckIsNkNBTHFCO0VHUm5CLFVBQUE7QWxFaTBLTjs7QTZEcDFLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxtREFMcUI7VUFLckIsMkNBTHFCO0VBS3JCLCtCQUZVO1VBRVYsdUJBRlU7RUd0QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FsRW8xS047O0E2RGoxS0k7RUVvQkEscURBTHFCO1VBS3JCLDZDQUxxQjtFR1JuQixVQUFBO0FsRSswS047O0E2RGwyS0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsbURBTHFCO1VBS3JCLDJDQUxxQjtFQUtyQixnQ0FGVTtVQUVWLHdCQUZVO0VHdEJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBbEVrMktOOztBNkQvMUtJO0VFb0JBLHNEQUxxQjtVQUtyQiw4Q0FMcUI7RUdSbkIsVUFBQTtBbEU2MUtOOztBNkRoM0tJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLG1EQUxxQjtVQUtyQiwyQ0FMcUI7RUFLckIsOEJBRlU7VUFFVixzQkFGVTtFR3RCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QWxFZzNLTjs7QTZENzJLSTtFRW9CQSxzREFMcUI7VUFLckIsOENBTHFCO0VHUm5CLFVBQUE7QWxFMjJLTjs7QTZEOTNLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxtREFMcUI7VUFLckIsMkNBTHFCO0VBS3JCLGdDQUZVO1VBRVYsd0JBRlU7RUd0QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FsRTgzS047O0E2RDMzS0k7RUVvQkEscURBTHFCO1VBS3JCLDZDQUxxQjtFR1JuQixVQUFBO0FsRXkzS047O0E2RDU0S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsbURBTHFCO1VBS3JCLDJDQUxxQjtFQUtyQixnQ0FGVTtVQUVWLHdCQUZVO0VHdEJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBbEU0NEtOOztBNkR6NEtJO0VFb0JBLHFEQUxxQjtVQUtyQiw2Q0FMcUI7RUdSbkIsVUFBQTtBbEV1NEtOOztBNkQxNUtJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLDZCQUZVO1VBRVYscUJBRlU7RUl6QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FuRTQ1S047O0E2RHQ1S0k7RUVvQkEsMkJBRlU7VUFFVixtQkFGVTtFSWRSLFVBQUE7QW5FdTVLTjs7QTZEdjZLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSw2QkFGVTtVQUVWLHFCQUZVO0VJekJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBbkV5NktOOztBNkRuNktJO0VFb0JBLDJCQUZVO1VBRVYsbUJBRlU7RUlkUixVQUFBO0FuRW82S047O0E2RHA3S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsMkJBRlU7VUFFVixtQkFGVTtFSXpCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QW5FczdLTjs7QTZEaDdLSTtFRW9CQSw2QkFGVTtVQUVWLHFCQUZVO0VJZFIsVUFBQTtBbkVpN0tOOztBNkRqOEtJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLDJCQUZVO1VBRVYsbUJBRlU7RUl6QlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FuRW04S047O0E2RDc3S0k7RUVvQkEsNkJBRlU7VUFFVixxQkFGVTtFSWRSLFVBQUE7QW5FODdLTjs7QTZEOThLSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSxvQ0FGVTtVQUVWLDRCQUZVO0VLMUJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBcEVpOUtOOztBNkQxOEtJO0VFb0JBLDRCQUZVO1VBRVYsb0JBRlU7RUtmUixVQUFBO0FwRTQ4S047O0E2RDM5S0k7RUNsQkYsa0NBQUE7VUFBQSwwQkFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7RUNpREUsNEJBRlU7VUFFVixvQkFGVTtFSzFCUix1REFBQTtFQUFBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwwREFBQTtFQUNBLFVBQUE7QXBFODlLTjs7QTZEdjlLSTtFRW9CQSxtQ0FGVTtVQUVWLDJCQUZVO0VLZlIsVUFBQTtBcEV5OUtOOztBNkR4K0tJO0VDbEJGLGtDQUFBO1VBQUEsMEJBQUE7RUFDQSwwQ0FBQTtVQUFBLGtDQUFBO0VDaURFLG1DQUZVO1VBRVYsMkJBRlU7RUsxQlIsdURBQUE7RUFBQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsMERBQUE7RUFDQSxVQUFBO0FwRTIrS047O0E2RHArS0k7RUVvQkEsNEJBRlU7VUFFVixvQkFGVTtFS2ZSLFVBQUE7QXBFcytLTjs7QTZEci9LSTtFQ2xCRixrQ0FBQTtVQUFBLDBCQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtFQ2lERSw0QkFGVTtVQUVWLG9CQUZVO0VLMUJSLHVEQUFBO0VBQUEsK0NBQUE7RUFBQSx1Q0FBQTtFQUFBLDBEQUFBO0VBQ0EsVUFBQTtBcEV3L0tOOztBNkRqL0tJO0VFb0JBLG9DQUZVO1VBRVYsNEJBRlU7RUtmUixVQUFBO0FwRW0vS047O0E4RGgrS007RUFBWSw2Q0FBQTtVQUFBLHFDQUFBO0E5RG8rS2xCOztBOERwK0tNO0VBQVksNkNBQUE7VUFBQSxxQ0FBQTtBOUR3K0tsQjs7QThEbCtLTTtFQUFZLHFEQUFBO1VBQUEsNkNBQUE7QTlEcytLbEI7O0E4RHQrS007RUFBWSxtREFBQTtVQUFBLDJDQUFBO0E5RDArS2xCOztBOEQxK0tNO0VBQVksc0RBQUE7VUFBQSw4Q0FBQTtBOUQ4K0tsQjs7QThEOStLTTtFQUFZLHVEQUFBO1VBQUEsK0NBQUE7QTlEay9LbEI7O0E4RGwvS007RUFBWSwwREFBQTtVQUFBLGtEQUFBO0E5RHMvS2xCOztBOER0L0tNO0VBQVksc0ZBQUE7VUFBQSw4RUFBQTtBOUQwL0tsQjs7QThEMS9LTTtFQUFZLHVGQUFBO1VBQUEsK0VBQUE7QTlEOC9LbEI7O0E4RDkvS007RUFBWSxzRkFBQTtVQUFBLDhFQUFBO0E5RGtnTGxCOztBOEQ1L0tNO0VBQWtCLDBDQUFBO1VBQUEsa0NBQUE7QTlEZ2dMeEI7O0E4RGhnTE07RUFBa0IsMENBQUE7VUFBQSxrQ0FBQTtBOURvZ0x4Qjs7QThENS9LRTtFT3ZFQSwrQkFBQTtVQUFBLHVCQUFBO0FyRXVrTEY7QStEamtMRTtFQUdJO0lBR0ksaUNBQUE7WUFBQSx5QkFBQTtFL0QrakxSO0UrRGxrTEk7SUFHSSxrQ0FBQTtZQUFBLDBCQUFBO0UvRGtrTFI7QUFDRjtBK0R6a0xFO0VBR0k7SUFHSSxpQ0FBQTtZQUFBLHlCQUFBO0UvRCtqTFI7RStEbGtMSTtJQUdJLGtDQUFBO1lBQUEsMEJBQUE7RS9Ea2tMUjtBQUNGOztBOER2Z0xFO0VPeEVBLHFDQUFBO1VBQUEsNkJBQUE7QXJFbWxMRjtBK0Q3a0xFO0VBR0k7SUFHSSxpQ0FBQTtZQUFBLHlCQUFBO0UvRDJrTFI7RStEOWtMSTtJQUdJLDRCQUFBO1lBQUEsb0JBQUE7RS9EOGtMUjtBQUNGO0ErRHJsTEU7RUFHSTtJQUdJLGlDQUFBO1lBQUEseUJBQUE7RS9EMmtMUjtFK0Q5a0xJO0lBR0ksNEJBQUE7WUFBQSxvQkFBQTtFL0Q4a0xSO0FBQ0Y7O0E4RGxoTEU7RU96RUEsc0NBQUE7VUFBQSw4QkFBQTtBckUrbExGO0ErRHpsTEU7RUFHSTtJQUdJLDRCQUFBO1lBQUEsb0JBQUE7RS9EdWxMUjtFK0QxbExJO0lBR0ksaUNBQUE7WUFBQSx5QkFBQTtFL0QwbExSO0FBQ0Y7QStEam1MRTtFQUdJO0lBR0ksNEJBQUE7WUFBQSxvQkFBQTtFL0R1bExSO0UrRDFsTEk7SUFHSSxpQ0FBQTtZQUFBLHlCQUFBO0UvRDBsTFI7QUFDRjs7QThEN2hMRTtFTzFFQSxtQ0FBQTtVQUFBLDJCQUFBO0FyRTJtTEY7QStEcm1MRTtFQUdJO0lBR0ksK0JBQUE7WUFBQSx1QkFBQTtFL0RtbUxSO0UrRHRtTEk7SUFHSSxnQ0FBQTtZQUFBLHdCQUFBO0UvRHNtTFI7RStEem1MSTtJQUdJLDRCQUFBO1lBQUEsb0JBQUE7RS9EeW1MUjtBQUNGO0ErRGhuTEU7RUFHSTtJQUdJLCtCQUFBO1lBQUEsdUJBQUE7RS9EbW1MUjtFK0R0bUxJO0lBR0ksZ0NBQUE7WUFBQSx3QkFBQTtFL0RzbUxSO0UrRHptTEk7SUFHSSw0QkFBQTtZQUFBLG9CQUFBO0UvRHltTFI7QUFDRjs7QThEMWlMRTs7OztFQUlFLGlDQUFBO1VBQUEseUJBQUE7QTlENmlMSjs7QThEeGlMRTtFQUFZLDJDQUFBO1VBQUEsbUNBQUE7QTlENGlMZDs7QThEeGlMTTtFQUFZLDRDQUFBO1VBQUEsb0NBQUE7QTlENGlMbEI7O0E4RDVpTE07RUFBWSw0Q0FBQTtVQUFBLG9DQUFBO0E5RGdqTGxCOztBOEQxaUxNO0VBQVksb0RBQUE7VUFBQSw0Q0FBQTtBOUQ4aUxsQjs7QThEOWlMTTtFQUFZLGtEQUFBO1VBQUEsMENBQUE7QTlEa2pMbEI7O0E4RGxqTE07RUFBWSxxREFBQTtVQUFBLDZDQUFBO0E5RHNqTGxCOztBOER0akxNO0VBQVksc0RBQUE7VUFBQSw4Q0FBQTtBOUQwakxsQjs7QThEMWpMTTtFQUFZLHlEQUFBO1VBQUEsaURBQUE7QTlEOGpMbEI7O0E4RDlqTE07RUFBWSxxRkFBQTtVQUFBLDZFQUFBO0E5RGtrTGxCOztBOERsa0xNO0VBQVksc0ZBQUE7VUFBQSw4RUFBQTtBOURza0xsQjs7QThEdGtMTTtFQUFZLHFGQUFBO1VBQUEsNkVBQUE7QTlEMGtMbEI7O0E4RHBrTE07RUFBa0IseUNBQUE7VUFBQSxpQ0FBQTtBOUR3a0x4Qjs7QThEeGtMTTtFQUFrQix5Q0FBQTtVQUFBLGlDQUFBO0E5RDRrTHhCOztBc0U1b0xBLFdBQUE7QUFHSTtFQUNJLGlFQUFBO0F0RTZvTFI7O0FzRXpvTEEsVUFBQTtBQUVJO0VBQ0ksb0JBQUE7RUFDQSw2QkFBQTtFQUNBLHFNQUFBO0VBQ0EsbUJBQUE7RUFDQSxrQkFBQTtBdEUyb0xSO0FzRXZvTEEsV0FBQTtBQUVBOztFQUVJLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0Esa0JBQUE7RUFDQSxRQUFBO0VBQ0EscUNBQUE7RUFFQSw2QkFBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtBdEV3b0xKO0FzRXZvTEk7OztFQUNJLGFBQUE7RUFDQSx1QkFBQTtFQUNBLGtCQUFBO0F0RTJvTFI7QXNFMW9MUTs7O0VBQ0ksVUFqRWE7QXRFK3NMekI7QXNFM29MSTs7RUFDSSxhQXBFbUI7QXRFa3RMM0I7QXNFNW9MSTs7RUFDSSxvQkFsRlk7RUFtRlosZUFBQTtFQUNBLGNBQUE7RUFDQSxZQW5GWTtFQW9GWixhQTdFZ0I7RUE4RWhCLG1DQUFBO0VBQ0Esa0NBQUE7QXRFK29MUjs7QXNFM29MQTtFQUNJLFdBQUE7QXRFOG9MSjtBc0U3b0xJO0VBQ0ksVUFBQTtFQUNBLFlBQUE7QXRFK29MUjtBc0U3b0xJO0VBQ0ksWUE5RmU7QXRFNnVMdkI7QXNFOW9MUTtFQUNJLFlBL0ZXO0F0RSt1THZCOztBc0Uzb0xBO0VBQ0ksWUFBQTtBdEU4b0xKO0FzRTdvTEk7RUFDSSxXQUFBO0VBQ0EsV0FBQTtBdEUrb0xSO0FzRTdvTEk7RUFDSSxZQTNHZTtBdEUwdkx2QjtBc0U5b0xRO0VBQ0ksWUE5R1c7QXRFOHZMdkI7O0FzRTNvTEEsU0FBQTtBQUVBO0VBQ0ksbUJBQUE7QXRFNm9MSjs7QXNFMW9MQTtFQUNJLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0F0RTZvTEo7QXNFNW9MSTtFQUNJLGtCQUFBO0VBQ0EscUJBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSxVQUFBO0VBQ0EsZUFBQTtBdEU4b0xSO0FzRTdvTFE7RUFDSSxTQUFBO0VBQ0EsdUJBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtBdEUrb0xaO0FzRTlvTFk7RUFDSSxhQUFBO0F0RWdwTGhCO0FzRS9vTGdCO0VBQ0ksVUFwSks7QXRFcXlMekI7QXNFOW9MWTtFQUNJLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxZQTlKTTtFQStKTixXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQXhLSTtFQXlLSixjQWpLQztFQWtLRCxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsWUF6S0U7RUEwS0YsYUFsS1c7RUFtS1gsbUNBQUE7RUFDQSxrQ0FBQTtBdEVncExoQjtBc0U3b0xRO0VBQ0ksWUFoTE07RUFpTE4sYUEzS1k7QXRFMHpMeEI7O0F1RTUwTEU7RUFDRSxtRkFBQTtBdkUrMExKOztBd0VqMUxBLFdBQUE7QUFFQTtFQUNJLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSwyQkFBQTtFQUNBLHlCQUFBO0VBRUEsc0JBQUE7RUFDQSxxQkFBQTtFQUNBLGlCQUFBO0VBQ0EsdUJBQUE7RUFDQSxtQkFBQTtFQUNBLHdDQUFBO0F4RW0xTEo7O0F3RWoxTEE7RUFDSSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLFNBQUE7RUFDQSxVQUFBO0F4RW8xTEo7QXdFbDFMSTtFQUNJLGFBQUE7QXhFbzFMUjtBd0VqMUxJO0VBQ0ksZUFBQTtFQUNBLFlBQUE7QXhFbTFMUjs7QXdFaDFMQTs7RUFFSSx1Q0FBQTtFQUlBLCtCQUFBO0F4RW0xTEo7O0F3RWgxTEE7RUFDSSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsY0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7QXhFbTFMSjtBd0VqMUxJO0VBRUksV0FBQTtFQUNBLGNBQUE7QXhFazFMUjtBd0UvMExJO0VBQ0ksV0FBQTtBeEVpMUxSO0F3RTkwTEk7RUFDSSxrQkFBQTtBeEVnMUxSOztBd0U3MExBO0VBQ0ksV0FBQTtFQUNBLFlBQUE7RUFDQSxlQUFBO0F4RWcxTEo7QXdFLzBMSTtFQUNJLFlBQUE7QXhFaTFMUjtBd0UvMExJO0VBQ0ksY0FBQTtBeEVpMUxSO0F3RS8wTEk7RUFDSSxhQUFBO0F4RWkxTFI7QXdFNTFMQTtFQWNJLGFBQUE7QXhFaTFMSjtBd0UvMExJO0VBQ0ksb0JBQUE7QXhFaTFMUjtBd0U5MExJO0VBQ0ksY0FBQTtBeEVnMUxSO0F3RTcwTEk7RUFDSSxrQkFBQTtBeEUrMExSO0F3RTUwTEk7RUFDSSxjQUFBO0VBQ0EsWUFBQTtFQUNBLDZCQUFBO0F4RTgwTFI7O0F3RTMwTEE7RUFDSSxhQUFBO0F4RTgwTEo7O0F5RWg3TEEsdUJBQUE7QUFpQ0E7RUFDRSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUVBLG1CQ3JDb0M7RURzQ3BDLFlDckNvQztBMUV1N0x0Qzs7QXlFOTRMQTtFQUNFLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZUFBQTtFQUNBLHdCQUFBO0VBQ0EsbUNBQUE7QXpFaTVMRjs7QXlFNzRMQTtFQUNFLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsY0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7QXpFZzVMRjs7QXlFMzRMRTtFQUNFLFdBQUE7RUFDQSxxQkFBQTtFQUNBLFlBQUE7RUFDQSxzQkFBQTtBekU4NExKOztBeUV2NExJO0VBQ0UsYUFBQTtBekUwNExOOztBeUVwNExBO0VBQ0Usa0JBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtBekV1NExGOztBeUVuNExFOztFQUNFLFdBQUE7RUFDQSxZQUFBO0F6RXU0TEo7O0F5RWw0TEE7RUFDRSxnQkFBQTtBekVxNExGOztBeUVsNExFO0VBRUUsd0JBQUE7RUFDQSxnQkFBQTtBekVxNExKOztBeUVsNExBO0VBQ0UsZUFBQTtFQUNBLHVCQUFBO0VBRUEsZUFBQTtBekVxNExGOztBeUVsNExFO0VBQ0UsWUFBQTtBekVxNExKOztBeUVqNExBOzs7O0VBSUUseUJBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO01BQUEsaUJBQUE7QXpFbzRMRjs7QXlFLzNMRTtFQUNFLGFBQUE7QXpFazRMSjs7QXlFaDNMRTtFQUNFLHdCQUFBO0F6RW0zTEo7O0F5RXoyTEE7RUFDRSxXQ3RKb0M7RUR1SnBDLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0F6RTQyTEY7QXlFMzJMRTtFQUNFLFdDaEtrQztBMUU2Z010QztBeUU1MkxJO0VBQ0UsV0NqS2dDO0ExRStnTXRDOztBeUV2MkxFO0VBQ0UsYUFBQTtBekUwMkxKOztBeUVwMkxFO0VBQ0UsYUFBQTtBekV1MkxKOztBeUVqMkxFO0VBRUUsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxTQUFBO0VBQ0Esd0JBQUE7RUFDQSxjQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7RUFDQSxhQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLDhCQUFBO01BQUEsMEJBQUE7QXpFbTJMSjtBeUVqMkxFO0VBQ0ksVUFBQTtFQUNBLFNBQUE7QXpFbTJMTjs7QXlFNzFMQTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EsaUJBQUE7RUFFQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxNQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtFQUNBLGFDM05vQztFRDROcEMsc0JBQUE7RUFDQSxXQzVOb0M7RUQ4TnBDLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLDBDQUFBO0F6RTgxTEY7QXlFNTFMRTtFQUVFLFVBQUE7QXpFNjFMSjtBeUUxMUxFO0VBQ0UsUUFBQTtBekU0MUxKOztBeUV4MUxFO0VBQ0UsV0MzT2tDO0ExRXNrTXRDOztBeUV0MUxFOztFQUNFLFdDblBrQztFRG9QbEMsV0FBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0F6RTAxTEo7O0F5RXIxTEE7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsV0M3UG9DO0VEOFBwQyxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxtQkFBQTtBekV3MUxGOztBeUVuMUxFO0VBQ0Usa0JBQUE7RUFDQSxhQzNRa0M7RUQ0UWxDLFNBQUE7RUFDQSxRQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLGFBQUE7RUFDQSw2Q0FBQTtBekVzMUxKO0F5RXIxTEk7RUFDRSxpQkFBQTtBekV1MUxOO0F5RXIxTEk7RUFFRSxVQUFBO0F6RXMxTE47QXlFcDFMSTtFQUVFLFdBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdDQUFBO0F6RXExTE47QXlFbDFMSTtFQUVFLHNCQUFBO0VBQ0EseUJBQUE7RUFDQSxRQUFBO0F6RW0xTE47QXlFaDFMSTtFQUNFLHNCQUFBO0VBQ0EseUJBQUE7RUFDQSxZQUFBO0F6RWsxTE47O0F5RTcwTEU7RUFDRSxPQUFBO0F6RWcxTEo7QXlFLzBMSTtFQUNFLDZCQUFBO0VBQ0EsaUJBQUE7QXpFaTFMTjtBeUUvMExJO0VBQ0UsaUJBQUE7RUFDQSxnQ0FBQTtBekVpMUxOOztBeUU3MExFO0VBQ0UsUUFBQTtBekVnMUxKO0F5RS8wTEk7RUFDRSw0QkFBQTtFQUNBLGlCQUFBO0F6RWkxTE47QXlFLzBMSTtFQUNFLCtCQUFBO0F6RWkxTE47O0F5RXgwTEU7RUFDRSxpQkMzVWtDO0VENFVsQyxvQkM1VWtDO0ExRXVwTXRDO0F5RTEwTEk7RUFDRSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQzlVZ0M7QTFFMHBNdEM7QXlFMTBMSTtFQUNFLFVBQUE7QXpFNDBMTjs7QXlFejBMRTtFQUNFLFdBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBekU0MExKO0F5RTMwTEk7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsOENDclhnQztVRHFYaEMsc0NDclhnQztFRHNYaEMsZ0JDbFdnQztBMUUrcU10Qzs7QXlFbjBMRSx3QkFBQTtBQUVFO0VBQ0UsV0FBQTtFQUNBLGVBQUE7RUFDQSxZQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0F6RXEwTE47O0F5RWowTEUsZ0NBQUE7QUFDQTtFQUNFLGNBQUE7QXpFbzBMSjtBeUVuMExJO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsT0FBQTtFQUNBLFNDMVhnQztFRDJYaEMsWUMxWGdDO0VEMlhoQyxjQUFBO0VBQ0EsUUFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsV0FBQTtFQUNBLDhDQzVaZ0M7VUQ0WmhDLHNDQzVaZ0M7RUQ2WmhDLGdCQ25ZZ0M7QTFFd3NNdEM7QXlFbjBMSTtFQUNFLGNDL1hnQztFRGdZaEMsY0FBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtBekVxMExOO0F5RW4wTEk7RUFDRSxTQUFBO0F6RXEwTE47O0F5RWwwTEU7RUFDRSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBekVxMExKOztBeUVuMExFO0VBQ0UsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGNDcFprQztFRHFabEMscUJBQUE7RUFDQSxtQkFBQTtBekVzMExKOztBeUVsMExJO0VBQ0UsZUFBQTtBekVxMExOOztBeUUvekxNO0VBQ0UsZUFBQTtBekVrMExSOztBeUUzekxJO0VBQ0U7O0lBQUE7RUFJRTtJQUNFLGVBQUE7SUFDQSxnQkFBQTtFekU2ekxSO0V5RTF6TFE7SUFDRSxVQUFBO0V6RTR6TFY7RXlFdnpMUTtJQUNFLE1BQUE7SUFDQSxTQUFBO0V6RXl6TFY7RXlFdnpMUTtJQUNFLGVBQUE7SUFDQSxnQkFBQTtFekV5ekxWO0V5RXR6TE07SUFDRSw4QkFBQTtJQUNBLFNBQUE7SUFDQSxTQUFBO0lBQ0EsU0FBQTtJQUNBLGdCQUFBO0lBQ0EsZUFBQTtJQUNBLDhCQUFBO1lBQUEsc0JBQUE7RXpFd3pMUjtFeUV2ekxRO0lBQ0UsVUFBQTtFekV5ekxWO0V5RXR6TE07SUFDRSxVQUFBO0lBQ0EsUUFBQTtFekV3ekxSO0V5RXR6TE07SUFDRSxNQUFBO0lBQ0EsUUFBQTtJQUNBLFdBQUE7SUFDQSxZQUFBO0lBQ0EsaUJBQUE7SUFDQSw4QkFBQTtJQUNBLGVBQUE7SUFDQSxrQkFBQTtJQUNBLFVBQUE7RXpFd3pMUjtBQUNGO0F5RS95TEE7RUFDRTtJQUNFLDhCQUFBO0lBQ0Esc0JBQUE7RXpFaXpMRjtFeUUveUxBO0lBQ0UsMkJBQUE7SUFDQSxtQkFBQTtFekVpekxGO0V5RS95TEE7SUFDRSw4QkFBQTtJQUNBLHNCQUFBO0V6RWl6TEY7RXlFL3lMQTtJQUNFLGlCQy9nQmtDO0lEZ2hCbEMsa0JDaGhCa0M7RTFFaTBNcEM7QUFDRjtBMkU3ME1BOzsrRUFBQTtBQWtFQTs7K0VBQUE7QUFJQTtFQUNFLGlDQXhCZ0I7RUF5QmhCLGNwRVhNO0VvRVlOLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxTQUFBO0EzRSt3TUY7QTJFOXdNRTtFQUNFLGtCQUFBO0EzRWd4TUo7QTJFdnhNQTtFQVdFLFVBQUE7RUFDQSxpQ0FBQTtVQUFBLHlCQUFBO0VBQ0Esb0NBQUE7RUFBQSw0QkFBQTtBM0Urd01GO0EyRTl3TUU7RUFDRSxVQUFBO0EzRWd4TUo7O0EyRTV3TUE7Ozs7OztFQU1FLGlDQWhEZ0I7RUFpRGhCLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxjcEVyQ007RW9Fc0NOLDBCQUFBO0EzRSt3TUY7O0EyRTV3TUE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7QTNFK3dNRjtBR3BzTVE7RXdFN0VSO0lBSUksaUJBQUE7RTNFaXhNRjtBQUNGOztBMkU3d01BO0VBQ0UsZUFBQTtBM0VneE1GO0FHN3NNUTtFd0VwRVI7SUFHSSxpQkFBQTtFM0VreE1GO0FBQ0Y7O0EyRWh4TUE7RUFDRSx5QkFBQTtFQUNBLGNBNUVJO0VBNkVKLGlCQUFBO0EzRW14TUY7O0EyRWp4TUE7RUFDRSxjcEU5RE07QVBrMU1SOztBMkVseE1BO0VBQ0UsY0FuRkk7RUFvRkosd0NBQUE7RUFBQSxnQ0FBQTtBM0VxeE1GO0EyRXB4TUU7RUFDRSxjQUFBO0EzRXN4TUo7O0EyRTl3TUE7O0VBRUUsZUFBQTtFQUNBLGdCQUFBO0EzRWl4TUY7O0EyRS93TUE7RUFDRSxnQkFBQTtBM0VreE1GOztBMkUvd01BO0VBQ0UsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtBM0VreE1GOztBMkUvd01BOztFQUVFLGtCQUFBO0EzRWt4TUY7O0EyRS93TUE7RUFDRSxjQUFBO0VBQ0EsbUJBQUE7QTNFa3hNRjs7QTJFL3dNQTtFQUNFLHNCQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0EzRWt4TUY7O0EyRS93TUE7RUFDRSx3QkFBQTtBM0VreE1GOztBMkUvd01BO0VBQ0UsV0FBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBM0VreE1GOztBMkU5d01FO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0EzRWl4TUo7QTJFL3dNRTtFQUNFLFdBQUE7QTNFaXhNSjs7QTJFN3dNQTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBM0VneE1GO0FHL3hNUTtFd0VZUjtJQUtJLGFBQUE7RTNFa3hNRjtBQUNGO0EyRWp4TUU7O0VBRUUsa0JBQUE7RUFDQSxhQUFBO0VBQ0EsUUFBQTtFQUNBLGNwRTdJSTtBUGc2TVI7QUczeU1RO0V3RW1CTjs7SUFPSSx5QkFBQTtFM0VzeE1KO0FBQ0Y7QTJFcHhNRTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esc0JBQUE7TUFBQSxtQkFBQTtVQUFBLHFCQUFBO0VBQ0Esb0NBQUE7RUFDQSxnQkFBQTtFQUNBLHdCQUFBO0EzRXN4TUo7QUd4ek1RO0V3RTZCTjtJQU9JLGlCQUFBO0UzRXd4TUo7QUFDRjtBMkV2eE1JO0VBQ0Usa0JBQUE7QTNFeXhNTjtBMkV2eE1JO0VBQ0UsY0FsTEE7RUFtTEEsa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSx5QkFBQTtBM0V5eE1OO0EyRXh4TU07RUFDRSxjcEV0S0E7RW9FdUtBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSx5QkFBQTtBM0UweE1SO0EyRXR4TUU7RUFDRSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0Esc0JBQUE7RUFDQSw0QkFBQTtFQUNBLDJCQUFBO0VBQ0Esc0JBQUE7QTNFd3hNSjtBMkV2eE1JO0VBQ0UsK0JBQUE7QTNFeXhNTjtBMkV0eE1FO0VBQ0Usa0JBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtBM0V3eE1KOztBMkVseE1BO0VBQ0UsbUJwRXRNTTtFb0V1TU4saUJBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7QTNFcXhNRjtBMkVweE1FO0VBQ0UsaUJBQUE7QTNFc3hNSjtBMkVweE1FO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0EzRXN4TUo7O0EyRWx4TUE7RUFDRSxjcEV2Tk07RW9Fd05OLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0EzRXF4TUY7O0EyRWx4TUE7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSw4QkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsYUFBQTtBM0VxeE1GO0EyRXB4TUU7RUFDRSxjQUFBO0VBQ0EsV0FBQTtBM0VzeE1KOztBMkVseE1BO0VBQ0UsY0FoUUk7QTNFcWhOTjs7QTJFbHhNQTtFQUNFLHlCQXBRSTtBM0V5aE5OOztBMkVseE1BO0VBQ0Usa0JBQUE7RUFDQSxzQkFBQTtFQUNBLFNBQUE7RUFDQSxnQkFBQTtBM0VxeE1GO0EyRXB4TUU7RUFDRSxjcEUxUEk7QVBnaE5SOztBMkVseE1BO0VBQ0UseUJBbFJJO0EzRXVpTk47O0EyRWx4TUE7RUFDRSxXQUFBO0EzRXF4TUY7O0EyRWx4TUE7RUFDRSxjQTFSSTtBM0UraU5OOztBMkVseE1BO0VBQ0UsY0FBQTtBM0VxeE1GOztBMkVseE1BO0VBQ0UsZ0JBQUE7RUFDQSxXQUFBO0VBQ0Esb0JBQUE7RUFDQSxpQkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EseUJwRXhSTTtBUDZpTlI7QTJFcHhNRTtFQUNFLHFCQS9VRztBM0VxbU5QOztBMkVseE1BO0VBQ0UsZ0JBQUE7QTNFcXhNRjs7QTJFbHhNQTtFQUNFLHlCQXhVTTtFQXlVTixjQUFBO0EzRXF4TUY7O0EyRWx4TUE7O0VBRUUseUJBQUE7QTNFcXhNRjs7QTJFbHhNQTs7RUFFRSx5QkFBQTtBM0VxeE1GOztBMkU5d01BO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxnQkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0UsZ0JBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLGdCQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxnQkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0Usa0JBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLHFCQUFBO0VBQ0EscUJBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLFdBQUE7RUFDQSxpQkFBQTtFQUNBLHlCQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxpQkFBQTtFQUNBLG9CQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxpQkFBQTtFQUNBLG9CQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxtQkFBQTtFQUNBLHNCQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxvQkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0UscUJBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLG9CQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxnQkFBQTtFQUNBLGVBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLGdCQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLFdBQUE7RUFDQSxlQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxVQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxlQUFBO0VBQ0EsV0FBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtBM0VpeE1GOztBMkU5d01BOztFQUVFLFVBQUE7QTNFaXhNRjs7QTJFOXdNQTs7RUFFRSw2QkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0Usb0NBQUE7RUFDQSxXQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxVQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxtQkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0UsNkNBQUE7RUFDQSxVQUFBO0VBQ0EsYUFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0UseURBQUE7RUFDQSxVQUFBO0EzRWl4TUY7O0EyRTl3TUE7OztFQUdFLGNBNWNJO0EzRTZ0Tk47O0EyRTl3TUE7RUFDRSxvQkFBQTtBM0VpeE1GOztBMkU5d01BO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7QTNFaXhNRjs7QTJFOXdNQTtFQUNFLGtCQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRSxZQUFBO0EzRWl4TUY7O0EyRTl3TUE7RUFDRTtJQUNFLGlCQUFBO0UzRWl4TUY7QUFDRjtBMkU5d01BLDBCQUFBO0FBRUE7RUFDRSxnQkFBQTtBM0Urd01GO0EyRTl3TUU7RUFDRSxXQUFBO0EzRWd4TUo7QTJFOXdNRTtFQUNFLGtDQUFBO0EzRWd4TUo7QTJFOXdNRTtFQUNFLGlCQUFBO0EzRWd4TUo7QTJFOXdNRTtFQUNFLHNCQUFBO0EzRWd4TUo7QTJFOXdNRTtFQUNFLGtCQUFBO0VBQ0EsY0FBQTtBM0VneE1KOztBMkUzd01BO0VBQ0UsZ0JBQUE7QTNFOHdNRjs7QTJFMXdNQTtFQUNFLGNBQUE7RUFDQSxlQUFBO0EzRTZ3TUY7O0EyRTF3TUE7RUFDRSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxpREFBQTtFQUNBLHlDQUFBO0VBQ0Esa0JBQUE7QTNFNndNRjtBMkUzd01JO0VBQ0UsVUFBQTtFQUNBLDZCQUFBO0VBRUEscUJBQUE7RUFDQSxtQ0FBQTtFQUNBLDJCQUFBO0EzRTZ3TU47QTJFMXdNRTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtBM0U0d01KO0EyRTF3TUU7O0VBRUUsY0FBQTtBM0U0d01KO0EyRTF3TUU7RUFDRSxnREFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7QTNFNHdNSjs7QTJFeHdNQTtFQUNFO0lBQ0Usa0JBQUE7RTNFMndNRjtFMkV6d01BO0lBQ0UsZUFBQTtFM0Uyd01GO0UyRXp3TUE7SUFDRSxpQkFBQTtFM0Uyd01GO0UyRXp3TUE7SUFDRSxlQUFBO0UzRTJ3TUY7QUFDRjtBMkV2d01BO0VBQ0Usc0JBQUE7QTNFeXdNRjs7QTJFdHdNQTtFQUNFLFdBQUE7RUFDQSxRQUFBO0EzRXl3TUY7O0EyRXB3TUE7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBM0V1d01GO0EyRXR3TUU7RUFDRSxrQkFBQTtBM0V3d01KO0EyRXR3TUU7RUFDRSxjcEV0akJJO0VvRXVqQkosa0JBQUE7QTNFd3dNSjs7QTJFcHdNQTtFQUNFLGdCQUFBO0EzRXV3TUY7O0EyRW53TUE7RUFDRSxnQkFBQTtFQUNBLGNwRWxrQk07RW9FbWtCUjs7O01BQUE7QTNFeXdNQTtBMkVyd01FO0VBQ0UsV0FBQTtBM0V1d01KO0EyRXJ3TUU7RUFDRSxpQ0ExbEJjO0VBMmxCZCxjcEU3a0JJO0VvRThrQkosZUFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7QTNFdXdNSjtBR2p1TlE7RXdFcWROO0lBT0ksbUJBQUE7SUFDQSx3QkFBQTtFM0V5d01KO0FBQ0Y7QUd2dU5RO0V3RXFkTjtJQVdJLGtCQUFBO0UzRTJ3TUo7QUFDRjtBMkV2eE1FO0VBYUU7Ozs7Ozs7OztJQUFBO0EzRXN4TUo7QTJFM3dNRTtFQUNFLHFCQUFBO0VBQ0EsY0FBQTtBM0U2d01KO0FHNXZOUTtFd0U2ZU47SUFJSSx3QkFBQTtJQUNBLG1CQUFBO0lBQ0EsZ0JBQUE7RTNFK3dNSjtBQUNGO0EyRXh6TUE7RUEyQ0U7Ozs7Ozs7Ozs7SUFBQTtBM0UweE1GO0EyRS93TUU7RUFFRSxlQUFBO0VBRUEsb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxrQkFBQTtBM0Urd01KO0FHdHhOUTtFd0VpZ0JOO0lBWUksaUJBQUE7RTNFNndNSjtBQUNGOztBMkUxd01BOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FBQTtBQXNDQTtFQUNFLG1CQUFBO0EzRTR3TUY7QUdwME5RO0V3RXVqQlI7SUFHSSxtQkFBQTtFM0U4d01GO0FBQ0Y7O0EyRTF3TUE7RUFDRSxlQUFBO0VBQ0EsYUFBQTtFQUVBLGFBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLDJCQUFBO0VBQ0Esc0NBQUE7RUFBQSw4QkFBQTtBM0U0d01GO0EyRTN3TUU7RUFDRSx5QkFBQTtBM0U2d01KO0EyRTN3TUU7RUFDRSxlQUFBO0VBQ0EsYUFBQTtFQUVBLGFBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxTQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLHNDQUFBO0VBQ0Esc0NBQUE7RUFBQSw4QkFBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLFVBQUE7QTNFNHdNSjtBMkUzd01JO0VBQ0UsVUFBQTtFQUNBLGNBQUE7QTNFNndNTjtBMkUzd01JO0VBQ0UsVUFBQTtFQUNBLGFBQUE7QTNFNndNTjtBMkUzd01JO0VBQ0U7SUFDRSwrQkFBQTtJQUVBLHVCQUFBO0UzRTZ3TU47RTJFM3dNSTtJQUNFLGlDQUFBO0lBRUEseUJBQUE7RTNFNndNTjtBQUNGO0EyRTN3TUk7RUFDRTtJQUdFLCtCQUFBO0lBRUEsdUJBQUE7RTNFNndNTjtFMkUzd01JO0lBR0UsaUNBQUE7SUFFQSx5QkFBQTtFM0U2d01OO0FBQ0Y7QTJFM3dNSTtFQUNFLDhDQUFBO0VBSUEsc0NBQUE7RUFDQSxlQUFBO0EzRTZ3TU47O0EyRXJ3TUU7RUFDRSxtQkExd0JLO0EzRWtoT1Q7QTJFdHdNRTtFQUNFLG1CQTd3Qks7QTNFcWhPVDtBMkV2d01JO0VBQ0UsY0FwMEJDO0EzRTZrT1A7O0EyRWx3TUE7RUFDRSxhQUFBO0EzRXF3TUY7QTJFcHdNRTtFQUNFLGtCQUFBO0VBQ0EsY0F4eUJFO0VBeXlCRixlQUFBO0EzRXN3TUo7QTJFcHdNRTtFQUNFLGtCQUFBO0VBQ0EsY3BFM3hCSTtFb0U0eEJKLGdCQUFBO0EzRXN3TUo7QTJFcHdNRTtFQUNFLHlCQUFBO0VBQ0EsaUNBQUE7RUFDQSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNwRXB5Qkk7RW9FcXlCSixZQUFBO0VBQ0Esa0JBQUE7QTNFc3dNSjtBMkVwd01FO0VBQ0UsV0FBQTtFQUNBLHlCQTV6QkU7RUE2ekJGLHNCQUFBO0VBQ0EsYUFBQTtFQUNBLGlCQUFBO0EzRXN3TUo7QTJFandNRTtFQUNFLGlCQUFBO0VBQ0EseUJBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSwwQkFBQTtFQUNBLGNBajNCRztFQWszQkgsbUJBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0EzRW13TUo7QTJFbHdNSTtFQUNFLGNBOTBCQTtBM0VrbE9OOztBMkVod01BO0VBQ0Usa0JBQUE7RUFDQSxjcEVqMEJNO0VvRWswQk4sdUJBQUE7QTNFbXdNRjtBMkVsd01FO0VBQ0UsYUFBQTtBM0Vvd01KO0EyRWx3TUU7RUFDRSxrQ0FBQTtBM0Vvd01KOztBMkUvdk1BO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7QTNFa3dNRjtBMkVqd01FO0VBQ0UsY0FwMkJFO0VBcTJCRixpQkFBQTtBM0Vtd01KO0EyRWp3TUU7RUFDRSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY3BFeDFCSTtFb0V5MUJKLGtCQUFBO0EzRW13TUo7QTJFandNRTtFQUNFLGdCQUFBO0EzRW13TUo7QTJFandNRTtFQUNFLG1CQUFBO0EzRW13TUo7QTJFandNRTtFQUNFLHFCQUFBO0EzRW13TUo7QTJFandNRTtFQUNFLG1CQUFBO0EzRW13TUo7QTJFaHdNSTtFQUNFLGFBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0EsaUJBQUE7RUFDQSx5QkFBQTtBM0Vrd01OO0EyRWp3TU0sc0VBQUEseUNBQUE7RUFDRSxjQXQ2QkQ7RUF1NkJDLFVBQUEsRUFBQSxZQUFBO0EzRW13TVI7QTJFcndNTSw2REFBQSx5Q0FBQTtFQUNFLGNBdDZCRDtFQXU2QkMsVUFBQSxFQUFBLFlBQUE7QTNFbXdNUjtBMkVyd01NLGlFQUFBLHlDQUFBO0VBQ0UsY0F0NkJEO0VBdTZCQyxVQUFBLEVBQUEsWUFBQTtBM0Vtd01SO0EyRXJ3TU0sa0VBQUEseUNBQUE7RUFDRSxjQXQ2QkQ7RUF1NkJDLFVBQUEsRUFBQSxZQUFBO0EzRW13TVI7QTJFcndNTSx3REFBQSx5Q0FBQTtFQUNFLGNBdDZCRDtFQXU2QkMsVUFBQSxFQUFBLFlBQUE7QTNFbXdNUjtBMkVod01NLGlFQUFBLDRCQUFBO0VBQ0UsY0EzNkJEO0EzRTZxT1A7QTJFL3ZNTSxrRUFBQSxtQkFBQTtFQUNFLGNBLzZCRDtBM0Vnck9QO0EyRS92TU07RUFDRSxvQkFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0EzRWl3TVI7O0EyRTN2TUE7OytFQUFBO0FBTUk7RUFDQSxlQUFBO0VBQ0EseUJBQUE7QTNFMnZNSjtBMkV4dk1FO0VBQ0UseUJBcjZCRTtBM0UrcE9OOztBMkV0dk1BOzsrRUFBQTtBQUdBLGFBQUE7QUFDQTtFQUNFLFVBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsU0FBQTtFQUNBLFFBQUE7RUFDQSxXQUFBO0EzRXl2TUY7O0EyRXJ2TUEsV0FBQTtBQUNBOztFQUVFLDhCQUFBO1VBQUEsc0JBQUE7QTNFd3ZNRjs7QTJFdHZNQTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7QTNFeXZNRjs7QTJFdnZNQTtFQUNFLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxrQkFBQTtFQUNBLHdCQUFBO0VBQ0EsMkRBQUE7VUFBQSxtREFBQTtBM0Uwdk1GOztBMkV4dk1BO0VBQ0UsU0FBQTtFQUNBLDhDQUFBO1VBQUEsc0NBQUE7QTNFMnZNRjs7QTJFenZNQTtFQUNFLFNBQUE7RUFDQSw4Q0FBQTtVQUFBLHNDQUFBO0EzRTR2TUY7O0EyRTF2TUE7RUFDRSxVQUFBO0VBQ0EsOENBQUE7VUFBQSxzQ0FBQTtBM0U2dk1GOztBMkUzdk1BO0VBQ0UsVUFBQTtFQUNBLDhDQUFBO1VBQUEsc0NBQUE7QTNFOHZNRjs7QTJFNXZNQTtFQUNFO0lBQ0UsMkJBQUE7WUFBQSxtQkFBQTtFM0Urdk1GO0UyRTd2TUE7SUFDRSwyQkFBQTtZQUFBLG1CQUFBO0UzRSt2TUY7QUFDRjs7QTJFcndNQTtFQUNFO0lBQ0UsMkJBQUE7WUFBQSxtQkFBQTtFM0Urdk1GO0UyRTd2TUE7SUFDRSwyQkFBQTtZQUFBLG1CQUFBO0UzRSt2TUY7QUFDRjtBMkU3dk1BO0VBQ0U7SUFDRSwyQkFBQTtZQUFBLG1CQUFBO0UzRSt2TUY7RTJFN3ZNQTtJQUNFLDJCQUFBO1lBQUEsbUJBQUE7RTNFK3ZNRjtBQUNGO0EyRXJ3TUE7RUFDRTtJQUNFLDJCQUFBO1lBQUEsbUJBQUE7RTNFK3ZNRjtFMkU3dk1BO0lBQ0UsMkJBQUE7WUFBQSxtQkFBQTtFM0Urdk1GO0FBQ0Y7QTJFN3ZNQTtFQUNFO0lBQ0Usa0NBQUE7WUFBQSwwQkFBQTtFM0Urdk1GO0UyRTd2TUE7SUFDRSxxQ0FBQTtZQUFBLDZCQUFBO0UzRSt2TUY7QUFDRjtBMkVyd01BO0VBQ0U7SUFDRSxrQ0FBQTtZQUFBLDBCQUFBO0UzRSt2TUY7RTJFN3ZNQTtJQUNFLHFDQUFBO1lBQUEsNkJBQUE7RTNFK3ZNRjtBQUNGO0EyRTV2TUE7OytFQUFBO0FBR0E7RUFDRSw4QkFBQTtFQUNBLDBCQUFBO0EzRTh2TUY7O0EyRTN2TUE7OytFQUFBO0FBR0E7RUFDRSx3QkFBQTtBM0U4dk1GOztBNEUxeU9FO0VBQ0UseUJBQUE7QTVFNnlPSjtBNEUzeU9FO0VBQ0Usa0JBQUE7QTVFNnlPSjtBRy9uT1E7RXlFN0tKO0lBRUksa0JBQUE7RTVFOHlPTjtBQUNGO0E0RTN5T0U7RUFDRSxpQkFBQTtBNUU2eU9KOztBNEV4eU9FO0VBQ0UsY3JFd0NVO0FQbXdPZDs7QTRFdHlPRTtFQUNFLGtCQUFBO0VBQ0EscUJBQUE7QTVFeXlPSjs7QTRFcHlPRTtFQUNFLGdCQUFBO0VBQ0EsbUJBQUE7QTVFdXlPSjs7QTRFbHlPRTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0E1RXF5T0o7O0E2RTkwT0E7OytFQUFBO0FBR0U7RUFDRSx3QkFBQTtFQUVBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxXQUFBO0VBQ0E7O0lBQUE7QTdFazFPSjtBNkUvME9JO0VBQ0UsdUJBQUE7QTdFaTFPTjtBRzFxT1E7RTBFeEtKO0lBR0ksVUFBQTtFN0VtMU9OO0FBQ0Y7QTZFajFPSTtFQUNFLG1CQUFBO0E3RW0xT047QTZFajFPSTtFQUNFLGdCQUFBO0E3RW0xT047QTZFNzBPSTtFQUNFLFlBQUE7QTdFKzBPTjtBNkU3ME9JO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0E3RSswT047QTZFNTBPSTtFQUNFLFVBQUE7RUFDQSxldEV5QkU7QVBxek9SO0E2RTUwT0k7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGF0RW9CRTtFc0VuQkYsa0JBQUE7QTdFODBPTjtBNkU1ME9JO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxjdEVjRTtBUGcwT1I7QTZFMzBPTTtFQUNFLGN0RVVBO0VzRVRBLGV0RVNBO0FQbzBPUjtBNkUzME9NO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0E3RTYwT1I7QUd2dE9RO0UwRTVIRjtJQVFJLGNBQUE7RTdFKzBPUjtBQUNGO0E2RTkwT1E7RUFDRSw2QkFBQTtBN0VnMU9WO0E2RTUwT007RUFDRSxpQkFBQTtBN0U4ME9SO0E2RTMwT0k7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtBN0U2ME9OO0E2RTUwT007RUFDRSxnQkFBQTtBN0U4ME9SO0E2RTMwT0k7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHFCQUFBO01BQUEsa0JBQUE7VUFBQSx5QkFBQTtBN0U2ME9OO0E2RTUwT007RUFDRSxjdEV2QkE7QVBxMk9SO0FHaHZPUTtFMEUxRkU7SUFFSSxtQkFBQTtFN0U0ME9aO0FBQ0Y7QTZFMzBPWTtFQUNFLGNBQUE7RUFDQSxnQkFBQTtBN0U2ME9kO0E2RTMwT1k7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7QTdFNjBPZDtBNkUzME9ZO0VBQ0UsVUFBQTtFQUNBLFlBQUE7RUFDQSx5QkY3RlA7RUU4Rk8sZUFBQTtFQUNBLGtCQUFBO0E3RTYwT2Q7QTZFejBPUTtFQUNFLFlBQUE7QTdFMjBPVjtBNkVyME9JO0VBRUUseUJ0RTNERTtBUGk0T1I7QTZFcjBPTTtFQUNFLGN0RTVEQTtBUG00T1I7QTZFMzBPSTtFQU1FOzs7O0lBQUE7QTdFNDBPTjtBNkV0ME9JO0VBRUUsY3RFdEVFO0VzRXVFRixhQUFBO0VBQ0Esa0JBQUE7QTdFdTBPTjtBRzF4T1E7RTBFakRKO0lBTUksa0JBQUE7SUFDQSxtQkFBQTtFN0V5ME9OO0FBQ0Y7QUdoeU9RO0UwRWpESjtJQVVJLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSxZQUFBO0U3RTIwT047QUFDRjtBNkUxME9NO0VBQ0UsaUNGbEdVO0VFbUdWLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EseUJBQUE7QTdFNDBPUjtBNkUxME9VO0VBQ0UsaUJBQUE7QTdFNDBPWjtBR2p6T1E7RTBFNUJFO0lBR0ksYUFBQTtFN0U4ME9aO0FBQ0Y7QTZFMTBPTTtFQUNFLGlDRmpIVTtFRWtIVixnQkFBQTtFQUNBLGN0RXBHQTtBUGc3T1I7QTZFejBPUTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSxzQkFBQTtBN0UyME9WO0E2RTEwT1U7RUFDRSxnQkFBQTtBN0U0ME9aO0E2RXowT1k7RUFDRSxTQUFBO0VBQ0EscUJBQUE7RUFDQSwwQkFBQTtFQUNBLDZCQUFBO0E3RTIwT2Q7QUd6ME9RO0UwRU5JO0lBTUksZUFBQTtFN0U2ME9kO0FBQ0Y7QTZFNzFPTTtFQXFCRTs7Ozs7Ozs7Ozs7OztJQUFBO0E3RXcxT1I7QTZFMTBPUTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtBN0U0ME9WO0E2RXgwT007RUFDRSxvQkFBQTtFQUNBLGNBQUE7RUFDQSxhQUFBO0VBRUEsa0JBQUE7RUFDQSxNQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0E3RXkwT1I7QTZFeDBPUTtFQUNFLFFBQUE7RUFDQSxPQUFBO0VBRUEseUJ0RS9KRjtBUHcrT1I7QTZFeDBPVTtFQUNFLDBCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtBN0UwME9aO0E2RXowT1k7RUFDRSxrQkFBQTtBN0UyME9kO0FHNzNPUTtFMEUyQkY7SUE0QkksaUJBQUE7SUFDQSxnQkFBQTtFN0UwME9SO0FBQ0Y7QUduNE9RO0UwRTBEQTtJQUVJLGtCQUFBO0U3RTIwT1Y7QUFDRjtBNkVyME9jO0VBQ0UsOEJBQUE7VUFBQSxzQkFBQTtBN0V1ME9oQjtBNkVyME9jO0VBQ0UsVUFBQTtBN0V1ME9oQjtBNkVsME9RO0VBQ0UsbUJBQUE7QTdFbzBPVjtBNkVuME9VO0VBQ0UscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0E3RXEwT1o7QTZFcDBPWTtFQUNFLFdBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0E3RXMwT2Q7QTZFbjBPVTtFQUNFLGtCQUFBO0E3RXEwT1o7QTZFcDBPWTtFQUNFLFVBQUE7RUFDQSxnQkFBQTtBN0VzME9kO0FHajZPUTtFMEV5Rkk7SUFJSSxXQUFBO0lBQ0EsZ0JBQUE7RTdFdzBPZDtBQUNGO0E2RXIwT1U7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLG9DQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0E3RXUwT1o7QTZFcjBPVTtFQUNFLGlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdCQUFBO0E3RXUwT1o7QTZFdDBPWTtFQUNFLGlCQUFBO0E3RXcwT2Q7QTZFcDZPTTtFQWdHRTs7Ozs7Ozs7SUFBQTtBN0UrME9SO0E2RXAwT0k7RUFDRSwyQkFBQTtFQUNBLG1CQUFBO0E3RXMwT047QUc5OE9RO0UwRXNJSjtJQUlJLGdDQUFBO0U3RXcwT047QUFDRjs7QTZFaDBPSTtFQUNFLG1CQUFBO0E3RW0wT047QUd2OU9RO0UwRXNKSjtJQUdJLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7SUFDQTs7OztNQUFBO0lBS0EsZUFBQTtJQUNBLHFCQUFBO0lBQ0Esc0JBQUE7RTdFazBPTjtFNkVqME9NO0lBQ0UsVUFBQTtFN0VtME9SO0U2RWgwT007SUFDRSx1QkFBQTtRQUFBLG9CQUFBO1lBQUEsMkJBQUE7SUFDQSw4QkFBQTtJQUFBLDZCQUFBO1FBQUEsdUJBQUE7WUFBQSxtQkFBQTtFN0VrME9SO0U2RWgwT007SUFFRSxVQUFBO0U3RWkwT1I7RTZFaDBPUTtJQUNFLFdBQUE7RTdFazBPVjtFNkUvek9VO0lBQ0UscUJBQUE7UUFBQSxrQkFBQTtZQUFBLHlCQUFBO0lBQ0Esb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7RTdFaTBPWjtFNkU3ek9NO0lBQ0Usb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSxxQkFBQTtRQUFBLGtCQUFBO1lBQUEseUJBQUE7SUFDQSxVQUFBO0U3RSt6T1I7RTZFOXpPUTtJQUNFLGtCQUFBO0lBQ0EseUJGOVdMO0lFZ1hLLHlCQUFBO0lBQ0EsbUJBQUE7SUFDQSx3QkFBQTtFN0Urek9WO0U2RTl6T1U7SUFDRSx5QkY1V1A7RTNFNHFQTDtFNkU3ek9RO0lBQ0UsY0FBQTtFN0Urek9WO0FBQ0Y7QUd6Z1BRO0UwRXNKSjtJQXdESSxZQUFBO0lBQ0Esa0JBQUE7SUFDQSxtQkFBQTtFN0Urek9OO0FBQ0Y7QTZFOXpPTTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFFQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7QTdFK3pPUjtBNkU3ek9VO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtFQUNBLHlCRnpXTjtFRTBXTSxXQUFBO0VBQ0EsV0FBQTtBN0Urek9aO0E2RTF6T007RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QTdFNHpPUjtBNkV6ek9NO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7QTdFMnpPUjtBNkV2ek9JO0VBQ0UsVUFBQTtFQUNBLFNBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUVBLFdBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QTdFd3pPTjtBR3BqUFE7RTBFc1FFO0lBRUUsZUFBQTtFN0Vnek9WO0FBQ0Y7QTZFOXlPUTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7QTdFZ3pPVjtBNkU1eU9RO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxjQUFBO0E3RTh5T1Y7QTZFN3lPVTtFQUNFLGVBQUE7QTdFK3lPWjtBNkV0N09HO0VBNElEOzs7Ozs7Ozs7O01BQUE7QTdFdXpPRjtBNkUzeU9NO0VBQ0UscUJBQUE7QTdFNnlPUjtBNkU1eU9RO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0E3RTh5T1Y7O0E2RW55T0UsV0FBQTtBQUdFO0VBRUUsbUJBQUE7RUFDQSxxREFBQTtVQUFBLDZDQUFBO0E3RW15T047O0E2RS94T0Usa0JBQUE7QUFFQTtFQUNFO0lBQ0Usc0JBQUE7RTdFaXlPSjtFNkU5eE9FO0lBQ0UsaUJBQUE7RTdFZ3lPSjtBQUNGO0E2RTd4T0U7RUFDRTtJQUNFLFVBQUE7RTdFK3hPSjtFNkU3eE9JO0lBQ0UsY0FBQTtFN0UreE9OO0U2RTV4T0k7SUFDRSxXQUFBO0lBRU47OEJBQUE7RTdFOHhPQTtFNkUzeE9NO0lBQ0UsWUFBQTtFN0U2eE9SO0U2RTF4T007SUFDRSxVQUFBO0U3RTR4T1I7RTZFcnhPTTs7SUFFRSxpQkFBQTtJQUNBLFdBQUE7RTdFdXhPUjtFNkVweE9NO0lBQ0UsdUJBQUE7RTdFc3hPUjtFNkVseE9RO0lBQ0Usa0JBQUE7SUFDQSxtQkFBQTtJQUNBLGdDQUFBO0U3RW94T1Y7RTZFanhPUTtJQUNFLGVBQUE7SUFDQSxTQUFBO0U3RW14T1Y7RTZFanhPVTtJQUNFLFlBQUE7RTdFbXhPWjtFNkUvd09RO0lBQ0UsZUFBQTtJQUNBLGdCQUFBO0lBQ0EsZ0JBQUE7SUFDQSw2QkFBQTtFN0VpeE9WO0U2RTN3T0U7SUFDRSxpQkFBQTtFN0U2d09KO0U2RTF3T0U7SUFDRSx5QkFBQTtJQUNBLHFEQUFBO1lBQUEsNkNBQUE7RTdFNHdPSjtFNkV6d09FO0lBQ0UsZ0JBQUE7RTdFMndPSjtFNkV4d09FO0lBQ0Usa0JBQUE7SUFDQSxTQUFBO0U3RTB3T0o7QUFDRjtBNkV2d09FO0VBQ0U7SUFDRSxlQUFBO0U3RXl3T0o7QUFDRjtBNkV0d09FO0VBQ0U7SUFDRSxnQkFBQTtFN0V3d09KO0FBQ0Y7QTZFcndPRTs7K0VBQUE7QUFJQTtFQUNFLFdBQUE7QTdFc3dPSjs7QTZFbndPRTtFQUVFLGtCQUFBO0VBQ0EsV0FBQTtBN0Vxd09KO0FHeHJQUTtFMEVnYk47SUFLSSxlQUFBO0lBQ0EsV0FBQTtFN0V1d09KO0FBQ0Y7O0E2RXJ3T0U7Ozs7Ozs7Ozs7Ozs7RUFBQTtBQWNBO0VBQ0UsYzNEeGZrQjtFMkR5ZmxCLGtCQUFBO0E3RXd3T0o7O0E2RXJ3T0U7RUFFRSw0QkFBQTtBN0V1d09KO0E2RXR3T0k7RUFDRSxZQUFBO0VBQ0EseUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCRjNsQkE7RUU0bEJBLGN0RXprQkU7RXNFMGtCRix1QkFBQTtFQUNBLGdCQUFBO0E3RXd3T047QTZFdndPTTtFQUNFLGN0RTlrQkE7RXNFK2tCQSxpQkFBQTtBN0V5d09SO0E2RXh3T1E7RUFDRSxjdEVobEJGO0FQMDFQUjtBNkV2d09NO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBN0V5d09SO0FHM3VQUTtFMEU4ZEY7SUFNSSxrQkFBQTtJQUNBLG1CQUFBO0U3RTJ3T1I7QUFDRjtBR2p2UFE7RTBFeWVJO0lBQ0Usa0JBQUE7RTdFMndPWjtFNkV6d09VO0lBQ0UsaUJBQUE7RTdFMndPWjtBQUNGO0E2RXR3T0k7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHFCQUFBO01BQUEsa0JBQUE7VUFBQSx5QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHlCQUFBO0E3RXd3T047QTZFdndPTTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHlCdEVsbkJBO0FQMjNQUjtBNkV4d09RO0VBQ0UsY3RFbm5CRjtFc0VvbkJFLGdCQUFBO0E3RTB3T1Y7QTZFendPVTtFQUNFLGNGem9CTjtBM0VvNVBOO0E2RXZ3T007RUFDRSxvQkFBQTtFQUNBLGlCQUFBO0E3RXl3T1I7QTZFeHdPUTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0E3RTB3T1Y7QTZFeHdPUTtFQUNFLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLG1DQUFBO1VBQUEsMkJBQUE7QTdFMHdPVjtBNkV2d09RO0VBQ0UsVUFBQTtFQUNBLHlCQUFBO0E3RXl3T1Y7QTZFcHdPSTtFQUNFLFlBQUE7RUFDQSxZQUFBO0E3RXN3T047QTZFbndPSTtFQUNFLHlCQUFBO0VBQ0EsY3RFMXBCUTtFc0UycEJSLCtCRnRxQmU7RUV1cUJmLGlCQUFBO0VBQ0EsaUJBQUE7RUFDQSwyQkFBQTtFQUNBLFNBQUE7RUFDQSxvQkFBQTtBN0Vxd09OO0E2RW53T007RUFWRjtJQVdJLG9CQUFBO0U3RXN3T047QUFDRjtBNkVwd09NO0VBQ0UsWUFBQTtBN0Vzd09SO0E2RWx3T0k7RUFDRSwrQkZ2ckJlO0VFd3JCZixjQUFBO0VBQ0EsbUJBQUE7QTdFb3dPTjtBNkVqd09JO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0E3RW13T047QTZFandPTTtFQUxGO0lBTUksaUJBQUE7RTdFb3dPTjtBQUNGO0E2RWp3T0k7RUFDRSxlQUFBO0VBQ0EsZ0JBQUE7QTdFbXdPTjtBNkVqd09NO0VBSkY7SUFLSSxjQUFBO0U3RW93T047QUFDRjtBNkVqNE9FO0VBZ0lFLDBCQUFBO0E3RW93T0o7QUdoMVBRO0UwRTZrQko7SUFFSSxvQkFBQTtJQUFBLG9CQUFBO0lBQUEsYUFBQTtJQUNBLHlCQUFBO1FBQUEsc0JBQUE7WUFBQSxtQkFBQTtJQUNBLHlCQUFBO1FBQUEsc0JBQUE7WUFBQSw4QkFBQTtFN0Vxd09OO0FBQ0Y7QTZFbndPTTtFQVBGO0lBUUksYUFBQTtFN0Vzd09OO0FBQ0Y7QTZFL3ZPTTtFQUNFLGN0RXJ0Qkk7QVBzOVBaO0E2RS92T1E7RUFIRjtJQUlJLGdCQUFBO0lBQ0EsaUJBQUE7SUFDQSxlQUFBO0U3RWt3T1I7RTZFaHdPUTtJQUNFLGFBQUE7RTdFa3dPVjtBQUNGO0E2RTl2T007RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7QTdFZ3dPUjtBNkU1dk9RO0VBREY7SUFFSSxNQUFBO0U3RSt2T1I7QUFDRjtBR24zUFE7RTBFdW5CRjtJQUVJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0Esc0JBQUE7UUFBQSxtQkFBQTtZQUFBLHFCQUFBO0lBQ0EscUJBQUE7UUFBQSxrQkFBQTtZQUFBLHlCQUFBO0U3RTh2T1I7QUFDRjs7QTZFeHZPRTtFQUNFLGdCQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7RUFDQSxvQ0FBQTtFQUNBLG9CQUFBO0VBQ0EsZ0JBQUE7QTdFMnZPSjs7QTZFeHZPRTtFQUNFLGdCQUFBO0E3RTJ2T0o7O0E2RXp2T0U7RUFDRSxxQkFBQTtBN0U0dk9KO0E2RTN2T0k7RUFDRSxhQUFBO0E3RTZ2T047O0E2RTF2T0U7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsY0FBQTtBN0U2dk9KOztBNkUxdk9JO0VBREY7SUFFSSxxQkFBQTtFN0U4dk9KO0FBQ0Y7O0E2RXZ2T0k7RUFKRjtJQUtJLGNBQUE7RTdFMnZPSjtBQUNGOztBNkV6dk9FOzs7Ozs7Ozs7Ozs7RUFBQTtBQWNBOzsrRUFBQTtBQUdBLFdBQUE7QUFDQTtFQUNFLFlBQUE7QTdFMnZPSjtBNkUxdk9JO0VBRUUsYUFBQTtBN0Uydk9OO0E2RS92T0U7RUFNRSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsY3RFM3pCSTtFc0U0ekJKLHdDQUFBO0VBQUEsZ0NBQUE7QTdFNHZPSjtBNkUzdk9JO0VBQ0UsY0ZoMUJBO0EzRTZrUU47O0E2RXp2T0U7RUFDRSxjQUFBO0VBQ0EsY0FBQTtBN0U0dk9KO0E2RTN2T0k7RUFDRSxrQkFBQTtFQUNBLHlCRmg0QkM7RUVpNEJELGN0RXYwQkU7RXNFdzBCRix5QkFBQTtFQUNBLG1CQUFBO0VBQ0Esd0JBQUE7RUFDQSxhQUFBO0E3RTZ2T047QUduOVBRO0UwRTRzQk47SUFhSSxhQUFBO0U3RTh2T0o7QUFDRjs7QTZFM3ZPRTtFQUNFLHdDQUFBO0VBQUEsZ0NBQUE7RUFFQSx3QkFBQTtVQUFBLGdCQUFBO0E3RTZ2T0o7QTZFNXZPSTtFQUNFLHdCQUFBO1VBQUEsZ0JBQUE7QTdFOHZPTjtBR2grUFE7RTBFbXVCRjtJQUVJLFdBQUE7SUFDQSw2QkFBQTtJQUNBLGlCQUFBO0lBQ0EsV0FBQTtFN0Urdk9SO0FBQ0Y7QTZFOXZPUTtFQUNFLHlCdEVoMkJGO0FQZ21RUjtBNkUvdk9VO0VBQ0UsZUFBQTtFQUNBLFdBQUE7QTdFaXdPWjtBNkVod09ZO0VBQ0UsNkJBQUE7RUFDQSxtQkFBQTtFQUNBLFVBQUE7QTdFa3dPZDtBNkU5dk9nQjtFQUNFLHlEQUFBO0VBQ0EsUUFBQTtBN0Vnd09sQjtBNkU3dk9jO0VBQ0UsU0FBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0Esd0JBQUE7QTdFK3ZPaEI7QTZFOXZPZ0I7RUFDRSxnQ0FBQTtFQUNBLG1CQUFBO0E3RWd3T2xCO0E2RS92T2tCO0VBQ0UseURBQUE7QTdFaXdPcEI7QTZFMXZPUTtFQUNFLFdBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7QTdFNHZPVjtBNkUzdk9VO0VBQ0UsNkJBQUE7RUFDQSxlQUFBO0E3RTZ2T1o7O0E2RXR2T0U7RUFDRSx1QkFBQTtFQUNBLDZCQUFBO0VBQ0EsSUFBQTtBN0V5dk9KO0E2RXZ2T007RUFDRSxVQUFBO0E3RXl2T1I7QTZFeHZPUTtFQUNFLHlCdEV0NUJGO0FQZ3BRUjtBNkV0dk9NO0VBQ0UsY0Y1OEJEO0EzRW9zUVA7QTZFdnZPUTtFQUNFLGNGLzZCSjtBM0V3cVFOO0E2RXR2T007RUFDRSxvQ0FBQTtFQUNBLGFBQUE7RUFDQSxjQUFBO0E3RXd2T1I7QTZFcnZPUTtFQUNFLGFBQUE7RUFDQSxVQUFBO0E3RXV2T1Y7QTZFdHZPVTtFQUNFLFdBQUE7RUFDQSwwQkFBQTtFQUNBLGFBQUE7RUFDQSxrQkFBQTtBN0V3dk9aO0E2RXZ2T1k7RUFDRSxvQ0FBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtBN0V5dk9kO0E2RXh2T2M7RUFDRSxjdEVsN0JSO0VzRW03QlEsb0JBQUE7RUFDQSx1QkFBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0E3RTB2T2hCO0E2RXh2T2M7RUFDRSxnQ0FBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QTdFMHZPaEI7QTZFenZPZ0I7RUFDRSx5REFBQTtBN0Uydk9sQjtBNkV0dk9jO0VBQ0UseURBQUE7QTdFd3ZPaEI7QTZFcHZPVTtFQUNFLGN0RXg4Qko7RXNFeThCSSxvQkFBQTtFQUNBLHVCQUFBO0VBQ0EsU0FBQTtBN0Vzdk9aO0E2RXB2T1U7RUFDRSxjQUFBO0E3RXN2T1o7O0E2RTl1T0Usa0JBQUE7QUFFQTtFQUNFO0lBQ0Usc0JBQUE7RTdFZ3ZPSjtFNkU3dU9FO0lBQ0UsaUJBQUE7RTdFK3VPSjtBQUNGO0E2RTV1T0U7RUFDRTtJQUNFLFVBQUE7RTdFOHVPSjtFNkU1dU9JO0lBQ0UsY0FBQTtFN0U4dU9OO0U2RTN1T0k7SUFDRSxXQUFBO0lBQ047OEJBQUE7SUFFTSxhQUFBO0U3RTZ1T047RTZFM3VPTTtJQUNFLFlBQUE7RTdFNnVPUjtFNkUxdU9NO0lBQ0UsVUFBQTtFN0U0dU9SO0U2RXJ1T007O0lBRUUsaUJBQUE7SUFDQSxXQUFBO0U3RXV1T1I7RTZFcHVPTTtJQUNFLHVCQUFBO0U3RXN1T1I7RTZFbHVPUTtJQUNFLGtCQUFBO0lBQ0EsbUJBQUE7SUFDQSxnQ0FBQTtFN0VvdU9WO0U2RWp1T1E7SUFDRSxlQUFBO0lBQ0EsU0FBQTtFN0VtdU9WO0U2RWp1T1U7SUFDRSxZQUFBO0U3RW11T1o7RTZFL3RPUTtJQUNFLGVBQUE7SUFDQSxnQkFBQTtJQUNBLGdCQUFBO0lBQ0EsNkJBQUE7RTdFaXVPVjtFNkUzdE9FO0lBQ0UsaUJBQUE7RTdFNnRPSjtFNkUxdE9FO0lBQ0UseUJBQUE7SUFDQSxxREFBQTtZQUFBLDZDQUFBO0U3RTR0T0o7RTZFenRPRTtJQUNFLGdCQUFBO0U3RTJ0T0o7RTZFeHRPRTtJQUNFLGtCQUFBO0lBQ0EsU0FBQTtFN0UwdE9KO0FBQ0Y7QTZFdnRPRTtFQUNFO0lBQ0UsZUFBQTtFN0V5dE9KO0U2RXh0T0k7SUFDRSxrQkFBQTtFN0UwdE9OO0FBQ0Y7QTZFdHRPRTtFQUNFO0lBQ0UsZ0JBQUE7RTdFd3RPSjtBQUNGO0E2RXJ0T0E7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQUFBO0FBMFZBO0VBQ0UsT0FBQTtBN0VvdE9GOztBNkVsdE9BO0VBQ0UsZ0JBQUE7QTdFcXRPRjs7QTZFbnRPQTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSwyREFBQTtFQUFBLG1EQUFBO0VBQ0EsK0JBQUE7RUFDQSxVQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtBN0VzdE9GOztBNkVydE9FO0VBQ0UsVUFBQTtFQUNBLG1CQUFBO0E3RXd0T0o7O0E2RXZ0T0U7RUFDRSxlQUFBO0E3RTB0T0o7O0E2RXp0T0U7RUFDRSxrQkFBQTtBN0U0dE9KOztBNkUzdE9FO0VBQ0UsZUFBQTtBN0U4dE9KOztBNkU1dE9BO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtBN0UrdE9GOztBNkU3dE9BO0VBQ0UsZUFBQTtFQUNBLFdBQUE7RUFDQSwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsK0JBQUE7RUFBQSw0REFBQTtFQUNBLG1DQUFBO0VBQ1EsMkJBQUE7RUFDUixtQkFBQTtBN0VndU9GOztBNkUvdE9FO0VBQ0UsVUFBQTtBN0VrdU9KOztBNkVqdU9FO0VBQ0UsV0FBQTtBN0VvdU9KOztBNkVudU9FO0VBQ0Usa0JBQUE7QTdFc3VPSjs7QTZFcnVPRTtFQUNFLFdBQUE7QTdFd3VPSjs7QTZFdnVPSTtFQUNFLGtEQUFBO1VBQUEsMENBQUE7QTdFMHVPTjs7QTZFenVPRTtFQUVNLGtDQUFBO1VBQUEsMEJBQUE7QTdFNHVPUjs7QTZFMXVPQTtFQUNFLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLCtDQUFBO0VBQUEsdUNBQUE7RUFBQSwrQkFBQTtFQUFBLDREQUFBO0VBQ0EsbUNBQUE7RUFDUSwyQkFBQTtFQUNSLG1CQUFBO0E3RTZ1T0Y7O0E2RTV1T0U7RUFDRSxVQUFBO0E3RSt1T0o7O0E2RTl1T0U7RUFDRSxXQUFBO0E3RWl2T0o7O0E2RWh2T0U7RUFDRSxrQkFBQTtBN0Vtdk9KOztBNkVsdk9FO0VBQ0UsV0FBQTtBN0Vxdk9KOztBNkVwdk9JO0VBQ0Usa0RBQUE7VUFBQSwwQ0FBQTtBN0V1dk9OOztBNkV0dk9FO0VBRU0sa0NBQUE7VUFBQSwwQkFBQTtBN0V5dk9SOztBNkV2dk9BO0VBQ0UsTUFBQTtFQUNBLE9BQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBRUkscUNBQUE7VUFBQSw2QkFBQTtBN0Uwdk9OOztBNkV6dk9FO0VBRU0sMENBQUE7VUFBQSxrQ0FBQTtBN0U0dk9SOztBNkUzdk9JO0VBRU0sa0NBQUE7VUFBQSwwQkFBQTtBN0U4dk9WOztBNkU3dk9FO0VBRU0sb0NBQUE7VUFBQSw0QkFBQTtBN0Vnd09SOztBNkUvdk9FO0VBQ0UsbUVBQUE7VUFBQSwyREFBQTtBN0Vrd09KOztBR3JvUlE7RTBFcTRDSjtJQUNBLFlBQUE7SUFFSSxxQ0FBQTtZQUFBLDZCQUFBO0U3RW93T047RTZFbndPRTtJQUVNLHFDQUFBO1lBQUEsNkJBQUE7RTdFcXdPUjtFNkVwd09JO0lBRU0sa0NBQUE7WUFBQSwwQkFBQTtFN0Vzd09WO0U2RXJ3T0U7SUFFTSxvQ0FBQTtZQUFBLDRCQUFBO0U3RXV3T1I7RTZFdHdPRTtJQUNFLG1FQUFBO1lBQUEsMkRBQUE7RTdFd3dPSjtBQUNGO0E2RXJ3T0E7RUFDRSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFlBQUE7RUFDQSxnQkFBQTtFQUNBLFlBQUE7RUFFSSxvQ0FBQTtVQUFBLDRCQUFBO0E3RXV3T047O0E2RXR3T0U7RUFFTSxvQ0FBQTtVQUFBLDRCQUFBO0E3RXl3T1I7O0E2RXh3T0k7RUFFTSxrQ0FBQTtVQUFBLDBCQUFBO0E3RTJ3T1Y7O0E2RTF3T0U7RUFFTSxxQ0FBQTtVQUFBLDZCQUFBO0E3RTZ3T1I7O0E2RTV3T0U7RUFDRSxrRUFBQTtVQUFBLDBEQUFBO0E3RSt3T0o7O0E2RTd3T0E7RUFDRSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFFSSxxQ0FBQTtVQUFBLDZCQUFBO0E3RWd4T047O0E2RS93T0U7RUFFTSxxQ0FBQTtVQUFBLDZCQUFBO0E3RWt4T1I7O0E2RWp4T0k7RUFFTSxrQ0FBQTtVQUFBLDBCQUFBO0E3RW94T1Y7O0E2RW54T0U7RUFFTSxvQ0FBQTtVQUFBLDRCQUFBO0E3RXN4T1I7O0E2RXJ4T0U7RUFDRSxtRUFBQTtVQUFBLDJEQUFBO0E3RXd4T0o7O0E2RXR4T0E7RUFDRSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFFSSxvQ0FBQTtVQUFBLDRCQUFBO0E3RXl4T047O0E2RXh4T0U7RUFFTSxvQ0FBQTtVQUFBLDRCQUFBO0E3RTJ4T1I7O0E2RTF4T0k7RUFFTSxrQ0FBQTtVQUFBLDBCQUFBO0E3RTZ4T1Y7O0E2RTV4T0U7RUFFTSxxQ0FBQTtVQUFBLDZCQUFBO0E3RSt4T1I7O0E2RTl4T0U7RUFDRSxrRUFBQTtVQUFBLDBEQUFBO0E3RWl5T0o7O0E2RS94T0E7RUFFTSx1QkFBQTtVQUFBLGVBQUE7RUFDSiwrQ0FBQTtFQUFBLHVDQUFBO0VBQUEsK0JBQUE7RUFBQSw0REFBQTtFQUNBLG1DQUFBO0VBQ1EsMkJBQUE7QTdFa3lPVjs7QTZFanlPRTtFQUVNLGtDQUFBO1VBQUEsMEJBQUE7QTdFb3lPUjs7QTZFbnlPRTtFQUVNLGtDQUFBO1VBQUEsMEJBQUE7QTdFc3lPUjs7QTZFcHlPQTtFQUNFO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0lBQ0osV0FBQTtJQUNBLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFN0V1eU9GO0U2RXR5T0U7SUFDRSxhQUFBO0U3RXd5T0o7RTZFdnlPRTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtFN0V5eU9SO0U2RXh5T0U7SUFDRSxrQkFBQTtFN0UweU9KO0U2RXp5T0U7SUFDRSxrQkFBQTtFN0UyeU9KO0U2RTF5T0E7SUFFTSx1QkFBQTtZQUFBLGVBQUE7SUFDSixXQUFBO0lBQ0Esd0JBQUE7SUFBQSxnQkFBQTtJQUNBLG1CQUFBO0U3RTR5T0Y7RTZFM3lPRTtJQUNFLGFBQUE7RTdFNnlPSjtFNkU1eU9FO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0U3RTh5T1I7RTZFN3lPRTtJQUNFLG1CQUFBO0U3RSt5T0o7RTZFOXlPRTtJQUNFLG1CQUFBO0U3RWd6T0o7RTZFL3lPQTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtJQUNKLFdBQUE7SUFDQSx3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsbUJBQUE7RTdFaXpPRjtFNkVoek9FO0lBQ0UsYUFBQTtFN0Vrek9KO0U2RWp6T0U7SUFFTSx1QkFBQTtZQUFBLGVBQUE7RTdFbXpPUjtFNkVsek9FO0lBQ0UsaUJBQUE7RTdFb3pPSjtFNkVuek9FO0lBQ0UsaUJBQUE7RTdFcXpPSjtFNkVwek9BO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0lBQ0osV0FBQTtJQUNBLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFN0Vzek9GO0U2RXJ6T0U7SUFDRSxhQUFBO0U3RXV6T0o7RTZFdHpPRTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtFN0V3ek9SO0U2RXZ6T0U7SUFDRSxvQkFBQTtFN0V5ek9KO0U2RXh6T0U7SUFDRSxvQkFBQTtFN0Uwek9KO0FBQ0Y7QTZFenpPQTtFQUNFO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0lBQ0osV0FBQTtJQUNBLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFN0Uyek9GO0U2RTF6T0U7SUFDRSxhQUFBO0U3RTR6T0o7RTZFM3pPRTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtFN0U2ek9SO0U2RTV6T0U7SUFDRSxrQkFBQTtFN0U4ek9KO0U2RTd6T0U7SUFDRSxrQkFBQTtFN0Urek9KO0U2RTl6T0E7SUFFTSx1QkFBQTtZQUFBLGVBQUE7SUFDSixXQUFBO0lBQ0Esd0JBQUE7SUFBQSxnQkFBQTtJQUNBLG1CQUFBO0U3RWcwT0Y7RTZFL3pPRTtJQUNFLGFBQUE7RTdFaTBPSjtFNkVoME9FO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0U3RWswT1I7RTZFajBPRTtJQUNFLG1CQUFBO0U3RW0wT0o7RTZFbDBPRTtJQUNFLG1CQUFBO0U3RW8wT0o7RTZFbjBPQTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtJQUNKLFdBQUE7SUFDQSx3QkFBQTtJQUFBLGdCQUFBO0lBQ0EsbUJBQUE7RTdFcTBPRjtFNkVwME9FO0lBQ0UsYUFBQTtFN0VzME9KO0U2RXIwT0U7SUFFTSx1QkFBQTtZQUFBLGVBQUE7RTdFdTBPUjtFNkV0ME9FO0lBQ0UsaUJBQUE7RTdFdzBPSjtFNkV2ME9FO0lBQ0UsaUJBQUE7RTdFeTBPSjtFNkV4ME9BO0lBRU0sdUJBQUE7WUFBQSxlQUFBO0lBQ0osV0FBQTtJQUNBLHdCQUFBO0lBQUEsZ0JBQUE7SUFDQSxtQkFBQTtFN0UwME9GO0U2RXowT0U7SUFDRSxhQUFBO0U3RTIwT0o7RTZFMTBPRTtJQUVNLHVCQUFBO1lBQUEsZUFBQTtFN0U0ME9SO0U2RTMwT0U7SUFDRSxvQkFBQTtFN0U2ME9KO0U2RTUwT0U7SUFDRSxvQkFBQTtFN0U4ME9KO0FBQ0Y7QTZFNzBPQTtFQUNFO0lBQ0UsbUJBQUE7SUFDQSxZQUFBO0lBQ0EsZ0JBQUE7SUFDQSxtQkFBQTtJQUNBLGNBQUE7SUFDQSxpQkFBQTtJQUNBLDJCQUFBO0lBQUEsbUJBQUE7RTdFKzBPRjtFNkU5ME9FO0lBQ0Usd0JBQUE7WUFBQSxnQkFBQTtJQUVJLHVCQUFBO1lBQUEsZUFBQTtFN0VnMU9SO0U2RS8wT0U7SUFDRSxhQUFBO0U3RWkxT0o7QUFDRjtBNkVoMU9BO0VBQ0U7SUFDRSxtQkFBQTtJQUNBLFlBQUE7SUFDQSxnQkFBQTtJQUNBLG1CQUFBO0lBQ0EsY0FBQTtJQUNBLGlCQUFBO0lBQ0EsMkJBQUE7SUFBQSxtQkFBQTtFN0VrMU9GO0U2RWoxT0U7SUFDRSx3QkFBQTtZQUFBLGdCQUFBO0lBRUksdUJBQUE7WUFBQSxlQUFBO0U3RW0xT1I7RTZFbDFPRTtJQUNFLGFBQUE7RTdFbzFPSjtBQUNGO0E2RS8wT0U7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0E3RWkxT0o7QTZFLzBPRTtFQUNFLHdEQUFBO0VBQ0EsWUFBQTtBN0VpMU9KO0FHdjlSUTtFMEVvb0ROO0lBSUksWUFBQTtFN0VtMU9KO0FBQ0Y7QTZFeDFPRTtFQU9FLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QnRFbHdESTtFc0Vtd0RKLHdCQUFBO1VBQUEsZ0JBQUE7QTdFbzFPSjtBNkVsMU9FO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtBN0VvMU9KO0E2RWwxT0U7RUFDRSx5QnRFNXdESTtFc0U2d0RKLGN0RTV3REk7RXNFNndESixvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxNQUFBO0VBQ0EscUJBQUE7RUFDQSxtQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7QTdFbzFPSjtBNkVuMU9JO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0E3RXExT047QTZFdjJPRTtFQW9CRTs7OztHQUFBO0E3RTAxT0o7QTZFcjFPSTtFQUNFLGNGdnpEQTtBM0U4b1NOO0E2RXAxT0U7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QTdFczFPSjtBNkVyMU9JO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0EseUJGeDFERTtFRXkxREYsbUJBQUE7QTdFdTFPTjtBNkV0MU9NO0VBQ0UsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLHlCdEV2ekRBO0VzRXd6REEsWUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7QTdFdzFPUjtBNkVwMU9RO0VBQ0UseUJGdDNESDtBM0U0c1NQO0E2RW4xT007RUFDRSxnQkFBQTtFQUNBLGNBQUE7QTdFcTFPUjtBNkVsMU9JO0VBQ0UseUJ0RXowREU7QVA2cFNSO0E2RW4xT007RUFDRSxZQUFBO0VBQ0EsYUFBQTtBN0VxMU9SO0E2RW4xT007RUFDRSxpQ0FBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLHNCQUFBO0VBQ0EsYUFBQTtFQUNBLGlCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtBN0VxMU9SO0E2RWoxT0U7RUFDRSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSxhQUFBO0E3RW0xT0o7QTZFbDFPSTtFQUNFLGtCQUFBO0E3RW8xT047QTZFbjFPTTtFQUNJLFlBQUE7RUFDQSxjQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLFNBQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtBN0VxMU9WO0E2RW4xT007RUFDSSxZQUFBO0VBQ0EsdUJBQUE7VUFBQSxlQUFBO0E3RXExT1Y7QTZFbjFPTTtFQUNFLGlDRmg0RFU7RUVpNERWLGN0RWwzREE7RXNFbTNEQSx5QkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0E3RXExT1I7QTZFcDFPUTtFQUNFLGNGbDdESDtBM0V3d1NQO0E2RXAxT1E7RUFDRSxhQUFBO0E3RXMxT1Y7QTZFaDFPUTtFQUNFLE9BQUE7QTdFazFPVjtBNkU3ME9FO0VBQ0UsdUJBQUE7QTdFKzBPSjtBNkU3ME9NO0VBQ0UsY0ZyOEREO0EzRW94U1A7O0E2RXQwT0k7RUFDRSxnQkFBQTtBN0V5ME9OOztBNkVsME9BO0VBQ0UsK0JBQUE7RUFBQSwrQkFBQTtFQUFBLHdCQUFBO0VBQ0EscUJBQUE7TUFBQSxrQkFBQTtVQUFBLHlCQUFBO0E3RXEwT0Y7O0E2RW4wT0E7Ozs7RUFBQTtBQVVNO0VBQ0UscUJBQUE7QTdFaTBPUjs7QTZFenpPQTtFQUNFLGFBQUE7QTdFNHpPRjs7QTZFenpPQTtFQUNFO0lBQ0UsY0FBQTtFN0U0ek9GO0U2RXp6T0E7SUFDRSxhQUFBO0U3RTJ6T0Y7QUFDRjtBNkV4ek9BO0VBQ0UscUNBQUE7RUFBQSw2QkFBQTtBN0Uwek9GOztBNkV4ek9BO0VBQ0UsYUFBQTtBN0Uyek9GOztBNkV4ek9BO0VBQ0Usb0NBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGFBQUE7QTdFMnpPRjtBNkUxek9FO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsZUFBQTtFQUNBLGN0RXo5REk7RXNFMDlESiwwQ0FBQTtFQUVBLGtDQUFBO0E3RTR6T0o7QTZFenpPRTtFQUEwQjtJQUFPLGlDQUFBO0U3RWswT2pDO0FBQ0Y7QTZFbDBPRTtFQUFrQjtJQUFPLGlDQUFBO0lBQW1DLHlCQUFBO0U3RXUwTzVEO0FBQ0Y7O0E2RW4wT0E7RUFDRSx5QkY1Z0VNO0VFNmdFTixXQUFBO0VBQ0EsYUFBQTtFQUNBLGdDQUFBO0E3RXMwT0Y7QUcxclNRO0UwRWczRFI7SUFNSSxnQkFBQTtFN0V3ME9GO0FBQ0Y7QTZFdjBPRTtFQUNFLGVBQUE7RUFDQSxjdEVoL0RJO0FQeXpTUjtBNkV2ME9FO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSxhQUFBO0E3RXkwT0o7QUd4c1NRO0UwRTQzRE47SUFLSSx1QkFBQTtJQUNBLHdCQUFBO0U3RTIwT0o7QUFDRjtBNkV6ME9FO0VBQ0UsZUFBQTtBN0UyME9KO0E2RXowT0U7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtBN0UyME9KO0E2RTEwT0k7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLFlBQUE7QTdFNDBPTjtBRzN0U1E7RTBFMDRESjtJQU9JLFlBQUE7RTdFODBPTjtBQUNGO0E2RTcwT007RUFDRSx1QkFBQTtFQUNBLGtCQUFBO0E3RSswT1I7QTZFajFPTTtFQUNFLHVCQUFBO0VBQ0Esa0JBQUE7QTdFKzBPUjtBNkVqMU9NO0VBQ0UsdUJBQUE7RUFDQSxrQkFBQTtBN0UrME9SO0E2RWoxT007RUFDRSx1QkFBQTtFQUNBLGtCQUFBO0E3RSswT1I7QTZFajFPTTtFQUNFLHVCQUFBO0VBQ0Esa0JBQUE7QTdFKzBPUjtBNkU1ME9JO0VBQ0UscUJBQUE7QTdFODBPTjtBR3Z1U1E7RTBFdzVESjtJQUdJLGVBQUE7RTdFZzFPTjtBQUNGOztBNkV2ME9BO0VBQ0UseUJ0RTNoRU07QVBxMlNSO0E2RXowT0U7RUFDRSxpQkFBQTtBN0UyME9KO0E2RXowT0k7RUFDRSxnQkFBQTtBN0UyME9OO0E2RXowT0k7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHFCQUFBO0E3RTIwT047QUczdlNRO0UwRTY2REo7SUFLSSxtQkFBQTtFN0U2ME9OO0FBQ0Y7QTZFMzBPSTtFQUNFLHlCdEUzaUVFO0VzRTRpRUYseUJBQUE7RUFDQSxjRm5tRUM7RUVvbUVELG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxXQUFBO0VBQ0EscUJBQUE7RUFDQSxrQkFBQTtBN0U2ME9OO0FHOXdTUTtFMEVxN0RKO0lBY0ksWUFBQTtJQUNBLFlBQUE7SUFDQSxhQUFBO0lBQ0EsZUFBQTtFN0UrME9OO0FBQ0Y7QTZFOTBPTTtFQUNFLGVBQUE7RUFDQSxrQkFBQTtBN0VnMU9SO0E2RTkwT007RUFDRSx5QkZ4bkVEO0VFeW5FQyxjdEVua0VBO0FQbTVTUjtBNkU3ME9JO0VBQ0UsV0FBQTtFQUNBLHlCRnZuRUM7RUV3bkVELFdBQUE7QTdFKzBPTjtBNkUzME9NO0VBQ0UscUJBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0E3RTYwT1I7QUd4eVNRO0UwRXc5REY7SUFLSSxTQUFBO0lBQ0Esa0JBQUE7SUFDQSxzQkFBQTtFN0UrME9SO0FBQ0Y7QTZFNzBPTTtFQUNFLHlCRnBuRUM7RUVxbkVELFdBQUE7RUFDQSxZQUFBO0VBQ0EsU0FBQTtFQUNBLFNBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0E3RSswT1I7QTZFOTBPUTtFQUNFLHlCdEVqbUVGO0VzRWttRUUsY3RFam1FRjtBUGk3U1I7QTZFOTBPUTtFQUNFLDZCQUFBO0E3RWcxT1Y7QTZFLzBPVTtFQUNFLGNGNXBFTDtBM0U2K1NQO0E2RTkwT1E7RUFDRSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBN0VnMU9WOztBNkV0ME9BO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0EseUJGbnFFTTtFRW9xRU4sa0JBQUE7RUFDQSxtQkFBQTtBN0V5ME9GO0E2RXgwT0U7RUFDRSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJ0RW5vRUk7RXNFb29FSixZQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtBN0UwME9KO0E2RXgwT0U7RUFDRSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QTdFMDBPSjs7QThFdGhUQTtFQUNFLGtCQUFBO0E5RXloVEY7QThFdmhURTtFQUNFLG9CQUFBO0VBQ0Esa0JBQUE7QTlFeWhUSjtBOEV2aFRNO0VBQ0UsMkJBQUE7RUFBQSwyQkFBQTtFQUFBLG9CQUFBO0E5RXloVFI7QThFdmhUTTtFQUNFLG9CQUFBO0VBQ0EsZ0JBQUE7QTlFeWhUUjtBOEV2aFRNO0VBQ0UseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0E5RXloVFI7QThFeGhUUTtFQUNFLGNIYkg7RUdjRyxrQkFBQTtFQUNBLGFBQUE7QTlFMGhUVjtBOEV6aFRVO0VBQ0UsY0hzQk47QTNFcWdUTjtBOEV4aFRRO0VBQ0Usb0JBQUE7QTlFMGhUVjtBOEVuaFRFO0VBQ0UseUJITEk7RUdNSixlQUFBO0E5RXFoVEo7QUdwNFNRO0UyRW5KTjtJQUlJLGVBQUE7RTlFdWhUSjtBQUNGO0E4RXRoVEk7RUFDRSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUNITVk7RUdMWixnQkFBQTtBOUV3aFROO0FHLzRTUTtFMkU3SUo7SUFNSSxpQkFBQTtFOUUwaFROO0FBQ0Y7QThFeGhUSTtFQUNFLGNBQUE7QTlFMGhUTjtBOEV6aFRNO0VBQ0UsY0g5Q0Q7RUcrQ0MsNkJBQUE7QTlFMmhUUjtBOEUxaFRRO0VBQ0UsY0hWSjtBM0VzaVROO0E4RXhoVEk7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0E5RTBoVE47QUdsNlNRO0UyRTFISjtJQUlJLG1CQUFBO0U5RTRoVE47QUFDRjtBOEUxaFRJO0VBQ0UsbUJBQUE7QTlFNGhUTjtBOEV4aFRFO0VBRUUseUJ2RVZJO0V1RVdKLFlBQUE7RUFDQSxzQkFBQTtFQUNBLDRCQUFBO0VBQ0EsMkJBQUE7QTlFeWhUSjtBR2o3U1E7RTJFOUdOO0lBUUksWUFBQTtFOUUyaFRKO0FBQ0Y7O0ErRXptVEE7Ozs7O0VBQUE7QUFNQTtFQUNFLGN4RXNETTtFd0VyRE4sZ0JBQUE7RUFDQSxrQkFBQTtBL0U0bVRGO0ErRTNtVEU7RUFDRSxZQUFBO0VBQ0Esa0JBQUE7QS9FNm1USjtBK0UzbVRFO0VBQ0Usa0JBQUE7QS9FNm1USjtBK0UxbVRJO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0EvRTRtVE47QUc3OFNRO0U0RWpLSjtJQUlJLGFBQUE7RS9FOG1UTjtBQUNGO0ErRTVtVEk7RUFDRSxzQkFBQTtFQUNBLDJCQUFBO0EvRThtVE47QUd0OVNRO0U0RTFKSjtJQUlJLGFBQUE7RS9FZ25UTjtBQUNGO0ErRTdtVEU7RUFDRSwwQ0FBQTtFQUVFLFVBQUE7RUFDQSxrQkFBQTtFQUNBLFdBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSxPQUFBO0EvRThtVE47QStFNW1USTtFQUNFLFlBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtBL0U4bVROO0FHOStTUTtFNEV2SUo7SUFTSSxVQUFBO0UvRWduVE47QUFDRjtBR24vU1E7RTRFNUhGO0lBRUksaUJBQUE7RS9FaW5UUjtBQUNGO0ErRTVtVEk7RUFDRSxZQUFBO0VBQ0EsV0FBQTtFQUNBLHlCSnZCQTtFSXdCQSxjQUFBO0VBQ0EsbUJBQUE7QS9FOG1UTjtBK0UzbVRFO0VBQ0UseUJBQUE7QS9FNm1USjtBK0U1bVRJO0VBQ0UsWUFBQTtFQUNILGtCQUFBO0VBQ0EsWUFBQTtFQUVBLDJDQUFBO0VBQ0EsbUNBQUE7RUFBQSwyQkFBQTtFQUFBLG9EQUFBLEVBQUEscUNBQUE7RUFFQSxvQ0FBQTtFQUNBLDRCQUFBLEVBQUEsU0FBQTtBL0U0bVRIO0ErRTNtVE07RUFDRSxpQ0FBQTtFQUNILHlCQUFBLEVBQUEsc0JBQUE7QS9FNm1UTDtBK0UzbVRNO0VBQ0UsWUFBQTtBL0U2bVRSO0ErRTNtVE07RUFDRSxtQ0FBQTtFQUNILDJCQUFBO0EvRTZtVEw7QStFM21UTTtFQUNFLG9EQUFBO0VBQ0gsNENBQUE7QS9FNm1UTDtBK0UzbVRNO0VBQ0UsY0FBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0EvRTZtVFI7O0ErRXJtVEk7RUFDRSxhQUFBO0VBQ0Esc0JBQUE7RUFDQSwyQkFBQTtBL0V3bVROO0ErRXZtVE07RUFDRSxrQkFBQTtBL0V5bVRSOztBZ0YzdFRFO0VBQ0UsY3pFNERJO0FQa3FUUjtBZ0Y1dFRFO0VBQ0UseUJBQUE7QWhGOHRUSjtBZ0Y1dFRFO0VBQ0UsVUFBQTtFQUNBLGtCQUFBO0FoRjh0VEo7QWdGNXRUTTtFQUNFLHVCQUFBO0FoRjh0VFI7QUd2alRRO0U2RW5LRjtJQUVJLDJFQUFBO0VoRjR0VFI7QUFDRjtBZ0YxdFRNO0VBQ0UsZ0JBQUE7QWhGNHRUUjtBRy9qVFE7RTZFOUpGO0lBR0ksZUFBQTtFaEY4dFRSO0FBQ0Y7QWdGM3RUUTtFQUNFLGVBQUE7QWhGNnRUVjtBZ0Z2dFRJO0VBQ0UsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLDJCQUFBO0FoRnl0VE47QUc5a1RRO0U2RWhKSjtJQU9JLDRCQUFBO0VoRjJ0VE47QUFDRjtBZ0ZwdVRFO0VBWUUsb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSw4QkFBQTtFQUVBLGFBQUE7QWhGMHRUSjtBZ0Z6dFRJO0VBQ0UsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLGVBQUE7QWhGMnRUTjtBRy9sVFE7RTZFL0hKO0lBS0ksaUJBQUE7RWhGNnRUTjtBQUNGO0FnRjN0VEk7RUFDRSxtQkFBQTtBaEY2dFROO0FnRjN0VEk7RUFDRSxpQ0FBQTtFQUNBLG1CQUFBO0VBQ0Esb0JBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsU0FBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7QWhGNnRUTjtBZ0YxdFRFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxvQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLGtCQUFBO0VBQ0EsV0FBQTtFQUNBLGN6RXRCSTtFeUV1QkosVUFBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0Esa0JBQUE7QWhGNHRUSjtBZ0YzdFRJO0VBQ0UsWUFBQTtFQUNBLFdBQUE7RUFFQSwwQ0FBQTtVQUFBLGtDQUFBO0FoRjR0VE47QWdGMXRUSTtFQUNFO0lBQ0UsVUFBQTtJQUNBLG9DQUFBO1lBQUEsNEJBQUE7RWhGNHRUTjtFZ0YxdFRJO0lBQ0UsbUNBQUE7WUFBQSwyQkFBQTtJQUNBLFVBQUE7RWhGNHRUTjtFZ0YxdFRJO0lBQ0UsVUFBQTtFaEY0dFROO0VnRjF0VEk7SUFDRSxVQUFBO0VoRjR0VE47RWdGMXRUSTtJQUNFLFVBQUE7SUFDQSxvQ0FBQTtZQUFBLDRCQUFBO0VoRjR0VE47QUFDRjtBZ0Y5dVRJO0VBQ0U7SUFDRSxVQUFBO0lBQ0Esb0NBQUE7WUFBQSw0QkFBQTtFaEY0dFROO0VnRjF0VEk7SUFDRSxtQ0FBQTtZQUFBLDJCQUFBO0lBQ0EsVUFBQTtFaEY0dFROO0VnRjF0VEk7SUFDRSxVQUFBO0VoRjR0VE47RWdGMXRUSTtJQUNFLFVBQUE7RWhGNHRUTjtFZ0YxdFRJO0lBQ0UsVUFBQTtJQUNBLG9DQUFBO1lBQUEsNEJBQUE7RWhGNHRUTjtBQUNGO0FnRnp0VEU7RUFDRSxlQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7RUFDQSxNQUFBO0VBQ0EsU0FBQTtFQUNBLGFBQUE7RUFDQSxTQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtBaEYydFRKO0FHdnFUUTtFNkUvRE47SUFhSSxXQUFBO0VoRjZ0VEo7QUFDRjtBRzVxVFE7RTZFL0ROO0lBZ0JJLFdBQUE7RWhGK3RUSjtBQUNGO0FnRjl0VEk7RUFDRSw4QkFBQTtFQUNBLFlBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0FoRmd1VE47QWdGL3RUTTtFQUNFLFlBQUE7QWhGaXVUUjs7QWdGM3RURTtFQUNJLDBCQUFBLEVBQUEscUNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGtCQUFBO0VBRUEsOENBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0FoRjZ0VE47QUdyc1RRO0U2RWxDTjtJQVlNLGFBQUE7RWhGK3RUTjtBQUNGO0FnRjd1VEE7RUFnQk0sK0hBQUE7QWhGZ3VUTjtBZ0Y1dFRFO0VBQ0ksVUFBQTtFQUNBLFNBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7RUFDQSx1Q0FBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLDZCQUFBO0VBQ0EsT0FBQTtFQUNBLGVBQUE7RUFDQSxnQkFBQTtBaEY4dFROO0FHMXRUUTtFNkVmTjtJQWNNLGFBQUE7RWhGK3RUTjtBQUNGO0FnRmx3VEE7RUFxQ00seUJBQUE7QWhGZ3VUTjtBZ0YvdFRFO0VBdENGLHlCQXNDbUMsaURBQUEsRUFBQTtFQUMvQjtJQUNFLFVBQUE7SUFDQSx1Q0FBQTtJQUNBLE1BQUE7SUFDQSw4QkFBQTtFaEZrdVRKO0FBQ0Y7QWdGaHVURTtFQUNFLDBCQUFBLEVBQUEscUNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtFQUNBLFdBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtFQUVBLDhDQUFBO0VBQ0EsMkJBQUE7RUFDQSxzQkFBQTtBaEZpdVRKO0FnRmh1VEk7RUFDRSxVQUFBO0VBQ0EsU0FBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLHVDQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsNkJBQUE7RUFDQSxPQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0FoRmt1VE47QUdwd1RRO0U2RXVCSjtJQWNJLGFBQUE7RWhGbXVUTjtBQUNGO0FnRmp1VEk7RUE3QkYsdUVBNkJtQyxpREFBQSxFQUFBO0VBQy9CO0lBQ0UsVUFBQTtJQUNBLHVDQUFBO0lBQ0EsTUFBQTtJQUNBLDhCQUFBO0VoRm91VE47QUFDRjs7QWdGOXRUQTtFQUNFLGdCQUFBO0FoRml1VEY7QWdGL3RURTtFQUNFLGtCQUFBO0FoRml1VEo7O0FnRjd0VEE7RUFDRSxXQUFBO0FoRmd1VEY7O0FnRjd0VEE7RUFDRSxrQkFBQTtBaEZndVRGO0FnRi90VEU7RUFDRSxjQUFBO0FoRml1VEo7QWdGL3RURTtFQUNFLFdBQUE7QWhGaXVUSjtBZ0Y3dFRFO0VBQ0UsMkJBQUE7RUFDQSxzQkFBQTtFQUVBLHNCQUFBO0VBQ0E7Ozs7O0lBQUE7QWhGbXVUSjtBZ0ZsdlRBO0VBc0JFOztJQUFBO0FoRml1VEY7QWdGOXRURTtFQUNFLFNBQUE7QWhGZ3VUSjtBZ0Y5dFRFO0VBQ0Qsa0JBQUE7RUFDQSxxQkFBQSxFQUFBLFNBQUE7RUFDRyxzQkFBQTtFQUNBLHNCQUFBO0VBQ0EsYUFBQTtBaEZndVRKO0FnRi90VEk7RUFDSSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7QWhGaXVUUjtBZ0Y5dFRFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx1QkFBQTtNQUFBLG9CQUFBO1VBQUEsMkJBQUE7RUFDQSxzQkFBQTtNQUFBLG1CQUFBO1VBQUEscUJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxvQ0FBQTtBaEZndVRKO0FHbjFUUTtFNkUwR047SUFXSSxrQkFBQTtJQUNBLG9CQUFBO0VoRmt1VEo7QUFDRjtBR3oxVFE7RTZFMEdOO0lBZUksa0JBQUE7SUFDQSxvQkFBQTtJQUNBLDZCQUFBO0VoRm91VEo7QUFDRjtBZ0ZudVRJO0VBQ0UsY3pFblBFO0V5RW9QRixhQUFBO0FoRnF1VE47QUdwMlRRO0U2RTZISjtJQUlJLFVBQUE7RWhGdXVUTjtBQUNGO0FnRnR1VE07RUFDRSxjekV6UEE7RXlFMFBBLGdCQUFBO0FoRnd1VFI7QUc3MlRRO0U2RW1JRjtJQUlJLGVBQUE7RWhGMHVUUjtBQUNGO0FnRnh1VE07RUFDRSxpQkFBQTtFQUNBLHlCQUFBO0FoRjB1VFI7QUd0M1RRO0U2RTBJRjtJQUlJLGtCQUFBO0VoRjR1VFI7QUFDRjtBZ0YxdVRNO0VBQ0UsbUJBQUE7QWhGNHVUUjtBRzkzVFE7RTZFaUpGO0lBR0ksbUJBQUE7RWhGOHVUUjtBQUNGO0FnRjV1VE07RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0FoRjh1VFI7QUd2NFRRO0U2RXVKRjtJQUlJLGdCQUFBO0VoRmd2VFI7QUFDRjtBRzU0VFE7RTZFdUpGO0lBT0ksOEJBQUE7SUFBQSw2QkFBQTtRQUFBLHVCQUFBO1lBQUEsbUJBQUE7RWhGa3ZUUjtBQUNGO0FnRmp2VFE7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0VBQ0EsV0FBQTtBaEZtdlRWO0FHdDVUUTtFNkVnS0E7SUFLSSxrQkFBQTtFaEZxdlRWO0FBQ0Y7QWdGcHZUVTtFQUNFLHlCekU3Uko7RXlFOFJJLGNMeFZMO0VLeVZLLFdBQUE7QWhGc3ZUWjtBR2g2VFE7RTZFdUtFO0lBS0ksWUFBQTtFaEZ3dlRaO0FBQ0Y7QWdGdnZUWTtFQUNFLHlCTDlWUDtFSytWTyxjekVyU047QVA4aFVSO0FnRnR2VFU7RUFDRSxnQ0FBQTtFQUNBLFdBQUE7QWhGd3ZUWjtBRzc2VFE7RTZFbUxFO0lBSUksV0FBQTtFaEYwdlRaO0FBQ0Y7QWdGenZUWTtFQUNFLHlCekUvU047RXlFZ1RNLGNMMVdQO0VLMldPLGdDQUFBO0FoRjJ2VGQ7QWdGcHZURTtFQUNFLGFBQUE7QWhGc3ZUSjtBZ0ZydlRJO0VBQ0UsMkJBQUE7VUFBQSxtQkFBQTtBaEZ1dlROO0FHNzdUUTtFNkVxTUo7SUFHSSxhQUFBO0VoRnl2VE47QUFDRjtBR2w4VFE7RTZFcU1KO0lBTUksMkJBQUE7WUFBQSxtQkFBQTtFaEYydlROO0FBQ0Y7QUd2OFRRO0U2RXFNSjtJQVNJLDJCQUFBO1lBQUEsbUJBQUE7RWhGNnZUTjtBQUNGO0FnRjV2VE07RUFYRjtJQVlJLDhCQUFBO1lBQUEsc0JBQUE7RWhGK3ZUTjtBQUNGO0FnRjV2VEU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0EsMEhBQUE7RUFBQSxvRUFBQTtBaEY4dlRKO0FnRjd2VEk7RUFDRSxhQUFBO0VBQ0Esa0JBQUE7RUFDQSxjekV4VkU7RXlFeVZGLHlCQUFBO0VBQ0EsZ0JBQUE7QWhGK3ZUTjtBR3ArVFE7RTZFZ09KO0lBT0ksZUFBQTtFaEZpd1ROO0FBQ0Y7QUd6K1RRO0U2RWdPSjtJQVVJLGlCQUFBO0lBQ0EsZ0JBQUE7RWhGbXdUTjtBQUNGO0FnRmp3VEk7RUFDRSxrQkFBQTtFQUNBLGNMeFhBO0VLeVhBLHlCQUFBO0VBQ0EsZ0JBQUE7QWhGbXdUTjtBR3IvVFE7RTZFOE9KO0lBU0ksZUFBQTtFaEZrd1ROO0FBQ0Y7O0FnRjd2VEE7Ozs7OztFQUFBO0FBT0E7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxvQ0FBQTtFQUNBLFVBQUE7QWhGZ3dURjs7QWdGOXZUQTs7RUFFRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxPQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtBaEZpd1RGOztBZ0Y5dlRBO0VBQ0Usd0JBQUE7RUFDQSx3QkFBQTtFQUNBLDRCQUFBO0FoRml3VEY7QUczaFVRO0U2RXVSUjtJQUtJLHNCQUFBO0VoRm13VEY7QUFDRjs7QWdGL3ZURTtFQUVFLHlCQUFBO0VBQ0EsY3pFelpJO0V5RTBaSixvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFlBQUE7RUFDQSxZQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBaEZpd1RKO0FnRjl2VE07RUFDRSxjTHZiRjtFS3diRSxxQkx4YkY7QTNFd3JVTjtBZ0YzdlRJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7QWhGNnZUTjtBZ0Z6dlRJO0VBQ0UseUJ6RWhiRTtFeUVpYkYsY3pFbGJFO0FQNnFVUjtBZ0Z4dlRFO0VBQ0UseUJBQUE7RUFDQSxtQkFBQTtFQUNBLGVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsY3pFN2JJO0V5RThiSix3Q0FBQTtFQUFBLGdDQUFBO0VBQ0Esb0NBQUE7QWhGMHZUSjs7QWdGcnZUQTtFQUNFLHlCTHhkSTtBM0VndFVOO0FnRnZ2VEU7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0Esc0JBQUE7TUFBQSxtQkFBQTtVQUFBLHFCQUFBO0FoRnl2VEo7QWdGeHZUSTtFQUpGO0lBS0kseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0lBQ0Esa0JBQUE7RWhGMnZUSjtBQUNGO0FHbmxVUTtFNkUrVVI7SUFZSSxrQkFBQTtJQUNBLFFBQUE7SUFDQSxRQUFBO0lBQ0EsVUFBQTtJQUNBLDZCQUFBO0VoRjR2VEY7QUFDRjtBZ0YzdlRFO0VBQ0UscUJBQUE7RUFDQSxrQ0FBQTtFQUNBLGVBQUE7RUFDQSxjekUxZEk7RXlFMmRKLGdCQUFBO0VBQ0EsV0FBQTtBaEY2dlRKO0FHcG1VUTtFNkVpV047SUFRSSw0QkFBQTtFaEYrdlRKO0FBQ0Y7QUd6bVVRO0U2RWlXTjtJQVdJLGdCQUFBO0lBQ0Esd0NBQUE7SUFDQSxvREFBQTtJQUNBLDREQUFBO0VoRml3VEo7QUFDRjtBZ0Zod1RJO0VBQ0UsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsU0FBQTtBaEZrd1ROO0FHdG5VUTtFNkVpWEo7SUFLSSxrQkFBQTtFaEZvd1ROO0FBQ0Y7QWdGbHdUSTtFQUNFLGlCQUFBO0VBQ0Esa0JBQUE7QWhGb3dUTjtBRy9uVVE7RTZFeVhKO0lBSUksaUJBQUE7RWhGc3dUTjtBQUNGO0FnRnB3VEk7RUFDRSxjekV0ZkU7RXlFdWZGLGVBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7QWhGc3dUTjtBRzFvVVE7RTZFZ1lKO0lBTUksaUJBQUE7RWhGd3dUTjtBQUNGO0FnRnJ3VEU7RUFDRSwrQkFBQTtFQUNBLDBCQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7QWhGdXdUSjtBR3RwVVE7RTZFMFlOO0lBT0ksZ0JBQUE7SUFDQSxpQkFBQTtJQUNBLHFCQUFBO0VoRnl3VEo7QUFDRjtBZ0Z2d1RFO0VBQ0UsMEJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7QWhGeXdUSjtBR3JxVVE7RTZFc1pOO0lBUUksbUJBQUE7RWhGMndUSjtBQUNGOztBZ0Z2d1RBO0VBQ0UsMEJBQUE7TUFBQSxzQkFBQTtBaEYwd1RGO0FHOXFVUTtFNkVtYVI7SUFHSSxxQkFBQTtFaEY0d1RGO0FBQ0Y7QWdGM3dURTtFQUxGO0lBTUksbUJBQUE7RWhGOHdURjtBQUNGOztBZ0Yxd1RFO0VBQ0UsV0FBQTtBaEY2d1RKOztBZ0Z0d1RBO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0VBQ0EsYUFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtBaEZ5d1RGO0FHcHNVUTtFNkVzYlI7SUFPSSxjQUFBO0VoRjJ3VEY7QUFDRjtBZ0Yxd1RFO0VBQ0UsY0FBQTtBaEY0d1RKO0FHNXNVUTtFNkUrYk47SUFHSSxhQUFBO0VoRjh3VEo7QUFDRjs7QWdGMXdUQTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLE9BQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0tBQUEsaUJBQUE7RUFDQSxVQUFBO0FoRjZ3VEY7O0FnRjF3VEE7RUFDRSxrQkFBQTtFQUNBLFVBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLFdBQUE7RUFDQSxrQkFBQTtBaEY2d1RGOztBZ0Yxd1RBO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLCtCQUFBO0VBQ0EsVUFBQTtBaEY2d1RGOztBZ0Yxd1RBO0VBQ0Usa0JBQUE7RUFDQSxVQUFBO0FoRjZ3VEY7O0FpRnY2VUE7RUFDRSxrQkFBQTtBakYwNlVGO0FpRno2VUU7RUFDRSxxREFBQTtFQUNBLDJCQUFBO0VBQ0EscUJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0FqRjI2VUo7QWlGMTZVSTtFQUNFLFdBQUE7RUFDQSxVQUFBO0FqRjQ2VU47QUdud1VRO0U4RWpMTjtJQVdJLGNBQUE7SUFDQSxpQkFBQTtFakY2NlVKO0VpRjU2VUk7SUFDRSxVQUFBO0VqRjg2VU47QUFDRjtBaUYzNlVFO0VBQ0Usa0JBQUE7RUFDQSxPQUFBO0VBQ0EsUUFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLDhCQUFBO0FqRjY2VUo7QUd2eFVRO0U4RS9KTjtJQVdJLHVCQUFBO0lBQ0EsWUFBQTtJQUNBLGdCQUFBO0lBQ0EsWUFBQTtJQUNBLFVBQUE7RWpGKzZVSjtBQUNGO0FpRjc2VUU7RUFDRSxnQkFBQTtFQUNBLGMxRXNCSTtFMEVyQkosa0JBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0FqRis2VUo7QUd2eVVRO0U4RTdJTjtJQU9JLGlCQUFBO0lBQ0EsbUJBQUE7RWpGaTdVSjtBQUNGO0FpRjk2VUU7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtBakZnN1VKO0FpRjk2VUU7RUFDRSxvQ0FBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtBakZnN1VKO0FHNXpVUTtFOEU3SE47SUFXSSxlQUFBO0lBQ0EsWUFBQTtFakZrN1VKO0FBQ0Y7O0FrRnIvVUE7RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxtQkFBQTtBbEZ3L1VGO0FHejBVUTtFK0VuTFI7SUFNSSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsZUFBQTtJQUNBLGdCQUFBO0VsRjAvVUY7QUFDRjtBa0Z6L1VFO0VBQ0UsY0FBQTtBbEYyL1VKO0FrRnovVUU7RUFDRSxxQkFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtBbEYyL1VKO0FHMTFVUTtFK0VyS047SUFNSSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsY0FBQTtJQUNBLGdCQUFBO0VsRjYvVUo7QUFDRjtBa0YzL1VFO0VBQ0UseUJBQUE7QWxGNi9VSjtBa0YzL1VFO0VBQ0UsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0FsRjYvVUo7QUcxMlVRO0UrRXRKTjtJQUtJLGlCQUFBO0lBQ0EsY0FBQTtJQUNBLGdCQUFBO0VsRisvVUo7QUFDRjtBa0Y1L1VFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx1QkFBQTtNQUFBLG9CQUFBO1VBQUEsMkJBQUE7QWxGOC9VSjtBR3IzVVE7RStFM0lOO0lBSUksd0JBQUE7UUFBQSxxQkFBQTtZQUFBLHVCQUFBO0VsRmdnVko7QUFDRjtBa0Y5L1VFO0VBQ0UsZUFBQTtFQUNBLFlBQUE7QWxGZ2dWSjtBRzkzVVE7RStFcElOO0lBSUksZUFBQTtJQUNBLFlBQUE7SUFDQSxZQUFBO0lBQ0Esb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7SUFDQSx3QkFBQTtRQUFBLHFCQUFBO1lBQUEsdUJBQUE7RWxGa2dWSjtBQUNGOztBbUYzalZBO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0FuRjhqVkY7QUc5NFVRO0VnRm5MUjtJQUtJLGlCQUFBO0lBQ0Esb0JBQUE7RW5GZ2tWRjtBQUNGO0FtRi9qVkU7RUFDRSxtQkFBQTtBbkZpa1ZKO0FHdjVVUTtFZ0YzS047SUFHSSxlQUFBO0lBQ0Esa0JBQUE7SUFDQSxtQkFBQTtFbkZta1ZKO0FBQ0Y7QW1GL2pWRTtFQUNFLGM1RTBDSTtBUHVoVlI7QW1GL2pWRTtFQUNFLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGlCQUFBO0FuRmlrVko7QUd2NlVRO0VnRjlKTjtJQU9JLGtCQUFBO0lBQ0EsdUJBQUE7RW5Ga2tWSjtBQUNGO0FtRi9qVkk7RUFDRSxtQkFBQTtBbkZpa1ZOO0FtRmhrVk07RUFDRSxtQkFBQTtFQUNBLGdCQUFBO0FuRmtrVlI7QUdwN1VRO0VnRmhKRjtJQUlJLGlCQUFBO0VuRm9rVlI7QUFDRjtBbUZqa1ZJO0VBQ0UscUJBQUE7RUFDQSxtQkFBQTtBbkZta1ZOO0FHNzdVUTtFZ0Z4SUo7SUFJSSxtQkFBQTtFbkZxa1ZOO0FBQ0Y7QW1GcGtWTTtFQUNFLCtCUkZhO0VRR2IseUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSx3QkFBQTtBbkZza1ZSO0FtRnJrVlE7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLHlCUjlDSDtFUStDRyxjQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7QW5GdWtWVjtBR2o5VVE7RWdGNUhBO0lBUUksV0FBQTtJQUNBLG1CQUFBO0VuRnlrVlY7QUFDRjtBbUZsa1ZFO0VBQ0UseUJBQUE7RUFDQSxjQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0FuRm9rVko7QUc5OVVRO0VnRjNHTjtJQU9JLGVBQUE7SUFDQSxnQkFBQTtFbkZza1ZKO0VtRnBrVk07SUFDRSxtQkFBQTtFbkZza1ZSO0VtRnBrVk07SUFDRSxrQkFBQTtFbkZza1ZSO0FBQ0Y7QW1GbmtWSTtFQUNFLGNBQUE7RUFFQSxjNUVoQ0U7QVBvbVZSO0FtRjlqVlE7RUFDRSw4QkFBQTtVQUFBLHNCQUFBO0FuRmdrVlY7QW1GOWpWUTtFQUNFLGNSNURKO0EzRTRuVk47QW1GNWpWSTtFQUNFLHlCUmpGRTtFUWtGRixtQkFBQTtBbkY4alZOO0FHeC9VUTtFZ0Z4RUo7SUFJSSxhQUFBO0VuRmdrVk47QUFDRjtBRzcvVVE7RWdGeEVKO0lBT0ksbUJBQUE7RW5Ga2tWTjtBQUNGO0FtRmprVk07RUFDRSxXQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBbkZta1ZSO0FtRmhrVkk7RUFDRSwrQlIxRWU7RVEyRWYsYzVFOURFO0U0RStERixlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxxQkFBQTtBbkZra1ZOO0FHL2dWUTtFZ0YxREo7SUFTSSxrQkFBQTtJQUNBLHNCQUFBO0VuRm9rVk47QUFDRjtBbUZsa1ZJO0VBQ0Usa0JBQUE7QW5Gb2tWTjtBR3hoVlE7RWdGN0NKO0lBR0ksZUFBQTtFbkZza1ZOO0FBQ0Y7QW1GbGtWSTtFQUNFLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxVQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLFVBQUE7RUFDQSxpQkFBQTtBbkZva1ZOO0FHcmlWUTtFZ0ZyQ0o7SUFRSSxvQkFBQTtJQUFBLG9CQUFBO0lBQUEsYUFBQTtJQUNBLHlCQUFBO1FBQUEsc0JBQUE7WUFBQSxtQkFBQTtJQUNBLHlCQUFBO1FBQUEsc0JBQUE7WUFBQSw4QkFBQTtFbkZza1ZOO0VtRnJrVk07SUFDRSxVQUFBO0lBQ0EsaUJBQUE7RW5GdWtWUjtBQUNGO0FtRnJrVk07RUFFRSxhQUFBO0VBQ0EsbUJBQUE7QW5Gc2tWUjtBbUZya1ZRO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0FuRnVrVlY7QW1GcmtWUTtFQUNFLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSx5QkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxnQkFBQTtBbkZ1a1ZWO0FtRnBrVk07RUFDRSxnQkFBQTtFQUNBLHlCUnJKQTtFUXNKQSxTQUFBO0VBQ0Esd0JBQUE7VUFBQSxnQkFBQTtFQUNBLFlBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0FuRnNrVlI7QW1GcmtWUTtFQUNFLHlCUnZLSDtBM0U4dVZQO0FtRnRrVlU7RUFDRSwyQkFBQTtVQUFBLG1CQUFBO0FuRndrVlo7QW1GcGtWTTtFQUNFLGtCQUFBO0FuRnNrVlI7QW1GaGtWRTtFQUNFLGtCQUFBO0FuRmtrVko7QW1GamtWSTtFQUNFLGVBQUE7RUFDQSwyQkFBQTtFQUFBLDJCQUFBO0VBQUEsb0JBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSxjQUFBO0VBQ0EsdUJBQUE7QW5GbWtWTjtBRzNsVlE7RWdGa0JKO0lBUUksZUFBQTtJQUNBLFlBQUE7SUFDQSxZQUFBO0VuRnFrVk47QUFDRjs7QW9GcHhWRTtFQUNFLGVBQUE7QXBGdXhWSjtBR3RtVlE7RWlGbExOO0lBR0kseUJBQUE7RXBGeXhWSjtBQUNGO0FHM21WUTtFaUZsTE47SUFNSSwyQkFBQTtFcEYyeFZKO0FBQ0Y7QW9GMXhWSTtFQUNFLG1CQUFBO0VBQ0Esb0JBQUE7QXBGNHhWTjtBb0Z6eFZFO0VBQ0Usa0JBQUE7RUFDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EsdUJBQUE7RUFDQSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxxQ0FBQTtFQUVBLDZCQUFBO0VBQ0EsVUFBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EseUI3RStCSTtFNkU5QkosY1Q1Qkc7RVM2QkgsV0FBQTtFQUNBLGlCQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBcEYyeFZKO0FHM29WUTtFaUZyS047SUF1QkksV0FBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VwRjZ4Vko7QUFDRjtBR2xwVlE7RWlGcktOO0lBNEJJLFdBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFcEYreFZKO0FBQ0Y7QW9GOXhWSTtFQUNFLGM3RWVFO0U2RWRGLHlCVDVDQztBM0U0MFZQO0FvRjd4VkU7RUFDRSxXQUFBO0FwRit4Vko7QUdocVZRO0VpRmhJTjtJQUdJLFdBQUE7RXBGaXlWSjtBQUNGO0FHcnFWUTtFaUZoSU47SUFNSSxZQUFBO0VwRm15Vko7QUFDRjtBb0ZqeVZFO0VBQ0UsVUFBQTtBcEZteVZKO0FHN3FWUTtFaUZ2SE47SUFHSSxVQUFBO0VwRnF5Vko7QUFDRjtBR2xyVlE7RWlGdkhOO0lBTUksV0FBQTtFcEZ1eVZKO0FBQ0Y7QW9GcnlWRTtFQUNFLGNBQUE7RUFDQSxrQkFBQTtBcEZ1eVZKO0FvRnR5Vkk7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFNBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0Esb0NBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0FwRnd5Vk47QW9GdnlWTTtFQUNFLG9DQUFBO0FwRnl5VlI7QW9GdnlWTTtFQUNFLHNDVHZDWTtFU3dDWixjN0UzQkE7RTZFNEJBLGVBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxtQkFBQTtBcEZ5eVZSO0FHbnRWUTtFaUY1RkY7SUFRSSxlQUFBO0VwRjJ5VlI7QUFDRjtBR3h0VlE7RWlGNUZGO0lBV0ksZUFBQTtFcEY2eVZSO0FBQ0Y7QW9GM3lWTTtFQUNFLDZCQUFBO0VBQ0EsYzdFekNBO0U2RTBDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0NBQUE7RUFDQSxVQUFBO0VBQ0Esc0JBQUE7QXBGNnlWUjtBR3R1VlE7RWlGOUVGO0lBVUksa0JBQUE7SUFDQSx3QkFBQTtFcEY4eVZSO0FBQ0Y7O0FHNXVWUTtFa0ZuTFI7SUFHSSxtQkFBQTtFckZpNlZGO0FBQ0Y7QXFGaDZWRTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtBckZrNlZKO0FHdHZWUTtFa0Y5S047SUFJSSxrQkFBQTtFckZvNlZKO0FBQ0Y7QXFGbjZWSTtFQUNFLGNWK0JBO0EzRXM0Vk47QXFGbDZWRTtFQUNFLGdCQUFBO0FyRm82Vko7QUdqd1ZRO0VrRnBLTjtJQUdJLGtCQUFBO0VyRnM2Vko7QUFDRjtBcUZyNlZJO0VBQ0Usa0JBQUE7QXJGdTZWTjtBcUZwNlZFO0VBQ0UsZUFBQTtFQUNBLGNWdEJHO0VVdUJILGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7QXJGczZWSjtBR2p4VlE7RWtGM0pOO0lBUUksb0JBQUE7SUFDQSxpQkFBQTtFckZ3NlZKO0FBQ0Y7QUd2eFZRO0VrRjNKTjtJQVlJLGVBQUE7RXJGMDZWSjtBQUNGO0FxRng2VkU7RUFDRSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0FyRjA2Vko7QUdqeVZRO0VrRjVJTjtJQUtJLHlCQUFBO0VyRjQ2Vko7QUFDRjtBcUYxNlZFO0VBQ0Usa0JBQUE7QXJGNDZWSjtBcUYxNlZFO0VBQ0Usa0JBQUE7RUFDQSxpQkFBQTtBckY0NlZKO0FHN3lWUTtFa0ZqSU47SUFJSSxpQkFBQTtFckY4NlZKO0FBQ0Y7QUdselZRO0VrRmpJTjtJQU9JLGtCQUFBO0VyRmc3Vko7QUFDRjtBR3Z6VlE7RWtGeEhKO0lBRUksaUJBQUE7SUFDQSxpQkFBQTtFckZpN1ZOO0FBQ0Y7QXFGOTZWRTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7QXJGZzdWSjtBR2owVlE7RWtGakhOO0lBSUksbUJBQUE7RXJGazdWSjtBQUNGO0FxRmg3VkU7RUFDRSxtQkFBQTtBckZrN1ZKO0FHejBWUTtFa0YxR047SUFHSSxtQkFBQTtFckZvN1ZKO0FBQ0Y7QUc5MFZRO0VrRjFHTjtJQU1JLG9CQUFBO0VyRnM3Vko7QUFDRjtBR24xVlE7RWtGakdGO0lBQ0UsZ0JBQUE7RXJGdTdWTjtBQUNGO0FxRnA3VkU7RUFDRSxXQUFBO0FyRnM3Vko7QXFGcjdWSTtFQUdFLGlCQUFBO0VBQ0Esa0JBQUE7QXJGcTdWTjtBcUZwN1ZNO0VBQ0UsbUJBQUE7QXJGczdWUjtBR2wyVlE7RWtGMUZKO0lBU0ksZUFBQTtJQUNBLGdCQUFBO0VyRnU3Vk47QUFDRjtBR3gyVlE7RWtGN0VBO0lBQ0Usb0JBQUE7SUFDQSxxQkFBQTtFckZ3N1ZSO0FBQ0Y7QXFGcjdWUTtFQUNFLG1EQUFBO0FyRnU3VlY7QXFGbjdWUTtFQUNFLHlEQUFBO0FyRnE3VlY7QXFGajdWSTtFQUNFLGNBQUE7RUFDQSx5QlZ2Rkc7RVV3RkgsNkJBQUE7RUFDQSxnQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsOEJBQUE7RUFDQSxrQkFBQTtFQUNBLGM5RWhFRTtFOEVpRUYsc0JBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0E7Ozs7Ozs7Ozs7SUFBQTtBckY2N1ZOO0FxRmw3Vk07RUFDRSxjOUVoRkE7RThFaUZBLHNDVjlGWTtFVStGWixlQUFBO0FyRm83VlI7QUdqNVZRO0VrRnRDRjtJQUtJLGlCQUFBO0VyRnM3VlI7QUFDRjtBcUZwN1ZNO0VBQ0ksOEJBQUE7VUFBQSxzQkFBQTtBckZzN1ZWO0FxRm43Vkk7RUFDRSxXQUFBO0FyRnE3Vk47QXFGeC9WRTtFQXFFRTs7Ozs7Ozs7O0lBQUE7QXJGKzdWSjtBcUZyN1ZJO0VBQ0UsaUJBQUE7RUFDQSxjVjdIQTtFVThIQSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0FyRnU3Vk47QUdoN1ZRO0VrRmJKO0lBUUksaUJBQUE7SUFDQSxpQkFBQTtFckZ5N1ZOO0FBQ0Y7QXFGeDdWTTtFQUNFLGVBQUE7RUFDQSxjVi9LRDtFVWdMQyxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxpQkFBQTtBckYwN1ZSO0FHOTdWUTtFa0ZGRjtJQVFJLGlCQUFBO0VyRjQ3VlI7QUFDRjtBcUZ6N1ZJO0VBSUUsNkJBQUE7RUFDQSxjOUVwSUU7RThFcUlGLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQ0FBQTtFQUNBLFVBQUE7RUFDQSxzQkFBQTtBckZ3N1ZOO0FHNThWUTtFa0ZVSjtJQVlJLGtCQUFBO0lBQ0Esd0JBQUE7RXJGMDdWTjtBQUNGO0FHbDlWUTtFa0YwQko7SUFFSSxXQUFBO0lBQ0EscUJBQUE7RXJGMDdWTjtBQUNGO0FxRnBqV0U7RUE0SEY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQUFBO0FyRis5VkE7O0FzRmxyV0E7RUFDRSx5QlhvQk07RVduQk4saUJBQUE7RUFDQSxvQkFBQTtFQUNBLGtCQUFBO0F0RnFyV0Y7QUd0Z1dRO0VtRm5MUjtJQU1JLGlCQUFBO0lBQ0Esb0JBQUE7RXRGdXJXRjtBQUNGO0FHNWdXUTtFbUZuTFI7SUFVSSxpQkFBQTtJQUNBLG9CQUFBO0V0RnlyV0Y7QUFDRjtBc0Z4cldFO0VBR0ksbUJBQUE7QXRGd3JXTjtBR3JoV1E7RW1GdEtOO0lBS00sZUFBQTtJQUNBLGtCQUFBO0lBQ0EsbUJBQUE7RXRGMHJXTjtBQUNGO0FzRnhyV007RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHFCQUFBO0VBQ0EsMkJBQUE7RUFDQSwrQlhtQmE7RVdsQmIsYy9FZ0NBO0UrRS9CQSxlQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLG1CQUFBO0F0RjByV1I7QUczaVdRO0VtRjVKRjtJQWVJLGlCQUFBO0lBQ0EsZ0JBQUE7SUFDQSxtQkFBQTtFdEY0cldSO0FBQ0Y7QXNGM3JXUTtFQUNFLHFCQUFBO0F0RjZyV1Y7QXNGMXJXTTtFQUNFLG1CQUFBO0F0RjRyV1I7QUd4aldRO0VtRnJJRjtJQUdJLGdCQUFBO0V0RjhyV1I7QUFDRjtBRzdqV1E7RW1GL0hGO0lBRUksbUJBQUE7RXRGOHJXUjtBQUNGO0FzRjdyV1E7RUFDRSxxREFBQTtBdEYrcldWO0FHcmtXUTtFbUZ2SEY7SUFFSSxrQkFBQTtFdEY4cldSO0FBQ0Y7QXNGN3JXUTtFQUNFLHdEQUFBO0F0RityV1Y7QXNGenJXRTtFQUNFLHlCQUFBO0VBQ0EsYy9FWkk7RStFYUosZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0F0RjJyV0o7QUdwbFdRO0VtRjVHTjtJQU9JLGtCQUFBO0lBQ0EsdUJBQUE7RXRGNnJXSjtBQUNGO0FzRjVyV0k7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLHlCWHpDQTtFVzBDQSxjQUFBO0VBQ0EsWUFBQTtFQUNBLGNBQUE7QXRGOHJXTjtBR2xtV1E7RW1GbEdKO0lBUUksV0FBQTtFdEZnc1dOO0FBQ0Y7QXNGN3JXRTtFQUNFLGlCQUFBO0F0RityV0o7QXNGNXJXRTtFQUNFLG1CQUFBO0F0RjhyV0o7QXNGNXJXRTtFQUNFLG1CQUFBO0F0RjhyV0o7QUdobldRO0VtRi9FTjtJQUdJLG1CQUFBO0V0RmdzV0o7QUFDRjtBc0Y3cldJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSx5QlhuRUE7RVdvRUEsY0FBQTtFQUNBLFdBQUE7QXRGK3JXTjtBRzVuV1E7RW1GeEVKO0lBT0ksV0FBQTtFdEZpc1dOO0FBQ0Y7O0F1Rm56V0U7RUFDRSxjaEYyREk7RWdGMURKLGdCQUFBO0VBQ0EseUJBQUE7RUFFQSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7QXZGcXpXSjtBRzFvV1E7RW9GbExOO0lBU0ksZ0JBQUE7RXZGdXpXSjtBQUNGO0FHL29XUTtFb0ZsTE47SUFZSSxlQUFBO0lBQ0EsdUJBQUE7RXZGeXpXSjtBQUNGO0F1RnZ6V0U7RUFDRSxxQkFBQTtFQUNBLGdCQUFBO0F2Rnl6V0o7QUd6cFdRO0VvRmxLTjtJQUlJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0lBQ0Esd0JBQUE7UUFBQSxxQkFBQTtZQUFBLHVCQUFBO0V2RjJ6V0o7QUFDRjtBR2hxV1E7RW9GbEtOO0lBU0ksWUFBQTtJQUNBLFlBQUE7RXZGNnpXSjtBQUNGO0F1RjN6V0U7RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7QXZGNnpXSjtBRzNxV1E7RW9GckpOO0lBS0ksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7RXZGK3pXSjtBQUNGO0FHbHJXUTtFb0ZySk47SUFVSSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsYUFBQTtFdkZpMFdKO0FBQ0Y7O0F3RjUyV0E7RUFDRSxtREFBQTtFQUNBLHlCakY0RE07RWlGM0ROLHFCQUFBO0VBQ0EsNEJBQUE7RUFDQSwyQkFBQTtFQUNBLGtCQUFBO0VBQ0EsYUFBQTtFQUNBLG9CQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSxxQkFBQTtBeEYrMldGO0FHeHNXUTtFcUZuTFI7SUFjSSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsY0FBQTtFeEZpM1dGO0FBQ0Y7QXdGNzJXRTtFQUNFLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0F4RisyV0o7QUdydFdRO0VxRjlKTjtJQU1JLGVBQUE7RXhGaTNXSjtBQUNGO0F3Ri8yV0U7RUFDRSxpQ2JnQmM7RWFmZCxnQkFBQTtFQUNBLG9CQUFBO0VBQ0EsaUJBQUE7QXhGaTNXSjtBR2h1V1E7RXFGckpOO0lBTUksa0JBQUE7RXhGbTNXSjtBQUNGO0F3RmozV0U7RUFDRSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QXhGbTNXSjtBRzF1V1E7RXFGNUlOO0lBS0ksa0JBQUE7RXhGcTNXSjtBQUNGO0F3Rm4zV0U7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLDZCQUFBO0VBQ0EsY2pGVUk7RWlGVEosY0FBQTtFQUNBLHlCYmxERztFYW1ESCxlQUFBO0F4RnEzV0o7QUd6dldRO0VxRnBJTjtJQVVJLGVBQUE7SUFDQSxZQUFBO0lBQ0EsWUFBQTtFeEZ1M1dKO0FBQ0Y7QXdGdDNXSTtFQUNFLHlCYi9DQztBM0V1NldQO0F3RnIzV0U7RUFDRSxtQkFBQTtBeEZ1M1dKO0FHdHdXUTtFcUZsSE47SUFHSSxtQkFBQTtFeEZ5M1dKO0FBQ0Y7QXdGdjNXRTtFQUNFLFlBQUE7RUFDQSxXQUFBO0VBQ0EseUJidEVHO0VhdUVILG9CQUFBO0F4RnkzV0o7QUdqeFdRO0VxRjVHTjtJQU1JLG1CQUFBO0V4RjIzV0o7QUFDRjtBd0Z6M1dFO0VBQ0UsbUJBQUE7QXhGMjNXSjtBR3p4V1E7RXFGbkdOO0lBR0ksbUJBQUE7RXhGNjNXSjtBQUNGOztBeUZoOVdFO0VBQ0UsaUJBQUE7QXpGbTlXSjtBeUY5OFdFO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtBekZnOVdKO0F5Ri84V0k7RUFDRSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY2xGZ0RFO0VrRi9DRixrQkFBQTtFQUNBLGdCQUFBO0F6Rmk5V047QXlGLzhXSTtFQUNFLGlCQUFBO0VBQ0EsZUFBQTtFQUNBLGNsRnlDRTtBUHc2V1I7QXlGaDlXTTtFQUNFLGNkcUJGO0EzRTY3V047QXlGNzhXSTtFQUNFLDRCQUFBO1VBQUEsb0JBQUE7QXpGKzhXTjtBeUY5OFdNO0VBQ0UsK0JBQUE7VUFBQSx1QkFBQTtBekZnOVdSOztBeUYxOFdBO0VBQ0UsY2RqQ0s7QTNFOCtXUDs7QTBGbC9XQTtFQUNFLGtCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBMUZxL1dGO0FHcjBXUTtFdUZuTFI7SUFLSSxrQkFBQTtJQUNBLGlCQUFBO0UxRnUvV0Y7QUFDRjtBRzMwV1E7RXVGM0tOO0lBRUksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7RTFGdy9XSjtBQUNGO0EwRnQvV0U7RUFDRSxlQUFBO0VBQ0EscUJBQUE7RUFDQSxTQUFBO0ExRncvV0o7QTBGdi9XSTtFQUNFLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLDBCQUFBO0VBQ0EsZUFBQTtFQUNBLGNuRnFDRTtBUG85V1I7QTBGdC9XRTtFQUNFLFNBQUE7QTFGdy9XSjtBR2oyV1E7RXVGeEpOO0lBR0ksZUFBQTtJQUNBLGdCQUFBO0UxRjAvV0o7QUFDRjtBR3YyV1E7RXVGakpOO0lBRUksZ0JBQUE7SUFDQSxtQkFBQTtRQUFBLG9CQUFBO1lBQUEsWUFBQTtFMUYwL1dKO0FBQ0Y7QTBGei9XSTtFQUNFLGFBQUE7RUFDQSxZQUFBO0VBQ0Esc0NBQUE7QTFGMi9XTjtBR2wzV1E7RXVGNUlKO0lBS0ksZUFBQTtFMUY2L1dOO0FBQ0Y7QUd2M1dRO0V1RjVJSjtJQVFJLFNBQUE7RTFGKy9XTjtBQUNGO0EwRjUvV0U7RUFDRSxTQUFBO0VBQ0EscUJBQUE7RUFDQSxlQUFBO0ExRjgvV0o7QUdqNFdRO0V1RmhJTjtJQUtJLGVBQUE7SUFDQSxpQkFBQTtJQUNBLG9CQUFBO0UxRmdnWEo7QUFDRjs7QTJGM2pYQTtFQUNFLGtCQUFBO0VBQ0EseUJBQUE7QTNGOGpYRjtBMkY3alhFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7QTNGK2pYSjtBR3Y1V1E7RXdGaExOO0lBVUksNEJBQUE7SUFBQSw2QkFBQTtRQUFBLDBCQUFBO1lBQUEsc0JBQUE7RTNGaWtYSjtBQUNGO0EyRi9qWEU7RUFDRSxpQkFBQTtBM0Zpa1hKO0EyRi9qWEU7RUFDRSxnQkFBQTtBM0Zpa1hKO0EyRi9qWEU7RUFDRSxlQUFBO0VBQ0EsZ0JBQUE7QTNGaWtYSjtBMkZoa1hJO0VBQ0UsU0FBQTtBM0Zra1hOO0FHejZXUTtFd0Y3Sk47SUFPSSxxQkFBQTtFM0Zta1hKO0FBQ0Y7QTJGamtYRTtFQUNFLGtCQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtBM0Zta1hKO0FHcjdXUTtFd0ZuSk47SUFPSSxlQUFBO0UzRnFrWEo7QUFDRjtBMkZua1hFO0VBQ0UsY0FBQTtFQUNBLG1CQUFBO0EzRnFrWEo7QTJGbmtYRTtFQUNFLFdBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7QTNGcWtYSjtBMkZua1hFO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGVBQUE7QTNGcWtYSjs7QTRGNW5YQTtFQUNFLGVBQUE7QTVGK25YRjs7QTRGNW5YQTtFQUNFLHFCQUFBO0E1RituWEY7QUdqOVdRO0V5Ri9LUjtJQUdJLGlCQUFBO0U1RmlvWEY7QUFDRjs7QTRGOW5YQTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0Esc0JBQUE7RUFDQSxxQkFBQTtBNUZpb1hGO0E0RmhvWEU7RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsV0FBQTtFQUNBLGNyRnlDSTtFcUZ4Q0osZ0JBQUE7RUFDQSwwQkFBQTtBNUZrb1hKO0E0RmpvWEk7RUFQRjtJQVFJLGlCQUFBO0U1Rm9vWEo7QUFDRjtBNEZub1hJO0VBVkY7SUFXSSxjckZtQ0U7RVBtbVhOO0FBQ0Y7O0E0RmxvWEE7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSxvQkFBQTtBNUZxb1hGO0FHdC9XUTtFeUZuSlI7SUFNSSxlQUFBO0lBQ0EsK0JBQUE7RTVGdW9YRjtBQUNGOztBNEZwb1hBO0VBQ0UsYUFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtFQUNBLFlBQUE7RUFDQSxXQUFBO0E1RnVvWEY7QTRGdG9YRTtFQU5GO0lBT0ksU0FBQTtJQUNBLFNBQUE7SUFDQSxtQ0FBQTtZQUFBLDJCQUFBO0lBQ0Esb0JBQUE7SUFDQSxxQkFBQTtFNUZ5b1hGO0FBQ0Y7O0E0RnRvWEE7RUFDRSxnQkFBQTtBNUZ5b1hGOztBNkZuc1hFO0VBQ0Usa0JBQUE7RUFDQSxhQUFBO0E3RnNzWEo7QUd0aFhRO0UwRmxMTjtJQUlJLFlBQUE7RTdGd3NYSjtFNkZ2c1hJO0lBQ0UsWUFBQTtFN0Z5c1hOO0FBQ0Y7QTZGdnNYSTtFQUNFLGN0Rm1ERTtBUHNwWFI7QTZGdnNYSTtFQUNFLGdCQUFBO0VBQ0Esa0JBQUE7QTdGeXNYTjtBNkZ4c1hNO0VBQ0UseUJBQUE7RUFDQSxnQkFBQTtBN0Ywc1hSO0FHemlYUTtFMEZ0S0o7SUFRSSxpQkFBQTtFN0Yyc1hOO0FBQ0Y7QTZGenNYSTtFQUNFLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxlQUFBO0E3RjJzWE47QUdualhRO0UwRjNKSjtJQUtJLGlCQUFBO0U3RjZzWE47QUFDRjtBNkYzc1hJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSw4QkFBQTtFQUNBLGFBQUE7QTdGNnNYTjtBRy9qWFE7RTBGbkpKO0lBT0ksWUFBQTtFN0Yrc1hOO0FBQ0Y7QTZGOXNYTTtFQUNFLGtCQUFBO0VBQ0EsNkJBQUE7RUFDQSxzQkFBQTtFQUNBLDJCQUFBO0VBQ0EsYUFBQTtBN0ZndFhSO0FHM2tYUTtFMEYxSUY7SUFPSSw0QkFBQTtJQUNBLFlBQUE7RTdGa3RYUjtBQUNGO0E2Rmh0WE07RUFDRSxrQkFBQTtFQUNBLFdBQUE7QTdGa3RYUjtBNkZqdFhRO0VBQ0UsY3RGTUY7QVA2c1hSO0E2Rmx0WFU7RUFDRSxlQUFBO0VBQ0EsMENBQUE7VUFBQSxrQ0FBQTtBN0ZvdFhaO0E2RjdzWEU7RUFDRSxpQkFBQTtBN0Yrc1hKO0FHL2xYUTtFMEZqSE47SUFHSSxpQkFBQTtFN0ZpdFhKO0FBQ0Y7QTZGaHRYSTtFQUNFLGtCQUFBO0E3Rmt0WE47QTZGL3NYTTtFQUNFLGVBQUE7QTdGaXRYUjtBNkY5c1hJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtBN0ZndFhOO0E2Ri9zWE07RUFDRSxnQkFBQTtFQUNBLHlCQUFBO0E3Rml0WFI7QUdsblhRO0UwRnBHSjtJQVFJLGlCQUFBO0U3Rmt0WE47QUFDRjtBNkZodFhJO0VBQ0UsY3RGOUJFO0VzRitCRix5QkFBQTtBN0ZrdFhOO0E2Rmp0WE07RUFDRSxjbEJuREY7QTNFc3dYTjtBNkZodFhJO0VBQ0UsaUJBQUE7QTdGa3RYTjtBNkY3c1hJO0VBQ0Usa0JBQUE7RUFDQSxpQkFBQTtFQUVBLG9CQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBN0Y4c1hOO0E2RjFzWE07RUFDRSx5QnRGbkRBO0VzRm9EQSxvQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZUFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7QTdGNHNYUjtBNkY3dFhJO0VBbUJBOzs7Ozs7Ozs7Ozs7O01BQUE7QTdGMHRYSjtBNkY1c1hNO0VBQ0UsbUJBQUE7RUFFQSxnQkFBQTtFQUNBLHVCQUFBO0E3RjZzWFI7QTZGNXNYUTtFQUNFLHFCQUFBO0E3RjhzWFY7QTZGM3NYTTtFQUNFLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtBN0Y2c1hSO0E2RnZzWEk7RUFDRSxjQUFBO0VBQ0EsMkJBQUE7RUFDQSxzQkFBQTtBN0Z5c1hOO0E2RmxzWEk7RUFDRSxjdEZ2R0U7QVAyeVhSO0E2RmxzWEk7RUFDRSxrQkFBQTtBN0Zvc1hOO0FHenJYUTtFMEZaSjtJQUdJLGlCQUFBO0U3RnNzWE47QUFDRjtBNkZwc1hJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtBN0Zzc1hOO0FHbHNYUTtFMEZOSjtJQUlJLGtCQUFBO0U3RndzWE47QUFDRjtBNkZ0c1hJO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxZQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsZUFBQTtBN0Z3c1hOO0E2RnJzWE07RUFDRSxrQ0FBQTtFQUNBLGtCQUFBO0E3RnVzWFI7QTZGdHNYUTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLGNBQUE7RUFDQSxvQ0FBQTtBN0Z3c1hWO0FHNXRYUTtFMEZ5QkU7SUFDRSxVQUFBO0U3RnNzWFY7RTZGcHNYUTtJQUNFLFVBQUE7RTdGc3NYVjtBQUNGO0FHcHVYUTtFMEZ1QkY7SUFVSSxVQUFBO0U3RnVzWFI7QUFDRjtBNkZwc1hRO0VBQ0UsZ0JBQUE7QTdGc3NYVjtBNkZsc1hJO0VBQ0UsY3RGaEtFO0VzRmlLRix3Q0FBQTtFQUFBLGdDQUFBO0VBQ0EsZ0JBQUE7QTdGb3NYTjs7QThGbjZYRTtFQUNFLGtCQUFBO0VBQ0EsYUFBQTtFQUNBOzs7Ozs7SUFBQTtBOUY0NlhKO0E4RnI2WEk7RUFDRSxjdkZrREU7QVBxM1hSO0E4RnI2WEk7RUFDRSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QTlGdTZYTjtBR3J3WFE7RTJGcktKO0lBS0ksaUJBQUE7RTlGeTZYTjtBQUNGO0E4RnY2WEk7RUFDRSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZUFBQTtBOUZ5NlhOO0FHL3dYUTtFMkY3Sko7SUFLSSxpQkFBQTtFOUYyNlhOO0FBQ0Y7QThGejZYSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EsNEJBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0VBQ0EsZ0JBQUE7QTlGMjZYTjtBOEYxNlhNO0VBQ0Usa0JBQUE7RUFDQSw2QkFBQTtFQUNBLHNCQUFBO0VBQ0EsMkJBQUE7RUFDQSxhQUFBO0E5RjQ2WFI7QUdueVhRO0UyRjlJRjtJQU9JLDRCQUFBO0U5Rjg2WFI7QUFDRjtBOEY1NlhNO0VBQ0UsYUFBQTtBOUY4NlhSO0E4RjU2WE07RUFDRSxZQUFBO0E5Rjg2WFI7QThGMzZYSTtFQUNFLGtCQUFBO0E5RjY2WE47QThGNTZYTTtFQUNFLFVBQUE7QTlGODZYUjtBOEY1NlhNO0VBQ0Usa0JBQUE7RUFDQSxXQUFBO0E5Rjg2WFI7QThGNzZYUTtFQUNFLGN2RkRGO0FQZzdYUjtBOEY5NlhVO0VBQ0UsZUFBQTtFQUNBLDBDQUFBO1VBQUEsa0NBQUE7QTlGZzdYWjtBOEYzNlhJO0VBQ0UsZ0JBQUE7QTlGNjZYTjtBOEY1NlhNO0VBQ0UsY3ZGWkE7QVAwN1hSO0E4RjU2WE07RUFDRSxvQkFBQTtBOUY4NlhSO0E4RjU2WE07RUFDRSxXQUFBO0E5Rjg2WFI7QThGMzZYUTtFQUNFLG1CQUFBO0E5RjY2WFY7QThGdjZYRTtFQUNFLGlCQUFBO0E5Rnk2WEo7QUdqMVhRO0UyRnpGTjtJQUdJLGlCQUFBO0U5RjI2WEo7QUFDRjtBOEYxNlhJO0VBQ0Usa0JBQUE7QTlGNDZYTjtBOEZ6NlhNO0VBQ0Usa0JBQUE7QTlGMjZYUjtBRzUxWFE7RTJGaEZGO0lBR0ksZUFBQTtFOUY2NlhSO0FBQ0Y7QThGMTZYSTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7QTlGNDZYTjtBR3IyWFE7RTJGekVKO0lBSUksaUJBQUE7RTlGODZYTjtBQUNGO0E4RjU2WEk7RUFDRSxjdkZyREU7RXVGc0RGLDBCQUFBO0E5Rjg2WE47QThGNzZYTTtFQUNFLGNuQjFFRjtBM0V5L1hOO0E4RjU2WEk7RUFDRSxpQkFBQTtBOUY4NlhOO0E4Rno2WEk7RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0E5RjI2WE47QUcxM1hRO0UyRnJESjtJQU1JLGlCQUFBO0U5RjY2WE47QUFDRjtBOEY1NlhNO0VBQ0UseUJ2RnpFQTtFdUYwRUEsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLGVBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0E5Rjg2WFI7QThGNTZYTTtFQUNFLHlCQUFBO01BQUEsNkJBQUE7RUFDQSxjQUFBO0E5Rjg2WFI7QUc3NFhRO0UyRm5DRjtJQUlJLDJCQUFBO0lBQUEsMkJBQUE7SUFBQSxvQkFBQTtFOUZnN1hSO0FBQ0Y7QThGLzZYUTtFQUNFLHFCQUFBO0VBQ0Esb0JBQUE7QTlGaTdYVjtBOEZoN1hVO0VBQ0UsY0FBQTtBOUZrN1haO0E4Rjk2WE07RUFDRSxxQkFBQTtFQUNBLGdCQUFBO0E5Rmc3WFI7QThGMTZYSTtFQUNFLGNBQUE7RUFDQSwyQkFBQTtFQUNBLHNCQUFBO0E5RjQ2WE47QThGMTZYUTtFQUNFLGNuQmpJSjtBM0U2aVlOO0E4Rng2WEk7RUFDRSxrQkFBQTtBOUYwNlhOO0FHeDZYUTtFMkZISjtJQUdJLGlCQUFBO0U5RjQ2WE47QUFDRjtBOEYxNlhJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtBOUY0NlhOO0FHajdYUTtFMkZHSjtJQUlJLGtCQUFBO0U5Rjg2WE47QUFDRjtBOEY1NlhJO0VBQ0UsZ0JBQUE7RUFDQSxjQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxZQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esa0JBQUE7QTlGODZYTjtBRzk3WFE7RTJGVUo7SUFRSSxlQUFBO0U5Rmc3WE47QUFDRjtBR244WFE7RTJGc0JFO0lBQ0UsVUFBQTtFOUZnN1hWO0U4Rjk2WFE7SUFDRSxVQUFBO0U5Rmc3WFY7QUFDRjtBRzM4WFE7RTJGb0JGO0lBVUksVUFBQTtFOUZpN1hSO0FBQ0Y7QThGOTZYSTtFQUNFLGN2RnpKRTtFdUYwSkYsd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLGdCQUFBO0E5Rmc3WE47QThGNTZYRTtFQUNFLGVBQUE7QTlGODZYSjtBR3g5WFE7RTJGeUNOO0lBR0ksbUJBQUE7RTlGZzdYSjtBQUNGOztBK0Yvb1lFO0VBQ0UsY0FBQTtBL0ZrcFlKO0ErRmhwWUU7RUFDRSxjcEJERztFb0JFSCxpQkFBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7QS9Ga3BZSjtBK0ZocFlFO0VBQ0UsY3BCZ0NFO0VvQi9CRixrQkFBQTtFQUNBLHlCQUFBO0EvRmtwWUo7QStGaHBZRTtFQUNFLGdCQUFBO0VBQ0Esa0JBQUE7QS9Ga3BZSjtBR2gvWFE7RTRGcEtOO0lBSUksaUJBQUE7RS9Gb3BZSjtBQUNGO0ErRmxwWUU7RUFDRSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZUFBQTtFQUNBLGN4Rm1DSTtBUGluWVI7QUczL1hRO0U0RjdKTjtJQU1JLGlCQUFBO0UvRnNwWUo7QUFDRjtBK0ZwcFlFO0VBQ0Usa0JBQUE7RUFDQSxjcEJ6Qkc7QTNFK3FZUDtBK0Y5b1lFO0VBRUUsa0JBQUE7RUFDQSx3QkFBQTtFQUNBLGdCQUFBO0EvRitvWUo7QUd6Z1lRO0U0RjFJTjtJQU1JLGtCQUFBO0UvRmlwWUo7QUFDRjtBK0Yvb1lFO0VBQ0Usd0NBQUE7RUFBQSxnQ0FBQTtBL0ZpcFlKO0ErRnBzWUE7RUFxREE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQUFBO0EvRm1yWUE7QStGaHBZQTtFQUNFLGlCQUFBO0EvRmtwWUY7QStGM29ZSTtFQUNFLDJCQUFBO0VBQUEsMkJBQUE7RUFBQSxvQkFBQTtFQUNBLDhCQUFBO0VBQUEsNkJBQUE7TUFBQSx1QkFBQTtVQUFBLG1CQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtVQUFBLHNCQUFBO0VBQ0EsaUNBQUE7TUFBQSw2QkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSx3Q0FBQTtFQUNBLHFCQUFBO0VBQ0EsU0FBQTtBL0Y2b1lOO0ErRjVvWU07RUFDRSxtQkFBQTtBL0Y4b1lSO0ErRjdvWVE7RUFDRSxjQUFBO0EvRitvWVY7QStGNW9ZTTtFQUNFLHFCQUFBO0VBQ0EsYUFBQTtFQUNBLHlCcEJ4RkE7QTNFc3VZUjtBK0Y1b1lVO0VBQ0UsOEJBQUE7RUFFQSxzQkFBQTtBL0Y4b1laO0ErRjNvWVE7RUFDRSxnQkFBQTtFQUNBLFlBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0EvRjZvWVY7QStGem9ZSTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7QS9GMm9ZTjtBRzVsWVE7RTRGakRKO0lBSUksbUJBQUE7SUFDQSxlQUFBO0UvRjZvWU47QUFDRjtBRzdsWVE7RTRGdERKO0lBUUksa0JBQUE7SUFDQSxtQkFBQTtFL0Yrb1lOO0FBQ0Y7QStGMW9ZRTtFQUNFLG1CQUFBO0EvRjRvWUo7QStGM29ZSTtFQUNFLGdCQUFBO0EvRjZvWU47QUc5bVlRO0U0RmhDSjtJQUdJLGVBQUE7RS9GK29ZTjtBQUNGO0FHOW1ZUTtFNEZyQ0o7SUFNSSxrQkFBQTtJQUNBLG1CQUFBO0UvRmlwWU47QUFDRjtBK0Yvb1lJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxtQkFBQTtBL0ZpcFlOO0ErRi9vWUk7RUFDRSx5QnhGckdFO0V3RnNHRix5QkFBQTtFQUNBLGNwQjdKQztFb0I4SkQsb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0EvRmlwWU47QUc1b1lRO0U0RmpCSjtJQWNJLFlBQUE7SUFDQSxZQUFBO0lBQ0EsYUFBQTtJQUNBLGVBQUE7RS9GbXBZTjtBQUNGO0ErRmxwWU07RUFDRSxlQUFBO0VBQ0Esa0JBQUE7QS9Gb3BZUjtBK0ZscFlNO0VBQ0UseUJwQmxMRDtFb0JtTEMsY3hGN0hBO0FQaXhZUjtBK0ZqcFlJO0VBQ0UsV0FBQTtFQUNBLHlCcEJqTEM7RW9Ca0xELFdBQUE7QS9GbXBZTjtBK0Yvb1lNO0VBQ0UscUJBQUE7RUFDQSxrQkFBQTtFQUNBLG1CQUFBO0EvRmlwWVI7QUd0cVlRO0U0RmtCRjtJQUtJLHFCQUFBO0UvRm1wWVI7QUFDRjtBK0ZqcFlNO0VBQ0UseUJwQjVLQztFb0I2S0QsV0FBQTtFQUNBLFlBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7QS9GbXBZUjtBK0ZscFlRO0VBQ0UseUJ4RnpKRjtFd0YwSkUsY3hGekpGO0FQNnlZUjtBK0ZscFlRO0VBQ0UsNkJBQUE7QS9Gb3BZVjtBK0ZucFlVO0VBQ0UsY3BCcE5MO0EzRXkyWVA7QStGbHBZUTtFQUNFLFNBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0EvRm9wWVY7QStGdDNZQTtFQXdPQzs7Ozs7Ozs7Ozs7Ozs7S0FBQTtBL0YrcFlEO0ErRnZvWUU7RUFDRSxtQkFBQTtBL0Z5b1lKO0ErRnhvWUk7RUFDRSxnQ0FBQTtFQUNBLGdCQUFBO0EvRjBvWU47QStGcm9ZSTtFQUNFLGdCQUFBO0EvRnVvWU47QStGajVZQTtFQTZRRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBQUE7QS9GbXNZRjs7QStGbG9ZRTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7QS9GcW9ZSjtBR2x5WVE7RTRGMkpOO0lBSUksbUJBQUE7SUFDQSxlQUFBO0UvRnVvWUo7QUFDRjtBR255WVE7RTRGc0pOO0lBUUksa0JBQUE7SUFDQSxtQkFBQTtFL0Z5b1lKO0FBQ0Y7QStGeG9ZSTtFQUNFLHFCQUFBO0VBQ0EscUJBQUE7QS9GMG9ZTjtBR2x6WVE7RTRGMEtBO0lBQ0UsZ0JBQUE7RS9GMm9ZUjtBQUNGO0ErRnhvWUk7RUFDRSxjeEZ0U0U7RXdGdVNGLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxjQUFBO0EvRjBvWU47QStGem9ZTTtFQUNFLGdCQUFBO0VBQ0EseUJwQnZVQztFb0J3VUQsZ0JBQUE7QS9GMm9ZUjtBR2wwWVE7RTRGb0xGO0lBS0ksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7RS9GNm9ZUjtBQUNGO0FHeDBZUTtFNEY0TEE7SUFFSSxVQUFBO0UvRjhvWVY7QUFDRjtBK0Y1b1lRO0VBQ0UsbUJBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0VBQ0EsYUFBQTtBL0Y4b1lWO0FHbDFZUTtFNEZpTUE7SUFLSSxXQUFBO0UvRmdwWVY7QUFDRjtBK0Y3b1lVO0VBQ0UsOEJBQUE7RUFFQSxzQkFBQTtBL0Yrb1laO0ErRjdvWVU7RUFDRSwyQkFBQTtFQUVBLG1CQUFBO0EvRitvWVo7QStGMW9ZSTtFQUNFLHlCQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtBL0Y0b1lOO0FHdDJZUTtFNEZ1Tko7SUFNSSxrQkFBQTtJQUNBLHFCQUFBO0UvRjZvWU47QUFDRjtBK0Y1b1lNO0VBQ0UscUJBQUE7QS9GOG9ZUjtBK0Y3b1lRO0VBQ0UsZ0JBQUE7QS9GK29ZVjtBK0Y1b1lNO0VBQ0UsaUNwQjNXVTtFb0I0V1YsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBL0Y4b1lSO0FHeDNZUTtFNEZzT0Y7SUFNSSxrQkFBQTtFL0ZncFlSO0FBQ0Y7QStGOW9ZTTtFQUNFLGdCQUFBO0EvRmdwWVI7QStGL29ZUTtFQUNFLGdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtBL0ZpcFlWO0ErRjlvWU07RUFDRSxtQkFBQTtFQUNBLG9CQUFBO0EvRmdwWVI7QStGN29ZSTtFQUNFLGtCQUFBO0VBQ0EseUJBQUE7RUFDQSxVQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLFVBQUE7QS9GK29ZTjtBR2w1WVE7RTRGOFBKO0lBT0ksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7RS9GaXBZTjtFK0ZocFlNO0lBQ0UsVUFBQTtJQUNBLGlCQUFBO0UvRmtwWVI7QUFDRjtBK0ZocFlNO0VBR0UsYUFBQTtBL0ZncFlSO0ErRi9vWVE7RUFDRSxnQkFBQTtFQUNBLGFBQUE7QS9GaXBZVjtBK0Yvb1lRO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBL0ZpcFlWO0ErRjlvWU07RUFDRSxnQkFBQTtFQUNBLHlCcEJ0YkE7RW9CdWJBLFNBQUE7RUFDQSx3QkFBQTtVQUFBLGdCQUFBO0VBQ0EsWUFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7QS9GZ3BZUjtBK0Yvb1lRO0VBQ0UseUJwQnhjSDtBM0V5bFpQO0ErRjlvWU07RUFDRSxrQkFBQTtBL0ZncFlSOztBK0Yxb1lBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FBQTtBQ2plQTtFQUNFLGNyQk9LO0EzRStvWlA7QUdwK1lRO0U2Rm5MUjtJQUtJLGNBQUE7RWhHc3BaRjtBQUNGO0FnR3JwWkU7RUFDRSxVQUFBO0VBQ0Esb0JBQUE7QWhHdXBaSjtBRzcrWVE7RTZGNUtOO0lBSUksaUJBQUE7SUFDQSxnQkFBQTtFaEd5cFpKO0FBQ0Y7QWdHeHBaSTtFQUNFLFNBQUE7QWhHMHBaTjtBZ0dscFpFO0VBQ0Usa0pBQUE7RUFBQSw0RkFBQTtBaEdvcFpKO0FnR25wWkk7RUFDRSxpQkFBQTtFQUNBLG9CQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0FoR3FwWk47QUdoZ1pRO0U2RjFKSjtJQU9JLGlCQUFBO0lBQ0EsZUFBQTtJQUNBLGdCQUFBO0VoR3VwWk47QUFDRjtBZ0ducFpFO0VBQ0UseUJBQUE7RUFDQSw2QkFBQTtFQUNBLGdCQUFBO0VBQ0EsY3pGa0JJO0V5RmpCSixzQkFBQTtFQUNBLFVBQUE7RUFDQSxxQkFBQTtBaEdxcFpKO0FnR3BwWkk7RUFDRSxjckJMQTtBM0UycFpOO0FnR2xwWkU7RUFDRSxnQkFBQTtFQUNBLFdBQUE7QWhHb3BaSjtBZ0c5b1pFO0VBQ0UsZ0JBQUE7QWhHZ3BaSjtBZ0cvb1pJO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0FoR2lwWk47QWdHOW9aRTtFQUNFLG1CQUFBO0VBQ0Esb0JBQUE7QWhHZ3BaSjtBZ0cvb1pJO0VBQ0UsZUFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxtQkFBQTtBaEdpcFpOO0FnR2hwWk07RUFDRSxpQkFBQTtBaEdrcFpSO0FnRzlvWkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxhQUFBO0FoR2dwWko7QWdHNW9aSTtFQUNFLHlCckJoREE7RXFCaURBLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7QWhHOG9aTjtBZ0c3b1pNO0VBQ0UseUJyQnpGRDtBM0V3dVpQO0FnR3ZvWkk7RUFDRSxnQkFBQTtBaEd5b1pOOztBZ0dwb1pBO0VBQ0UsY0FBQTtFQUNBLGNBQUE7QWhHdW9aRjtBZ0d0b1pFO0VBQ0UsV0FBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxnQkFBQTtBaEd3b1pKO0FnR3ZvWkk7RUFDRSxjQUFBO0FoR3lvWk47QWdHdG9aRTtFQUNFLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxXQUFBO0FoR3dvWko7QWdHdG9aRTtFQUNFLHVCQUFBO0VBQ0Esa0JBQUE7RUFDQSxZQUFBO0FoR3dvWko7O0FnR3RuWkU7RUFDRSxjQUFBO0VBQ0EsZUFBQTtBaEd5blpKO0FnR3ZuWkU7RUFDRSxjekY5RlE7RXlGK0ZSLGlCQUFBO0FoR3luWko7QWdHdm5aRTtFQUNFLHNEQUFBO0VBQUEsOENBQUE7RUFBQSxzQ0FBQTtFQUFBLDBFQUFBO0FoR3luWko7QWdHeG5aSTtFQUNFLG1DQUFBO1VBQUEsMkJBQUE7RUFDQSw4QkFBQTtVQUFBLHNCQUFBO0FoRzBuWk47O0FnR25uWkE7RUFDRSwwQkFBQTtFQUNBLDZCQUFBO0VBQ0EsZUFBQTtFQUNBLGdCQUFBO0FoR3NuWkY7O0FnR25uWkE7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0FoR3NuWkY7O0FnR25uWkE7RUFDRSxnQkFBQTtBaEdzblpGOztBZ0dublpBO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0FoR3NuWkY7QWdHcG5aSTs7RUFFRSxrQkFBQTtBaEdzblpOO0FnR3BuWkk7RUFDRSxtQnpGdklPO0FQNnZaYjs7QUdwb1pRO0U2RnNCRjtJQUNFLFlBQUE7RWhHa25aTjtFZ0doblpJO0lBQ0UsaUJBQUE7SUFDQSxRQUFBO0VoR2tuWk47RWdHL21aRTtJQUNFLHFCQUFBO0lBQ0EsV0FBQTtFaEdpblpKO0FBQ0Y7QUdscFpRO0U2RnNDTjtJQUNFLGFBQUE7RWhHK21aRjtBQUNGO0FnRzFtWkU7RUFDRSx3Q0FBQTtFQUFBLGdDQUFBO0FoRzRtWko7QWdHM21aSTtFQUNFLHlCekZ0S0U7RXlGeUtGLGVBQUE7RUFDQSxNQUFBO0VBQ0EsUUFBQTtFQUNBLE9BQUE7RUFDQSxVQUFBO0FoRzJtWk47QWdHeG1aRTtFQUNFLHlCckIxT0c7QTNFbzFaUDtBZ0d6bVpJO0VBQ0UsY3pGbExFO0FQNnhaUjtBZ0d4bVpFO0VBQ0UsNkJBQUE7RUFDQSxpQkFBQTtFQUNBLG9CQUFBO0FoRzBtWko7QWdHeG1aSTtFQUNFLGdCQUFBO0FoRzBtWk47QUdoclpRO0U2RnFFSjtJQUdJLGtCQUFBO0lBQ0EsbUJBQUE7RWhHNG1aTjtBQUNGO0FHdHJaUTtFNkZxRUo7SUFPSSxtQkFBQTtJQUNBLGtCQUFBO0VoRzhtWk47QUFDRjtBZ0cxbVpJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QWhHNG1aTjtBZ0cxbVpRO0VBQ0Usb0JBQUE7QWhHNG1aVjtBR25zWlE7RTZGc0ZBO0lBR0ksa0JBQUE7RWhHOG1aVjtBQUNGO0FnRzNtWk07RUFDRSxZQUFBO0VBQ0EsNkJBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLGN6RnhOQTtBUHEwWlI7QUdodFpRO0U2RjZGRjtJQVFJLGlCQUFBO0lBQ0Esa0JBQUE7RWhHK21aUjtBQUNGO0FnRzVtWlE7RUFDRSxtQkFBQTtBaEc4bVpWO0FHenRaUTtFNkYwR0E7SUFHSSxpQkFBQTtFaEdnblpWO0FBQ0Y7QWdHM21aSTtFQUNFLGlCQUFBO0FoRzZtWk47QUdqdVpRO0U2Rm1ISjtJQUdJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0lBQ0EscUJBQUE7UUFBQSxrQkFBQTtZQUFBLHlCQUFBO0VoRyttWk47QUFDRjtBZ0c5bVpNO0VBQ0UseUJyQjFTRDtFcUIyU0MscUJyQjNTRDtFcUI0U0MsZ0JBQUE7RUFDQSxnQkFBQTtBaEdnblpSO0FHOXVaUTtFNkYwSEY7SUFNSSxnQkFBQTtJQUNBLGtCQUFBO0VoR2tuWlI7QUFDRjtBZ0dqblpRO0VBQ0UseUJyQnhTSDtBM0UyNVpQO0FnRzdtWkU7RUFDRTs7Ozs7Ozs7OztNQUFBO0FoR3luWko7QWdHOW1aTTtFQUNFLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSx1QkFBQTtBaEdnblpSO0FnRzltWk07RUFDRSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0EsbUJBQUE7QWhHZ25aUjtBZ0c5bVpNO0VBQ0UsY3pGMVJBO0V5RjJSQSxnQkFBQTtFQUNBLHVCQUFBO0FoR2duWlI7QWdHL21aUTtFQUNFLGdCQUFBO0VBQ0EseUJyQjFURDtFcUIyVEMsZ0JBQUE7QWhHaW5aVjtBRzN4WlE7RTZGdUtBO0lBS0ksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7RWhHbW5aVjtBQUNGO0FHanlaUTtFNkYrS0U7SUFFSSxVQUFBO0VoR29uWlo7QUFDRjtBZ0dsblpVO0VBQ0UsbUJBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0VBQ0EsYUFBQTtBaEdvblpaO0FHM3laUTtFNkZvTEU7SUFLSSxXQUFBO0VoR3NuWlo7QUFDRjtBZ0dublpZO0VBQ0UsOEJBQUE7RUFFQSxzQkFBQTtBaEdxblpkO0FnR2huWk07RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QWhHa25aUjtBRzF6WlE7RTZGcU1GO0lBTUksa0JBQUE7SUFDQSxxQkFBQTtFaEdtblpSO0FBQ0Y7QWdHbG5aUTtFQUNFLGlDckJuVlE7RXFCb1ZSLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QWhHb25aVjtBR3QwWlE7RTZGOE1BO0lBTUksa0JBQUE7RWhHc25aVjtBQUNGOztBZ0cvbVpBO0VBSUUsZ0JBQUE7RUFDQSxtQkFBQTtBaEcrbVpGO0FnRzltWkU7RUFDRSxxQkFBQTtBaEdnblpKO0FnRzltWkU7RUFDRSxtQkFBQTtFQUNBLGlDckIzV2M7RXFCNFdkLG1CQUFBO0VBRUEsY3pGaFdJO0FQKzhaUjtBR3oxWlE7RTZGZ1BOO0lBR0ksb0JBQUE7SUFBQSxvQkFBQTtJQUFBLGFBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7SUFDQSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsbUJBQUE7RWhHMG1aSjtBQUNGO0FnR3ptWkk7RUFDRSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QWhHMm1aTjtBR3gyWlE7RTZGdVBKO0lBUUksWUFBQTtFaEc2bVpOO0FBQ0Y7QWdHNW1aTTtFQUNFLHlCckI3YUQ7RXFCOGFDLHFCckI5YUQ7QTNFNGhhUDtBZ0c1bVpNO0VBQ0Usd0JBQUE7QWhHOG1aUjtBZ0cxbVpNO0VBQ0UseUJ6RmhZQTtFeUZpWUEsY3pGbFlBO0FQOCtaUjtBZ0czbVpRO0VBQ0UseUJyQnpiSDtFcUIwYkcsY3pGcFlGO0V5RnFZRSxxQnJCM2JIO0EzRXdpYVA7QWdHeG1aTTtFQUNFLHlCckIxYkQ7RXFCMmJDLHFCckIzYkQ7RXFCNGJDLGN6RjlZQTtBUHcvWlI7QWdHem1aUTtFQUNFLHlCckJyY0g7RXFCc2NHLGN6RmhaRjtFeUZpWkUscUJyQnZjSDtBM0VramFQOztBZ0dybVpBO0VBQ0UsZUFBQTtBaEd3bVpGO0FnR3ZtWkU7RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7QWhHeW1aSjtBZ0d2bVpFO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSx5QkFBQTtFQUNBLHlCckIzY0k7QTNFb2phUjtBZ0d0bVpFO0VBQ0UsY0FBQTtBaEd3bVpKO0FnR3JtWkU7RUFDRSxjQUFBO0FoR3VtWko7QWdHdG1aSTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7QWhHd21aTjs7QWdHbG1aRTtFQUNFLGNBQUE7QWhHcW1aSjtBZ0dubVpFO0VBQ0UsY0FBQTtBaEdxbVpKO0FnR25tWkU7RUFDRSxhQUFBO0FoR3FtWko7QWdHbm1aRTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsbUJBQUE7QWhHcW1aSjtBZ0dwbVpJO0VBQ0UsY3JCcmRBO0EzRTJqYU47QWdHcG1aSTtFQUNFLG1CQUFBO0VBQ0EseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0FoR3NtWk47O0FnR2xtWkE7RUFDRSxhQUFBO0VBQ0EsY3pGL2NNO0V5RmdkTix5QnJCdmZNO0VxQndmTixhQUFBO0VBQ0EsbUJBQUE7QWhHcW1aRjtBR2o4WlE7RTZGdVZSO0lBT0ksYUFBQTtFaEd1bVpGO0FBQ0Y7QWdHdG1aRTtFQUNFLG1CQUFBO0FoR3dtWko7QWdHdm1aSTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7QWhHeW1aTjtBZ0dwbVpJO0VBQ0Usb0JBQUE7QWhHc21aTjtBZ0dwbVpJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7QWhHc21aTjtBZ0dybVpNO0VBQ0UsZUFBQTtFQUNBLGtCQUFBO0VBQ0EsZUFBQTtBaEd1bVpSO0FnR3JtWk07RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtBaEd1bVpSO0FnR3JtWk07RUFDRSxtQkFBQTtBaEd1bVpSO0FnR3JtWk07RUFDRSxjckJyZkM7RXFCc2ZELGdCQUFBO0VBQ0EsbUJBQUE7QWhHdW1aUjtBZ0dubVpFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7QWhHcW1aSjtBZ0dwbVpJO0VBQ0Usa0JBQUE7RUFDQSxlQUFBO0VBQ0Esa0JBQUE7QWhHc21aTjtBZ0dybVpNO0VBQ0UsZUFBQTtBaEd1bVpSO0FnR3BtWkk7RUFDRSxnQkFBQTtBaEdzbVpOOztBZ0dsbVpBO0VBQ0UsZUFBQTtBaEdxbVpGO0FnR3BtWkU7RUFDRSxrQkFBQTtFQUNBLGN6RjNnQkk7RXlGNGdCSiwwQkFBQTtBaEdzbVpKO0FnR3BtWkU7RUFDRSxnQ0FBQTtFQUNBLG1CQUFBO0FoR3NtWko7QWdHcG1aRTtFQUNFLG1CQUFBO0VBQ0EsaUNyQmxpQmM7RXFCbWlCZCxtQkFBQTtFQUVBLGN6RnZoQkk7QVA0bmFSO0FnR25tWkU7RUFDRSxrQkFBQTtFQUNBLHFCQUFBO0VBQ0EsY0FBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7QWhHcW1aSjtBZ0dwbVpJO0VBQ0UsZ0JBQUE7QWhHc21aTjtBZ0dwbVpJO0VBQ0UsY3pGcGlCRTtBUDBvYVI7QWdHam1aTTtFQUNFLHlCckJ4bEJEO0VxQnlsQkMsY3pGM2lCQTtFeUY0aUJBLHFCckIxbEJEO0EzRTZyYVA7QWdHbG1aUTtFQUNFLHlCckJubUJIO0VxQm9tQkcsY3pGOWlCRjtBUGtwYVI7O0FpR2h0YUE7RUFDRSxnQkFBQTtFQUVBLGNBQUE7QWpHa3RhRjtBR2xpYVE7RThGbkxSO0lBS0ksa0JBQUE7RWpHb3RhRjtBQUNGO0FpR250YUU7RUFDRSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxXQUFBO0FqR3F0YUo7QWlHanRhSTtFQUNFLFlBQUE7RUFDQSxXQUFBO0FqR210YU47QWlHbHRhTTtFQUNFLFlBQUE7RUFDQSxXQUFBO0FqR290YVI7QWlHbnRhUTtFQUNFLGlCQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxpQkFBQTtFQUNBLDZCQUFBO0VBQ0Esb0JBQUE7QWpHcXRhVjtBaUdqdGFRO0VBQ0UscUIxRjhCRjtBUHFyYVI7O0FpRzVzYUE7RUFDRSwyQkFBQTtBakcrc2FGO0FpRzlzYUU7RUFDRSxjQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7QWpHZ3RhSjtBaUduc2FJO0VBQ0UsNkJBQUE7RUFDQSxrQkFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0FqR3FzYU47QWlHbHNhRTtFQUVFLFdBQUE7RUFDQSx5QkFBQTtFQUNBLHFCQUFBO0VBQ0EseUIxRk5JO0UwRk9KLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsdUJBQUE7QWpHbXNhSjtBR3hsYVE7RThGcEhOO0lBV0ksY0FBQTtJQUNBLGVBQUE7SUFDQSxrQkFBQTtFakdxc2FKO0FBQ0Y7QWlHcHNhSTtFQUNFLHFCdEJuRUM7QTNFeXdhUDtBaUduc2FFO0VBQ0UsVUFBQTtBakdxc2FKO0FpR25zYUU7RUFDRSxlQUFBO0VBQ0EsZUFBQTtBakdxc2FKO0FpR25zYUU7RUFDRSxzREFBQTtFQUFBLDhDQUFBO0VBQUEsc0NBQUE7RUFBQSwwRUFBQTtBakdxc2FKO0FpR3BzYUk7RUFDRSxtQ0FBQTtVQUFBLDJCQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtBakdzc2FOOztBa0dseWFFO0VBQ0UsbUJBQUE7QWxHcXlhSjtBa0dweWFJO0VBQ0UseUJBQUE7RUFDQSxxQkFBQTtFQUNBLGtCQUFBO0FsR3N5YU47QWtHcHlhSTtFQUNFLGFBQUE7QWxHc3lhTjs7QWtHanlhQTtFQUNFLGdCQUFBO0FsR295YUY7QWtHbnlhRTtFQUNFLGlCQUFBO0VBQ0EsZ0JBQUE7QWxHcXlhSjtBa0dueWFFO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0VBQ0EsZ0JBQUE7QWxHcXlhSjs7QWtHanlhQTtFQUNFLFlBQUE7QWxHb3lhRjtBa0dueWFFO0VBQ0UsWUFBQTtBbEdxeWFKO0FrR255YUU7RUFDRSxVQUFBO0FsR3F5YUo7QWtHbnlhRTtFQUNFLHFCQUFBO0VBQ0EsVUFBQTtFQUNBLGtCQUFBO0FsR3F5YUo7QWtHbnlhRTtFQUNFLHlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLFdBQUE7QWxHcXlhSjtBa0dweWFJO0VBQ0UseUJ2QkxBO0V1Qk1BLFdBQUE7RUFDQSxnQkFBQTtBbEdzeWFOO0FrR3B5YUk7RUFDRSxzQkFBQTtFQUNBLFdBQUE7QWxHc3lhTjs7QWtHaHlhQTtFQUNFLGN2QmxCSTtBM0VxemFOOztBRzdxYVE7RWdHbkxSO0lBS0ksZ0JBQUE7RW5HZzJhRjtBQUNGO0FtRy8xYUU7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY3hCTkc7QTNFdTJhUDtBbUcvMWFFO0VBQ0UsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGN4QlBHO0V3QlFILGtCQUFBO0FuR2kyYUo7QW1HaDJhSTtFQUNFLHFCQUFBO0FuR2syYU47QW1HLzFhRTtFQUNFLG1CQUFBO0VBQ0EsYzVGc0NJO0FQMnphUjtBbUcvMWFFO0VBQ0UsYzVGbUNJO0U0RmxDSixtQkFBQTtBbkdpMmFKO0FHenNhUTtFZ0dySko7SUFDRSxhQUFBO0VuR2kyYUo7QUFDRjtBbUc5MWFJO0VBQ0UsY0FBQTtBbkdnMmFOO0FtRzkxYUk7RUFDRSxtQkFBQTtFQUNBLGlDeEJPWTtFd0JMWixjNUZtQkU7QVA0MGFSO0FtRzkxYU07RUFDRSxvQkFBQTtBbkdnMmFSO0FtRzMxYUk7RUFDRSxzQkFBQTtFQUNBLHlCQUFBO0VBQ0EsYzVGU0U7RTRGUkYsaUJBQUE7RUFDQSxzQkFBQTtFQUNBLGdCQUFBO0VBQ0EsMEJBQUE7QW5HNjFhTjtBbUc1MWFNO0VBQ0UsY3hCZkY7QTNFNjJhTjs7QW1HcjFhSTtFQUNFLDZCQUFBO0VBQ0Esc0JBQUE7QW5HdzFhTjtBbUd2MWFNO0VBQ0UsZ0JBQUE7QW5HeTFhUjtBbUd2MWFNO0VBQ0UsbUJBQUE7RUFDQSxjeEJsQkM7QTNFMjJhVDtBbUd2MWFNO0VBQ0UsZUFBQTtFQUNBLGM1RmxCQTtFNEZtQkEsU0FBQTtFQUNBLHlCQUFBO0FuR3kxYVI7QW1HeDFhUTtFQUNFLFdBQUE7QW5HMDFhVjtBbUd2MWFNO0VBQ0UsU0FBQTtFQUNBLFVBQUE7RUFDQSw2QkFBQTtFQUNBLGN4QmxGRDtBM0UyNmFQO0FHaHdhUTtFZ0d2RkY7SUFFSSxnQ0FBQTtFbkd5MWFSO0FBQ0Y7O0FvR3g3YUE7RUFDRSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtBcEcyN2FGO0FHNXdhUTtFaUduTFI7SUFNSSxpQkFBQTtFcEc2N2FGO0FBQ0Y7QW9HNTdhRTtFQUNFLFdBQUE7QXBHODdhSjtBb0c3N2FJO0VBQ0UsOEJBQUE7QXBHKzdhTjtBb0c1N2FFO0VBQ0UseUJ6QkhHO0V5QklILGM3RjZDSTtFNkY1Q0osV0FBQTtFQUNBLG9CQUFBO0VBQ0EsdUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0FwRzg3YUo7QW9HNTdhRTtFQUNFLG1CQUFBO0VBQ0EsaUJBQUE7RUFDQSxVQUFBO0FwRzg3YUo7QW9HNzdhSTtFQUNFLHlCekJlQTtBM0VnN2FOOztBcUczOWFBO0VBQ0UsVUFBQTtFQUNBLGtCQUFBO0FyRzg5YUY7QXFHNzlhRTtFQUNFLHlDQUFBO0VBQ0EsaUJBQUE7RUFDQSxpQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLHVDQUFBO0VBR0EsK0JBQUE7RUFDQSxXQUFBO0FyRys5YUo7QXFHOTlhSTtFQUNFLGMxQjRCQTtBM0VvOGFOOztBcUczOWFBO0VBQ0Usb0JBQUE7QXJHODlhRjtBcUc3OWFFO0VBQ0UseUJBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7RUFDQSxtQkFBQTtFQUNBLFdBQUE7QXJHKzlhSjs7QUd4MGFRO0VrR2xKTjs7SUFFRSxxQkFBQTtJQUNBLGNBQUE7RXJHODlhRjtFcUc1OWFBO0lBQ0UsYUFBQTtFckc4OWFGO0FBQ0Y7QXNHcmdiRTtFQUNFLGlCQUFBO0F0R3VnYko7QXNHcmdiRTtFQUNFLG1CQUFBO0F0R3VnYko7QXNHcmdiRTtFQUNFLGFBQUE7RUFDQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxRQUFBO0VBQ0Esd0NBQUE7VUFBQSxnQ0FBQTtFQUNBLFVBQUE7QXRHdWdiSjtBc0dyZ2JFO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtBdEd1Z2JKO0FzR3RnYkk7RUFDRSxtQi9GMkNFO0UrRjFDRixXQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxRQUFBO0VBQ0EsTUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLFVBQUE7QXRHd2diTjtBc0d0Z2JJO0VBQ0UsY0FBQTtBdEd3Z2JOO0FzR3JnYkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxhQUFBO0F0R3VnYko7QXNHcGdiSTtFQUNFLFVBQUE7RUFDQSw0Q0FBQTtFQUFBLG9DQUFBO0F0R3NnYk47QXNHcGdiSTtFQUNFLGNBQUE7RUFDQSxxQ0FBQTtFQUNBLDBDQUFBO0VBQ0EsNkNBQUE7QXRHc2diTjtBc0dwZ2JJO0VBQ0UsWUFBQTtBdEdzZ2JOO0FzR25nYkU7RUFDRSxrQkFBQTtFQUNBLFFBQUE7RUFDQSxPQUFBO0VBQ0EsYUFBQTtFQUNBLFdBQUE7RUFDQSxpQkFBQTtFQUNBLFVBQUE7QXRHcWdiSjtBc0dwZ2JJO0VBQ0Usc0JBQUE7QXRHc2diTjtBc0duZ2JFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0VBQ0EsOEJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxTQUFBO0VBQ0EsT0FBQTtFQUNBLFFBQUE7RUFDQSxVQUFBO0VBQ0EsV0FBQTtFQUNBLGVBQUE7QXRHcWdiSjtBc0dwZ2JJO0VBQ0UsbUJBQUE7RUFDQSxzQkFBQTtFQUNBLGtCQUFBO0F0R3NnYk47O0F1RzFsYkE7RUFDRSxTQUFBO0VBQ0EsYUFBQTtFQUNBLG1CQUFBO0VBQ0Esb0RBQUE7VUFBQSw0Q0FBQTtBdkc2bGJGO0FHOTZhUTtFb0duTFI7SUFTSSxhQUFBO0V2RzRsYkY7RXVHM2xiRTtJQUNFLGFBQUE7SUFDQSxvQkFBQTtJQUFBLG9CQUFBO0lBQUEsYUFBQTtJQUNBLDRCQUFBO0lBQUEsNkJBQUE7UUFBQSwwQkFBQTtZQUFBLHNCQUFBO0lBQ0EseUJBQUE7UUFBQSw2QkFBQTtFdkc2bGJKO0FBQ0Y7QXVHM2xiRTtFQUNFLGFBQUE7QXZHNmxiSjtBdUczbGJFO0VBQ0UsK0I1QjJCaUI7RTRCMUJqQix5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxjQUFBO0F2RzZsYko7QXVHM2xiRTtFQUNFLGVBQUE7QXZHNmxiSjtBdUcxbGJJO0VBQ0UsaUJBQUE7RUFDQSxjQUFBO0F2RzRsYk47QXVHemxiRTtFQUNFLGlCQUFBO0VBQ0EsbUJBQUE7QXZHMmxiSjtBdUd6bGJFO0VBQ0UsVUFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx5QjVCekJJO0U0QjBCSixtQkFBQTtFQUNBLGFBQUE7QXZHMmxiSjtBdUcxbGJJO0VBQ0UscUJBQUE7QXZHNGxiTjtBdUd6bGJFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7QXZHMmxiSjtBdUd6bGJFO0VBQ0UsNEJBQUE7RUFBQSw2QkFBQTtNQUFBLDBCQUFBO1VBQUEsc0JBQUE7RUFDQSxXQUFBO0F2RzJsYko7QXVHemxiRTtFQUNFLHlCQUFBO0VBQ0EsZ0JBQUE7QXZHMmxiSjtBdUd4bGJJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtBdkcwbGJOO0FHMSthUTtFb0dsSEo7SUFJSSw4QkFBQTtJQUFBLDZCQUFBO1FBQUEsdUJBQUE7WUFBQSxtQkFBQTtFdkc0bGJOO0FBQ0Y7QXVHM2xiTTtFQUNFLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0F2RzZsYlI7QUdsL2FRO0VvRzVHRjtJQUdJLDhCQUFBO0lBQUEsNkJBQUE7UUFBQSx1QkFBQTtZQUFBLG1CQUFBO0V2RytsYlI7QUFDRjtBdUc1bGJJO0VBQ0UsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLGFBQUE7QXZHOGxiTjtBRzUvYVE7RW9HckdKO0lBS0kscUJBQUE7RXZHZ21iTjtBQUNGO0F1RzVsYkU7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLDhCQUFBO0VBQ0EsbUJBQUE7QXZHOGxiSjtBdUczbGJFO0VBQ0Usa0JBQUE7QXZHNmxiSjtBdUczbGJFO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBdkc2bGJKO0FHdmhiUTtFb0czRU47SUFPSSxRQUFBO0V2RytsYko7QUFDRjtBdUc5bGJJO0VBQ0UsZUFBQTtFQUNBLHlCNUJwR0M7QTNFb3NiUDtBdUc3bGJFO0VBQ0UsT0FBQTtBdkcrbGJKO0F1RzdsYkU7RUFDRSxRQUFBO0F2RytsYko7O0F1R3ZsYkE7RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0Esb0RBQUE7VUFBQSw0Q0FBQTtBdkcwbGJGO0F1R3psYkU7RUFDRSxhQUFBO0VBQ0EsU0FBQTtFQUNBLDhCQUFBO0F2RzJsYko7O0F3R251YkU7RUFDRSxlQUFBO0VBQ0EsaUJBQUE7RUFDQSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsU0FBQTtBeEdzdWJKO0FHempiUTtFcUdsTE47SUFPSSxnQkFBQTtFeEd3dWJKO0FBQ0Y7O0F3R3B1YkE7RUFDRSxxQkFBQTtFQUNBLFNBQUE7QXhHdXViRjtBR25rYlE7RXFHdEtSO0lBSUksbUJBQUE7RXhHeXViRjtBQUNGO0F3R3h1YkU7RUFDRSxnQkFBQTtFQUNBLFdBQUE7RUFDQSxVQUFBO0VBQ0EsWUFBQTtFQUNBLGdCQUFBO0VBQ0Esa0JBQUE7QXhHMHViSjtBd0d6dWJJO0VBQ0UsYUFBQTtBeEcydWJOO0F3R3p1Ykk7RUFDRSxjQUFBO0F4RzJ1Yk47O0F3R3R1YkE7RUFDRSxZQUFBO0VBQ0EsYUFBQTtFQUNBLHNCQUFBO0VBQ0EsNEJBQUE7RUFDQSxrQ0FBQTtBeEd5dWJGO0FHOWxiUTtFcUdoSlI7SUFPSSxXQUFBO0lBQ0EsWUFBQTtFeEcydWJGO0FBQ0Y7O0FHcG1iUTtFcUduSU47SUFDRSxpQkFBQTtFeEcydWJGO0FBQ0Y7QXlHN3hiQTtFQUNFLHNCQUFBO0VBRUEseUJBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0VBQ0EsY2xHdURNO0FQdXViUjtBeUd6eGJFO0VBQ0UsaUJBQUE7RUFDQSxjbEdnREk7RWtHL0NKLGdCQUFBO0VBQ0EsMEJBQUE7RUFDQSxnQkFBQTtBekcyeGJKO0F5R3p4YkU7RUFDRSxTQUFBO0F6RzJ4Yko7QXlHdnhiTTtFQUNFLHdCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGlCQUFBO0F6R3l4YlI7QXlHcnhiSTtFQUVFLDZCQUFBO0VBQ0EsU0FBQTtBekdzeGJOO0F5R3B4YlE7RUFDRSxnQkFBQTtFQUNBLDZCQUFBO0VBQ0EsY2xHc0JGO0VrR3JCRSxtQkFBQTtBekdzeGJWO0F5R2p4YkU7RUFDRSxTQUFBO0F6R214Yko7QXlHaHhiSTtFQUNFLHlCOUJ6QkU7QTNFMnliUjtBeUdoeGJJO0VBQ0UsNkJBQUE7QXpHa3hiTjtBeUcvd2JFO0VBQ0UsNkJBQUE7QXpHaXhiSjtBeUcvd2JFO0VBQ0UsaUM5QmJjO0U4QmNkLGVBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxzQkFBQTtBekdpeGJKO0F5Rzl3YkU7RUFDRSxTQUFBO0F6R2d4Yko7QXlHN3diTTtFQUNFLDBCQUFBO0F6Ryt3YlI7O0F5R3p3YkU7RUFDRSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxrQkFBQTtBekc0d2JKO0F5RzN3Ykk7RUFDRSxlQUFBO0VBQ0EsaUM5QnRDWTtFOEJ1Q1osZ0JBQUE7RUFDQSxjbEcxQkU7RWtHMkJGLFVBQUE7RUFDQSxrQkFBQTtBekc2d2JOO0F5RzN3Ykk7RUFDRSxnQ0FBQTtBekc2d2JOO0F5RzV3Yk07RUFDRSxjOUJuREY7RThCb0RFLDZCQUFBO0F6Rzh3YlI7QXlHMXdiRTtFQUNFLGNBQUE7QXpHNHdiSjs7QXlHeHdiRTtFQUNFLGdCQUFBO0F6RzJ3Yko7O0F5R3Z3YkU7RUFDRSxpQkFBQTtFQUNBLGNBQUE7RUFDQSxlQUFBO0VBQ0EseUI5QmxHRztFOEJtR0gseUJsR3BESTtFa0dxREosZ0JBQUE7RUFDQSxjbEd2REk7RWtHd0RKLGlCQUFBO0F6RzB3Yko7QXlHendiSTtFQUNFLGdCQUFBO0F6RzJ3Yk47QXlHeHdiRTtFQUNFLGNBQUE7RUFDQSxTQUFBO0F6RzB3Yko7QUdudGJRO0VzR3pETjtJQUlJLGtCQUFBO0V6RzR3Yko7QUFDRjs7QXlHeHdiQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUNuSUE7RUFDRSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0NBQUE7QTFHeTdiRjtBR3p3YlE7RXVHbkxSO0lBS0ksbUJBQUE7RTFHMjdiRjtBQUNGO0EwRzE3YkU7RUFDRSxrQkFBQTtBMUc0N2JKO0EwRzE3YkU7RUFDRSxnQkFBQTtBMUc0N2JKO0EwRzE3YkU7RUFDRSxpQy9CaUNjO0UrQmhDZCx5QkFBQTtFQUNBLGNuRzZDSTtBUCs0YlI7QTBHMzdiSTtFQUNFLGdCQUFBO0VBQ0EsY25HMENFO0VtR3pDRixlQUFBO0ExRzY3Yk47QTBHMzdiSTtFQUNFLGdCQUFBO0VBQ0Esa0JBQUE7QTFHNjdiTjtBMEcxN2JFO0VBQ0UsbUJBQUE7QTFHNDdiSjtBMEd6N2JJO0VBQ0UscUJBQUE7RUFDQSxvQkFBQTtFQUNBLGVBQUE7RUFDQSxtQkFBQTtFQUVBLHlCL0JMRztBM0UrN2JUO0EwR3g3Yk07RUFDRSx5Qi9CUkM7QTNFazhiVDtBMEd2N2JNO0VBQ0UseUIvQjdCRDtBM0VzOWJQO0EwR3Y3Yk07RUFDRSx5Qi9COUJEO0UrQitCQyxrQkFBQTtFQUNBLGlCQUFBO0VBQ0Esc0JBQUE7QTFHeTdiUjtBMEd4N2JRO0VBQ0UsY25HU0Y7RW1HUkUseUJBQUE7RUFDQSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxpQkFBQTtBMUcwN2JWO0EwR3g3YlE7RUFDRSx5Qm5HTkY7QVBnOGJSO0EwR3o3YlU7RUFDRSxVQUFBO0ExRzI3Ylo7QTBHejdiVTtFQUNFLGFBQUE7QTFHMjdiWjtBMEd2N2JNO0VBQ0UsZUFBQTtBMUd5N2JSO0EwR3g3YlE7RUFDRSxXQUFBO0ExRzA3YlY7O0EyR3pnY0U7RUFDRSx5QnBHNERJO0FQZzliUjtBMkczZ2NJO0VBQ0UsZ0JBQUE7QTNHNmdjTjtBRzkxYlE7RXdHaExKO0lBR0ksaUJBQUE7RTNHK2djTjtBQUNGO0EyRzdnY0k7RUFDRSxnQkFBQTtFQUNBLGNwR21ERTtBUDQ5YlI7QTJHN2djSTtFQUNFLFdBQUE7QTNHK2djTjtBMkc3Z2NJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0EzRytnY047QTJHN2djSTtFQUNFLHlCQUFBO0EzRytnY047QTJHemdjTTtFQUNFLDJCQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7QTNHMmdjUjtBMkd4Z2NJO0VBQ0UsZ0JBQUE7RUFDQSxtQkFBQTtBM0cwZ2NOO0EyR3pnY007RUFDRSxnQkFBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUNBLGlCQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSx5QnBHYUE7QVA4L2JSO0EyRzFnY1E7RUFDRSx5QmhDMUNIO0VnQzJDRyxxQmhDM0NIO0EzRXVqY1A7O0E0Ry9qY0E7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHFCQUFBO01BQUEsa0JBQUE7VUFBQSx5QkFBQTtBNUdra2NGO0E0R2prY0U7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0E1R21rY0o7QTRHbGtjSTtFQUNFLHFCckdzREU7QVA4Z2NSO0E0R2xrY0k7RUFDRSxZQUFBO0VBQ0Esb0JBQUE7QTVHb2tjTjtBNEdqa2NFO0VBQ0UseUJBQUE7QTVHbWtjSjs7QTZHemtjRTtFQUNFLGdCQUFBO0E3RzRrY0o7QTZHMWtjRTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLHlCQUFBO0VBQ0Esb0JBQUE7QTdHNGtjSjtBNkcxa2NFO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtFQUNBLGNBQUE7QTdHNGtjSjtBNkd6a2NFO0VBQ0UsaUJBQUE7RUFDQSxzQkFBQTtBN0cya2NKO0E2R3prY0U7RUFDRSxrQkFBQTtFQUNBLGN0RzhCSTtFc0c3Qkosc0JBQUE7RUFDQSx5QkFBQTtBN0cya2NKO0E2R3prY0U7RUFDRSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EsaUJBQUE7RUFDQSx5QkFBQTtBN0cya2NKO0E2R3prY0U7RUFDRSxrQkFBQTtFQUNBLGNsQ25DRztFa0NvQ0gsa0JBQUE7QTdHMmtjSjtBNkdwa2NJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNsQ2xEQztFa0NtREQseUJBQUE7RUFDQSxtQkFBQTtBN0dza2NOO0E2R25rY0U7RUFDRSxjbENqQkU7QTNFc2xjTjtBNkdua2NFO0VBQ0UsVUFBQTtFQUNBLHlCbENqREc7RWtDa0RILFlBQUE7RUFDQSxvQkFBQTtFQUNBLHFCQUFBO0E3R3FrY0o7QUdyOWJRO0UwR3JITjtJQU9JLGFBQUE7RTdHdWtjSjtBQUNGO0E2R2hrY0k7RUFDRSxjbENuQ0E7RWtDb0NBLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtBN0dra2NOO0E2Ry9qY0U7RUFDRSxpQkFBQTtFQUNBLHNCQUFBO0VBQ0EsY3RHMUJJO0VzRzJCSix5QkFBQTtBN0dpa2NKO0E2R2hrY0k7RUFDRSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZ0JBQUE7QTdHa2tjTjtBNkdoa2NNO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtBN0dra2NSO0E2R2prY1E7RUFDRSxXQUFBO0VBQ0EsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFFBQUE7RUFFQSxnQ0FBQTtFQUNBLCtCQUFBO0VBQ0EsdUJBQUE7QTdHa2tjVjtBNkc1amNFO0VBQ0UsYUFBQTtBN0c4amNKOztBOEdqcmNFO0VBQ0UsY25DTUc7RW1DTEgsbUJBQUE7QTlHb3JjSjtBOEdqcmNJO0VBQ0UsbUJBQUE7QTlHbXJjTjtBOEdscmNNO0VBQ0UsZ0NBQUE7QTlHb3JjUjtBOEdscmNNO0VBQ0Usd0NBQUE7RUFDQSxhQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0E5R29yY1I7QThHbHJjTTtFQUNFLGN2R3dDQTtFdUd2Q0EsZ0JBQUE7QTlHb3JjUjtBOEdqcmNRO0VBQ0Usc0JBQUE7RUFDQSxtQkFBQTtFQUNBLGdDQUFBO0E5R21yY1Y7QThHanJjUTtFQUNFLFdBQUE7RUFDQSxtQkFBQTtBOUdtcmNWO0E4RzVxY0k7RUFDRSxnQkFBQTtBOUc4cWNOO0E4RzdxY007RUFFRSxnQkFBQTtFQUVBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLGtCQUFBO0E5RzZxY1I7QThHM3FjUTtFQUNFLGdCQUFBO0E5RzZxY1Y7QThHeHFjUTtFQUNFLHVCQUFBO0VBQ0EsY25DckRIO0VtQ3NERyxnQkFBQTtFQUNBLGdCQUFBO0VBRUEseUJBQUE7QTlHeXFjVjtBOEd4cWNVO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0VBQ0EsZUFBQTtBOUcwcWNaO0E4R3hxY1k7RUFDRSx5Qm5DckRQO0EzRSt0Y1A7QThHenFjYztFQUNFLDBCQUFBO0E5RzJxY2hCO0E4R3RxY1k7RUFDRSx5Qm5DakNSO0VtQ2tDUSxjdkdmTjtBUHVyY1I7QThHcHFjUTtFQUNFLGNBQUE7QTlHc3FjVjtBOEdwcWNRO0VBQ0UsZ0JBQUE7QTlHc3FjVjtBOEdwcWNRO0VBQ0UsMEJBQUE7RUFDQSxxQkFBQTtBOUdzcWNWO0E4R3BxY1E7RUFDRSx5Qm5DeEZIO0VtQ3lGRyxjdkcvQkY7RXVHZ0NFLGtCQUFBO0VBQ0EsbUJBQUE7RUFDQSxxQkFBQTtFQUNBLHlCQUFBO0VBQ0EsZUFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0E5R3NxY1Y7QUd4bGNRO0UyR3hGQTtJQVlJLGdCQUFBO0U5R3dxY1Y7QUFDRjtBOEd2cWNVO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtBOUd5cWNaO0E4RzlwY0k7RUFDRSxnQkFBQTtBOUdncWNOO0E4Ry9wY007RUFDRSx5QkFBQTtBOUdpcWNSO0E4Ry9wY007RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLHNCQUFBO01BQUEsbUJBQUE7VUFBQSxxQkFBQTtFQUNBLG1CQUFBO0E5R2lxY1I7QThHL3BjVTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtFQUNBLGFBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7QTlHaXFjWjtBOEc5cGNRO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EseUJBQUE7RUFDQSxjdkdqRkY7RXVHa0ZFLGlCQUFBO0E5R2dxY1Y7QThHNXBjUTtFQUNFLFdBQUE7RUFDQSx5Qm5DMUdKO0VtQzJHSSxzQkFBQTtFQUNBLGFBQUE7RUFDQSxpQkFBQTtBOUc4cGNWO0E4RzdwY1U7RUFDRSx5QnZHN0ZKO0FQNHZjUjs7QStHeHpjQTtFQUNFLHdDQUFBO0VBQUEsZ0NBQUE7QS9HMnpjRjtBK0cxemNFO0VBQ0UseUJ4R3lESTtFd0d0REosZUFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsT0FBQTtFQUNBLFVBQUE7QS9HMHpjSjtBK0d2emNFO0VBQ0UseUJ4RzhDSTtBUDJ3Y1I7QStHeHpjSTtFQUNFLGN4RzZDRTtBUDZ3Y1I7QStHdnpjRTtFQUNFLDZCQUFBO0VBQ0EsaUJBQUE7RUFDQSxvQkFBQTtBL0d5emNKO0ErR3Z6Y0k7RUFDRSxnQkFBQTtBL0d5emNOO0FHaHFjUTtFNEcxSko7SUFHSSxrQkFBQTtJQUNBLG1CQUFBO0UvRzJ6Y047QUFDRjtBR3RxY1E7RTRHMUpKO0lBT0ksbUJBQUE7SUFDQSxrQkFBQTtFL0c2emNOO0FBQ0Y7QStHenpjSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0EvRzJ6Y047QStHenpjUTtFQUNFLGtCQUFBO0EvRzJ6Y1Y7QStHeHpjTTtFQUNFLFlBQUE7RUFDQSw2QkFBQTtFQUNBLGVBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0VBQ0EsY3hHVUE7QVBnemNSO0ErR3Z6Y1E7RUFDRSxpQkFBQTtBL0d5emNWO0ErR3B6Y0k7RUFDRSxpQkFBQTtBL0dzemNOO0ErR3J6Y007RUFDRSx5QnBDNUREO0VvQzZEQyxxQnBDN0REO0VvQzhEQyxnQkFBQTtFQUNBLGdCQUFBO0EvR3V6Y1I7QStHdHpjUTtFQUNFLHlCcEN0REg7QTNFODJjUDtBK0dsemNFO0VBQ0U7Ozs7Ozs7Ozs7TUFBQTtFQVdFLGtCQUFBO0VBQ0EsVUFBQTtBL0dvemNOO0ErR256Y007RUFDRSxtQkFBQTtFQUNBLGtCQUFBO0VBQ0EsdUJBQUE7RUFDQSxhQUFBO0VBQ0Esd0JBQUEsRUFBQSwwQkFBQTtFQUNBLHFCQUFBLEVBQUEsWUFBQTtBL0dxemNSO0ErR3B6Y1E7RUFDRSxhQUFBLEVBQUEsc0JBQUE7QS9Hc3pjVjtBK0duemNNO0VBQ0UscUJBQUE7RUFDQSxzQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLG1CQUFBO0EvR3F6Y1I7QStHbnpjTTtFQUNFLGN4R2hEQTtFd0dpREEsZ0JBQUE7RUFDQSx1QkFBQTtBL0dxemNSO0ErR3B6Y1E7RUFDRSxnQkFBQTtFQUNBLHlCcENoRkQ7RW9DaUZDLGdCQUFBO0EvR3N6Y1Y7QUd0dmNRO0U0R25FQTtJQUtJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0UvR3d6Y1Y7QUFDRjtBRzV2Y1E7RTRHM0RFO0lBRUksVUFBQTtFL0d5emNaO0FBQ0Y7QStHdnpjVTtFQUNFLG1CQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLGFBQUE7QS9HeXpjWjtBR3R3Y1E7RTRHdERFO0lBS0ksV0FBQTtFL0cyemNaO0FBQ0Y7QStHeHpjWTtFQUNFLDhCQUFBO0VBRUEsc0JBQUE7QS9HMHpjZDtBK0dyemNNO0VBQ0UseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0EvR3V6Y1I7QUdyeGNRO0U0R3JDRjtJQU1JLGtCQUFBO0lBQ0EscUJBQUE7RS9Hd3pjUjtBQUNGO0ErR3Z6Y1E7RUFDRSxpQ3BDekdRO0VvQzBHUixnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0EvR3l6Y1Y7QUdqeWNRO0U0RzVCQTtJQU1JLGtCQUFBO0UvRzJ6Y1Y7QUFDRjtBK0d0emNNO0VBQ0Usa0JBQUE7RUFDQSxRQUFBO0VBQ0EsOEJBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QS9Hd3pjUjtBK0d2emNRO0VBQ0UsVUFBQTtBL0d5emNWO0ErR3Z6Y1E7RUFDRSxXQUFBO0EvR3l6Y1Y7QStHbnpjRTtFQUNFLGtCQUFBO0VBQ0EsVUFBQTtFQUNBLG9DQUFBO0VBQ0EsMEJBQUE7RUFDQSxhQUFBO0VBQ0EsV0FBQTtBL0dxemNKOztBZ0hoL2NFO0VBQ0Usa0JBQUE7RUFDQSxjckN1Q0U7RXFDdENGLHlCQUFBO0VBQ0EsZ0JBQUE7QWhIbS9jSjtBZ0hoL2NFO0VBQ0UsZ0NBQUE7RUFDQSxtQkFBQTtBaEhrL2NKO0FnSGgvY0U7RUFDRSxtQkFBQTtBaEhrL2NKO0FnSGgvY0U7RUFDRSxjckMwQkU7RXFDekJGLGdCQUFBO0FoSGsvY0o7QUdqMWNRO0U2Ry9KTjtJQUVJLGFBQUE7SUFDQSw2QkFBQTtFaEhrL2NKO0FBQ0Y7QWdIOStjSTtFQUNFLHlCckNjQTtFcUNiQSxtQkFBQTtBaEhnL2NOO0FHMzFjUTtFNkd2Sko7SUFJSSxtQkFBQTtFaEhrL2NOO0FBQ0Y7QWdIai9jTTtFQUNFLHlCckMzQkQ7QTNFOGdkUDtBZ0g3K2NFO0VBQ0Usb0JBQUE7QWhIKytjSjtBZ0g3K2NJO0VBQ0UseUJBQUE7RUFDQSxpQkFBQTtFQUNBLGtCQUFBO0FoSCsrY047QWdINytjSTtFQUNFLGdCQUFBO0VBQ0EsU0FBQTtBaEgrK2NOO0FnSDcrY0k7RUFDRSxnQkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBaEgrK2NOO0FnSDcrY0k7RUFDRSxzQkFBQTtBaEgrK2NOO0FnSDcrY0k7RUFDRSxjQUFBO0FoSCsrY047QWdINytjSTtFQUNFLGdCQUFBO0VBQ0Esb0JBQUE7QWhIKytjTjtBZ0g5K2NNO0VBQ0Usb0JBQUE7QWhIZy9jUjtBZ0g5K2NNO0VBQ0UscUJBQUE7QWhIZy9jUjtBZ0g5K2NNO0VBQ0UsY3pHWkE7RXlHYUEseUJyQ2hDRjtFcUNpQ0UsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EsY0FBQTtBaEhnL2NSO0FnSC8rY1E7RUFDRSx5QnJDekVIO0EzRTBqZFA7QWdILytjUTtFQUNFLG9CQUFBO0FoSGkvY1Y7QWdILytjUTtFQUNFLGNBQUE7RUFDQSxrQkFBQTtBaEhpL2NWO0FnSDkrY007RUFDRSxlQUFBO0VBQ0EscUNBQUE7RUFBQSw2QkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7QWhIZy9jUjtBZ0gvK2NRO0VBQ0UseUJyQ3RESjtFcUN1REksWUFBQTtBaEhpL2NWO0FnSGgvY1U7RUFDRSxjekd0Q0o7QVB3aGRSO0FnSDkrY007RUFDRSxvQkFBQTtFQUNBLGdDQUFBO0FoSGcvY1I7QWdILytjUTtFQUNFLGNyQ2pFSjtFcUNrRUksZ0JBQUE7RUFDQSw2QkFBQTtFQUNBLDBCQUFBO0VBQ0EsVUFBQTtBaEhpL2NWO0FnSGgvY1U7RUFDRSxjckMxR0w7QTNFNGxkUDtBZ0g3K2NJO0VBQ0UsY3JDN0VBO0VxQzhFQSxnQkFBQTtBaEgrK2NOO0FnSDcrY0k7RUFDRSxjQUFBO0VBQ0EsZ0NBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0FoSCsrY047QWdIOStjTTtFQUNFLGVBQUE7RUFDQSxnQkFBQTtBaEhnL2NSO0FnSDkrY007RUFDRSx5QnJDNUVDO0EzRTRqZFQ7QWdINytjSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0FoSCsrY047QUd2OGNRO0U2RzNDSjtJQUtJLG9CQUFBO0VoSGkvY047QUFDRjtBRzU4Y1E7RTZHM0NKO0lBUUksZ0NBQUE7SUFDQSx1QkFBQTtRQUFBLG9CQUFBO1lBQUEsMkJBQUE7SUFDQSxtQkFBQTtJQUNBLGNBQUE7RWhIbS9jTjtBQUNGO0FnSGwvY007RUFDRSxnQkFBQTtBaEhvL2NSO0FnSGwvY007RUFDRSxvQkFBQTtBaEhvL2NSO0FHMTljUTtFNkczQkY7SUFHSSxrQkFBQTtFaEhzL2NSO0FBQ0Y7QWdIcC9jTTtFQUNFLFdBQUE7QWhIcy9jUjtBR2wrY1E7RTZHckJGO0lBR0ksaUJBQUE7RWhIdy9jUjtBQUNGO0FnSHQvY007RUFDRSxjckMxSEY7RXFDMkhFLGdCQUFBO0FoSHcvY1I7QUczK2NRO0U2R2ZGO0lBSUksa0JBQUE7SUFDQSx5QkFBQTtJQUNBLG1CQUFBO0VoSDAvY1I7QUFDRjs7QUdsL2NRO0U2R0VGO0lBQ0UsU0FBQTtJQUNBLGdCQUFBO0VoSG8vY047RWdIai9jRTtJQUNFLHlCQUFBO0VoSG0vY0o7QUFDRjtBZ0h6K2NJO0VBQ0UsK0JyQ3ZKZTtFcUN3SmYseUJBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7QWhIMitjTjs7QWdIcitjRTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0FoSHcrY0o7QWdIdCtjSTtFQUNFLGlCQUFBO0VBQ0EsY3pHMUpFO0V5RzJKRix5QkFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjQUFBO0FoSHcrY047QWdIcitjSTtFQUNFLHFCQUFBO0FoSHUrY047QUduaGRRO0U2R3FESjtJQUVJLGlCQUFBO0lBQ0Esb0JBQUE7RWhIZytjTjtBQUNGO0FHemhkUTtFNkcyREo7SUFFSSx5QkFBQTtRQUFBLHNCQUFBO1lBQUEsOEJBQUE7RWhIZytjTjtBQUNGO0FnSDc5Y0k7RUFDRSxtQkFBQTtNQUFBLG9CQUFBO1VBQUEsWUFBQTtFQUNBLFdBQUE7QWhIKzljTjtBR2xpZFE7RTZHaUVKO0lBSUksY0FBQTtJQUNBLFdBQUE7RWhIaStjTjtBQUNGO0FnSGgrY007RUFDRSxnQkFBQTtFQUNBLHFCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLGlCQUFBO0FoSGsrY1I7QWdIaCtjTTtFQUNFLGdCQUFBO0VBQ0EseUJyQ3pORjtFcUMwTkUsY3pHdk1BO0V5R3dNQSx3QkFBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLGVBQUE7QWhIaytjUjtBZ0g5OWNFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLDZCQUFBO01BQUEsMEJBQUE7VUFBQSxzQkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBaEhnK2NKO0FHOWpkUTtFNkcyRk47SUFLSSw4QkFBQTtJQUFBLDZCQUFBO1FBQUEsdUJBQUE7WUFBQSxtQkFBQTtFaEhrK2NKO0FBQ0Y7O0FnSHg5Y0k7RUFDRSxtQkFBQTtBaEgyOWNOO0FnSHo5Y0k7RUFDRSx5QnJDdlBBO0VxQ3dQQSxZQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7QWhIMjljTjtBZ0gxOWNNO0VBQ0UsY3pHMU9BO0FQc3NkUjtBZ0h6OWNJO0VBQ0UsYUFBQTtFQUNBLHlCQUFBO0VBQ0EsYUFBQTtBaEgyOWNOO0FnSDE5Y007RUFDRSxxQnJDalNEO0EzRTZ2ZFA7QWdIMTljTTtFQUNFLGdCQUFBO0FoSDQ5Y1I7QWdIcjljSTtFQUNFLFdBQUE7RUFDQSw2QkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJBQUE7QWhIdTljTjtBZ0h0OWNNO0VBQ0UsNkJBQUE7RUFDQSxTQUFBO0FoSHc5Y1I7QWdIdDljTTtFQUNFLFNBQUE7RUFDQSxVQUFBO0FoSHc5Y1I7QWdIbjljTTtFQUNFLHlCckNwVEE7QTNFeXdkUjtBZ0hwOWNRO0VBQ0UseUJyQ3RURjtBM0U0d2RSO0FnSHA5Y1E7RUFDRSx5QnJDelRGO0VxQzBURSxTQUFBO0FoSHM5Y1Y7QWdIcDljUTtFQUNFLHlCckM3VEY7QTNFbXhkUjtBZ0huOWNNO0VBQ0UsZ0JBQUE7QWhIcTljUjs7QWdINzhjRTtFQUNFLGdDQUFBO0VBQ0EscUJBQUE7RUFDQSxzQkFBQTtBaEhnOWNKO0FnSDk4Y0U7RUFDRSxhQUFBO0FoSGc5Y0o7O0FnSDc4Y0E7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBaEhnOWNGO0FnSC84Y0U7RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0FoSGk5Y0o7O0FnSDc4Y0E7RUFDRSxpQkFBQTtBaEhnOWNGO0FnSC84Y0U7RUFDRSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxtQkFBQTtFQUNBLGNBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtBaEhpOWNKO0FnSC84Y0U7RUFDRSxnQkFBQTtBaEhpOWNKO0FnSC84Y0U7RUFDRSxjQUFBO0FoSGk5Y0o7O0FnSDM4Y0U7RUFDRSxrQkFBQTtFQUNBLG1CQUFBO0FoSDg4Y0o7QWdINzhjSTtFQUNFLHlCQUFBO0VBQ0EsaUJBQUE7RUFDQSxzQkFBQTtFQUNBLGNyQ2pXQTtFcUNrV0EsZ0JBQUE7RUFDQSxnQkFBQTtBaEgrOGNOO0FnSDc4Y0k7RUFDRSxnQkFBQTtBaEgrOGNOO0FnSDc4Y0k7RUFDRSxnQkFBQTtFQUNBLHlCQUFBO0FoSCs4Y047QWdINThjTTtFQUNFLGNyQy9ZRDtBM0U2MWRQO0FnSDc4Y1E7RUFDRSxjckNoWEo7QTNFK3pkTjtBZ0gzOGNJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QWhINjhjTjtBZ0gzOGNJO0VBQ0UseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY3JDbmFDO0EzRWczZFA7QWdINThjTTtFQUNFLGNyQy9YRjtBM0U2MGROO0FnSDM4Y0k7RUFDRSxpQkFBQTtFQUNBLGFBQUE7QWhINjhjTjtBZ0g1OGNNO0VBQ0UseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsbUJBQUE7RUFDQSxjQUFBO0FoSDg4Y1I7QWdINThjTTtFQUNFLGdCQUFBO0FoSDg4Y1I7QWdINThjTTtFQUNFLGNBQUE7QWhIODhjUjtBZ0h0OGNNO0VBQ0UsZ0NBQUE7RUFDQSxzQkFBQTtFQUNBLHFCQUFBO0FoSHc4Y1I7QWdIcDhjSTtFQUVFLG1CQUFBO0FoSHE4Y047QUc1dGRRO0U2R3FSSjtJQUlJLGdDQUFBO0VoSHU4Y047QUFDRjtBZ0h0OGNNO0VBQ0UseUJyQ2hjRDtFcUNpY0MsY3pHblpBO0V5R29aQSxrQkFBQTtFQUNBLHVCQUFBO0VBQ0EsZ0JBQUE7QWhIdzhjUjtBZ0h2OGNRO0VBQ0UsY3JDMWFKO0VxQzJhSSx3Q0FBQTtFQUFBLGdDQUFBO0VBQ0Esa0JBQUE7QWhIeThjVjtBZ0h2OGNRO0VBQ0UseUJyQy9hSjtFcUNnYkksY3pHN1pGO0FQczJkUjtBZ0h4OGNVO0VBQ0UsY3pHL1pKO0FQeTJkUjtBZ0h2OGNRO0VBQ0Usb0JBQUE7RUFDQSx5QnJDdGRIO0EzRSs1ZFA7QWdIeDhjVTtFQUNFLGNyQzVkTDtBM0VzNmRQO0FnSHI4Y1E7RUFDRSxxQkFBQTtFQUNBLHFCQUFBO0VBQ0Esa0JBQUE7QWhIdThjVjtBZ0hwOGNNO0VBQ0UsbUJBQUE7QWhIczhjUjtBR253ZFE7RTZHNFRGO0lBR0ksZ0NBQUE7SUFDQSxzQkFBQTtJQUNBLHFCQUFBO0VoSHc4Y1I7QUFDRjtBZ0h2OGNRO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLGNyQ3BmSDtFcUNxZkcseUJBQUE7RUFDQSxZQUFBO0VBQ0EsNkJBQUE7RUFDQSxVQUFBO0FoSHk4Y1Y7QWdIeDhjVTtFQUNFLFlBQUE7RUFDQSw2QkFBQTtFQUNBLGN6R3BjSjtBUDg0ZFI7QWdIdDhjTTtFQUNFLG1CQUFBO0FoSHc4Y1I7QWdIdjhjUTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0EsV0FBQTtFQUNBLGN6Ry9jRjtBUHc1ZFI7QWdIcDhjTTtFQUNFLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLHNCQUFBO0FoSHM4Y1I7O0FpSHo5ZEE7RUFDRTs7Ozs7OztJQUFBO0FqSG0rZEY7QWlIMTlkRTtFQUNFLGVBQUE7RUFDQSx5QkFBQTtFQUNBLHNCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxxQkFBQTtFQUNBLGdCQUFBO0FqSDQ5ZEo7QWlIejlkRTtFQUNFLGdDdENpQ21CO0EzRTA3ZHZCO0FpSHg5ZEU7RUFDRSxjMUdvQ0k7RTBHbkNKLG1CQUFBO0VBQ0Esa0JBQUE7QWpIMDlkSjtBR2wwZFE7RThHM0pOO0lBS0ksZUFBQTtFakg0OWRKO0FBQ0Y7QWlIMzlkSTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLHNCQUFBO0VBQ0EsbUJBQUE7QWpINjlkTjtBaUgxOWRVO0VBQ0UsWUFBQTtBakg0OWRaO0FpSDE5ZFU7RUFDRSxXQUFBO0FqSDQ5ZFo7QWlIdjlkSTtFQUNFLHFCQUFBO0VBQ0EsZ0JBQUE7QWpIeTlkTjtBaUh4OWRNO0VBQ0UsYzFHU0E7RTBHUkEsZ0JBQUE7QWpIMDlkUjtBaUh4OWRNO0VBQ0UsY3RDYkY7QTNFdStkTjtBaUh2OWRRO0VBQ0UsY3RDakJKO0VzQ2tCSSx5QkFBQTtFQUNBLGdCQUFBO0FqSHk5ZFY7QWlIdjlkUTtFQUNFLGN0Q3RCSjtFc0N1QkksZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLG1CQUFBO0FqSHk5ZFY7QWlIcjlkTTtFQUNFLDRCQUFBO0VBQUEsNkJBQUE7TUFBQSwwQkFBQTtVQUFBLHNCQUFBO0FqSHU5ZFI7QWlIdDlkUTtFQUNFLFdBQUE7QWpIdzlkVjtBaUhwOWRJO0VBQ0UsY3RDdEJHO0VzQ3VCSCx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7QWpIczlkTjtBaUhsOWRFO0VBQ0UseUJ0Q2xFSTtFc0NtRUosYUFBQTtFQUNBLHFCQUFBO0VBQ0EsYzFHOUJJO0UwRytCSixtQkFBQTtBakhvOWRKO0FpSG45ZEk7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7QWpIcTlkTjtBaUhwOWRNO0VBQ0UsY3RDdkRGO0VzQ3dERSxrQkFBQTtBakhzOWRSO0FpSG45ZEk7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsdUJBQUE7QWpIcTlkTjtBaUhwOWRNO0VBQ0UseUJBQUE7QWpIczlkUjtBaUhuOWRJO0VBQ0UsZ0JBQUE7RUFDQSw2QkFBQTtBakhxOWROO0FpSG45ZEk7RUFDRSxjdEN4RUE7QTNFNmhlTjtBaUhoOWRFO0VBQ0UsbUJBQUE7RUFDQSwwQkFBQTtFQUNBLGMxRzlESTtFMEcrREosa0JBQUE7RUFDQSxnQkFBQTtBakhrOWRKO0FpSC84ZEU7RUFDRSxtQkFBQTtBakhpOWRKO0FpSGg5ZEk7RUFDRSxrQkFBQTtBakhrOWROO0FpSGg5ZEk7RUFDRSxnQ3RDaEZpQjtFc0NpRmpCLGtCQUFBO0VBQ0EsY3RDN0ZBO0VzQzhGQSwwQkFBQTtFQUNBLGdCQUFBO0FqSGs5ZE47QWlINzhkSTtFQUNFLHlCdENyR0E7RXNDc0dBLHFCQUFBO0VBQ0EsbUJBQUE7RUFDQSxXQUFBO0VBQ0Esc0JBQUE7RUFDQSxrQkFBQTtBakgrOGROO0FpSDk4ZE07RUFDRSx5QnRDeElEO0EzRXdsZVA7QWlIOThkTTtFQUNFLHlCdEM5SUQ7QTNFOGxlUDtBaUgvOGRRO0VBQ0UseUJ0QzdJSDtBM0U4bGVQO0FpSDk4ZE07RUFDRSx5QjFHbkdBO0FQbWplUjtBaUg3OGRJO0VBQ0UsbUJBQUE7QWpIKzhkTjtBaUg3OGRJO0VBQ0UseUJBQUE7RUFDQSxxQkFBQTtBakgrOGROO0FpSDk4ZE07RUFDRSxnQkFBQTtBakhnOWRSO0FpSC84ZFE7RUFDRSx5QnRDaEtIO0EzRWluZVA7QWlINzhkUTtFQUNFLHlCdEN0SUo7QTNFcWxlTjtBaUgzOGRNO0VBQ0UsZ0N0Q2hJZTtFc0NpSWYsY3RDbkxEO0VzQ29MQyxnQkFBQTtFQUNBLGVBQUE7RUFDQSx1QkFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtVQUFBLDJCQUFBO0FqSDY4ZFI7QWlIMThkTTtFQUNFLG9CQUFBO0VBQ0EsV0FBQTtFQUNBLFlBQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLG1CQUFBO0VBQ0EseUJ0QzdKRjtFc0M4SkUsc0JBQUE7RUFDQSxjMUc1SUE7RTBHNklBLGlCQUFBO0FqSDQ4ZFI7QWlIMThkTTtFQUNFLDBCQUFBO0VBQ0Esa0JBQUE7QWpINDhkUjtBR3grZFE7RThHMEJGO0lBSUksZUFBQTtFakg4OGRSO0FBQ0Y7QWlIMThkRTtFQUNFLGdDdENqS21CO0VzQ2tLbkIsYUFBQTtFQUNBLHlCdEN2TUk7RXNDd01KLHFCQUFBO0FqSDQ4ZEo7QWlIMzhkSTtFQUNFLGdCQUFBO0FqSDY4ZE47QWlIMzhkSTtFQUNFLHdDQUFBO0FqSDY4ZE47O0FpSC83ZEU7RUFDRSxnQkFBQTtBakhrOGRKO0FHNy9kUTtFOEc2RE47SUFFSSxrQkFBQTtFakhrOGRKO0VpSGo4ZEk7SUFDRSxnQkFBQTtFakhtOGROO0FBQ0Y7QWlIaDhkRTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx5QkFBQTtFQUNBLHNCQUFBO0FqSGs4ZEo7QUczZ2VRO0U4R3FFTjtJQU1JLGtCQUFBO0lBQ0EsaUJBQUE7SUFDQSxlQUFBO0VqSG84ZEo7QUFDRjtBaUhuOGRJO0VBQ0UsZ0JBQUE7QWpIcThkTjs7QWlILzdkRTtFQUNFLGdCQUFBO0VBQ0Esb0JBQUE7RUFDQSxjQUFBO0VBQ0EsYzFHaE5JO0FQa3BlUjs7QWlIMzdkRTtFQUNFLGdCQUFBO0FqSDg3ZEo7O0FpSHg3ZEE7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtBakgyN2RGO0FpSDE3ZEU7RUFDRSxvQkFBQTtBakg0N2RKO0FpSDE3ZEU7RUFDRSxnQkFBQTtBakg0N2RKOztBaUhwN2RFO0VBQ0UsZ0JBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0FqSHU3ZEo7QWlIdDdkSTtFQUNFLFlBQUE7QWpIdzdkTjtBaUhyN2RFO0VBQ0UseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGN0Qy9TRztFc0NnVEgsc0JBQUE7QWpIdTdkSjtBaUhyN2RFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7QWpIdTdkSjtBaUhyN2RFO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0FqSHU3ZEo7O0FpSGg3ZEU7RUFDRSw2QkFBQTtFQUNBLGtCQUFBO0VBQ0EsbUJBQUE7QWpIbTdkSjtBaUhqN2RFO0VBQ0UseUJBQUE7RUFDQSxnQkFBQTtFQUNBLGN0Q3ZVRztFc0N3VUgsc0JBQUE7QWpIbTdkSjtBaUhqN2RFO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7QWpIbTdkSjtBaUhsN2RJO0VBQ0UsV0FBQTtFQUNBLGNBQUE7QWpIbzdkTjtBaUhsN2RJO0VBQ0UsY0FBQTtFQUNBLHlCQUFBO0VBQ0Esa0JBQUE7QWpIbzdkTjtBaUhsN2RRO0VBQ0Usa0NBQUE7QWpIbzdkVjtBaUhuN2RVO0VBQ0UsVUFBQTtBakhxN2RaO0FpSGg3ZEk7RUFDRSxrQkFBQTtFQUNBLE1BQUE7RUFDQSxRQUFBO0VBQ0EsU0FBQTtFQUNBLE9BQUE7RUFDQSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLG9DQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBakhrN2ROO0FpSGo3ZE07RUFDRSx3Q0FBQTtFQUFBLGdDQUFBO0FqSG03ZFI7O0FpSDU2ZEE7RUFDRSxtQkFBQTtBakgrNmRGOztBa0hseWVJO0VBQ0UsZ0NBQUE7RUFDQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0N2Q2dEaUI7RXVDL0NqQix1QkFBQTtBbEhxeWVOO0FrSHB5ZU07RUFDRSxjdkNMRDtFdUNNQyxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7RUFDQSxzQkFBQTtFQUNBLGdDQUFBO0VBQ0EsbUJBQUE7QWxIc3llUjtBa0hweWVNO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxpQkFBQTtFQUNBLGdCQUFBO0VBQ0EsY3ZDakJEO0V1Q2tCQyx5QkFBQTtBbEhzeWVSO0FrSHB5ZVU7RUFDRSx5QnZDTEw7QTNFMnllUDtBa0hueWVRO0VBQ0UsVUFBQTtFQUNBLGVBQUE7RUFDQSxhQUFBO0FsSHF5ZVY7QWtIcHllVTtFQUNFLGNBQUE7QWxIc3llWjtBa0hweWVVO0VBQ0UsZUFBQTtBbEhzeWVaOztBbUh6MGVFO0VBQ0Usa0JBQUE7QW5INDBlSjtBbUgxMGVJO0VBQ0UsY3hDREM7RXdDRUQseUJBQUE7RUFDQSxtQkFBQTtBbkg0MGVOO0FtSG4wZU07RUFDRSxVQUFBO0FuSHEwZVI7QW1IbjBlTTtFQUNFLFVBQUE7QW5IcTBlUjtBR3RxZVE7RWdIaEtGO0lBR0ksVUFBQTtFbkh1MGVSO0FBQ0Y7QW1IcDBlSTtFQUNFLGlCQUFBO0VBQ0Esa0JBQUE7QW5IczBlTjtBRy9xZVE7RWdIekpKO0lBSUksa0JBQUE7RW5IdzBlTjtBQUNGO0FtSHYwZU07RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLDhCQUFBO0VBQUEsNkJBQUE7TUFBQSx1QkFBQTtVQUFBLG1CQUFBO0VBQ0EsV0FBQTtBbkh5MGVSO0FtSHYwZU07RUFDRSxzQkFBQTtBbkh5MGVSO0FtSHYwZU07RUFDRSxrQkFBQTtFQUNBLHFCeEMzQkQ7RXdDNEJDLGtCQUFBO0VBQ0EsdUJBQUE7QW5IeTBlUjtBbUh4MGVRO0VBQ0UscUJ4Q2xDSDtBM0U0MmVQO0FtSHYwZU07RUFDRSxhQUFBO0FuSHkwZVI7QW1IajJlSTtFQTBCRTs7OztJQUFBO0FuSDgwZU47O0FtSG4wZUE7RUFDRSxnQkFBQTtFQUNBLGlCQUFBO0VBQ0EsZUFBQTtBbkhzMGVGO0FtSHIwZUU7RUFDRSxjQUFBO0FuSHUwZUo7O0FtSG4wZUE7RUFFRSxtQkFBQTtBbkhxMGVGO0FHNXRlUTtFZ0gzR1I7SUFJSSwyQkFBQTtFbkh1MGVGO0FBQ0Y7QW1IcjBlRTtFQUNFLGNBQUE7QW5IdTBlSjtBR3B1ZVE7RWdIL0ZGO0lBQ0Usc0JBQUE7SUFDQSxvQkFBQTtFbkhzMGVOO0FBQ0Y7QW1IbDBlSTtFQUNFLDZCQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0VBQ0EsU0FBQTtBbkhvMGVOO0FtSGgwZUk7RUFDRSxVQUFBO0FuSGswZU47QW1IaDBlSTtFQUNFLGdCQUFBO0VBQ0EsY0FBQTtFQUNBLFdBQUE7QW5IazBlTjtBbUgvemVFO0VBQ0UsZUFBQTtFQUNBLGVBQUE7QW5IaTBlSjtBbUgvemVFO0VBQ0Usd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLFlBQUE7QW5IaTBlSjtBbUhoMGVJO0VBQ0UsbUNBQUE7VUFBQSwyQkFBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7QW5IazBlTjtBbUg5emVJO0VBQ0UsUUFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxXQUFBO0VBQ0EsY0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQ0EseUJ4Q3JGQTtBM0VxNWVOO0FtSDV6ZUk7RUFDRSxVQUFBO0FuSDh6ZU47QW1INXplSTtFQUNFLFVBQUE7QW5IOHplTjs7QW1IdnplRTtFQUNFLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFdBQUE7QW5IMHplSjs7QW1IbHplQTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7QW5IcXplRjtBbUhwemVFO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtFQUNBLGtCQUFBO0VBQ0EsTUFBQTtFQUNBLFFBQUE7RUFDQSx5QkFBQTtBbkhzemVKO0FtSHB6ZUU7RUFDRSxjQUFBO0FuSHN6ZUo7QW1IcnplTTtFQUNFLDZCQUFBO0FuSHV6ZVI7QW1IeHplTTtFQUNFLDZCQUFBO0FuSHV6ZVI7O0FtSGh6ZUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBQUE7QUMvS0U7RUFDRSx5QkFBQTtBcEhnamZKO0FHaDRlUTtFaUhqTE47SUFHSSxjN0d5REU7RVB5L2VOO0FBQ0Y7QUdyNGVRO0VpSGpMTjtJQU1JLGtCQUFBO0lBQ0EsZ0JBQUE7SUFDQSxzQkFBQTtFcEhvamZKO0FBQ0Y7QUc1NGVRO0VpSHRLTjtJQUVJLDBEQUFBO0lBQ0EseUJ6Q1hDO0l5Q1lELHNCQUFBO0lBQ0EsMkJBQUE7SUFDQSxrQkFBQTtJQUNBLGlCQUFBO0lBQ0Esb0JBQUE7SUFDQSxvQkFBQTtJQUFBLG9CQUFBO0lBQUEsYUFBQTtJQUNBLHlCQUFBO1FBQUEsc0JBQUE7WUFBQSxtQkFBQTtJQUNBLHdCQUFBO1FBQUEscUJBQUE7WUFBQSx1QkFBQTtFcEhvamZKO0FBQ0Y7QUcxNWVRO0VpSHRLTjtJQWNJLGFBQUE7RXBIc2pmSjtBQUNGO0FHLzVlUTtFaUhwSk47SUFFSSxjQUFBO0VwSHFqZko7QUFDRjtBb0g5aWZNO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0FwSGdqZlI7QUduNmVRO0VpSC9JRjtJQUlJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLDhCQUFBO0VwSGtqZlI7QUFDRjtBb0hqamZRO0VBQ0UscUJBQUE7RUFDQSxzQkFBQTtBcEhtamZWO0FvSC9pZlU7RUFDRSxlQUFBO0FwSGlqZlo7QW9IaGpmWTtFQUNFLFdBQUE7QXBIa2pmZDtBR243ZVE7RWlIaElJO0lBR0ksV0FBQTtFcEhvamZkO0FBQ0Y7QW9IOWlmSTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QnpDOUNFO0V5QytDRixjekNqRUM7RXlDa0VELGdCQUFBO0VBQ0Esa0JBQUE7QXBIZ2pmTjtBR3g4ZVE7RWlIakhKO0lBV0ksV0FBQTtJQUNBLFlBQUE7SUFDQSxlQUFBO0VwSGtqZk47QUFDRjtBb0hqamZNO0VBQ0UseUJ6Q3ZDRjtFeUN3Q0UsYzdHckJBO0FQd2tmUjtBb0hqamZNO0VBQ0Usb0JBQUE7RUFDQSxhQUFBO0FwSG1qZlI7QW9IN2lmTTtFQUNFLHFCQUFBO0VBQ0Esc0JBQUE7QXBIK2lmUjtBb0g5aWZRO0VBQ0UsZUFBQTtBcEhnamZWO0FvSC9pZlU7RUFDRSx5QnpDeEROO0V5Q3lETSxjN0d0Q0o7QVB1bGZSO0FvSDlpZlE7RUFDRSxnQkFBQTtBcEhnamZWO0FvSC9pZlU7RUFDRSw2QkFBQTtFQUNBLHlCQUFBO0VBQ0EsYzdHL0NKO0U2R2dESSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0FwSGlqZlo7QW9IaGpmWTtFQUNFLFVBQUE7QXBIa2pmZDtBb0g3aWZNO0VBQ0UsV0FBQTtFQUNBLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxpQkFBQTtFQUNBLGVBQUE7QXBIK2lmUjtBb0g3aWZNO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QXBIK2lmUjtBb0h6aWZFO0VBQ0UsbUJBQUE7QXBIMmlmSjtBRy8vZVE7RWlIN0NOO0lBR0ksbUJBQUE7RXBINmlmSjtBQUNGO0FvSDNpZkk7RUFDRSxrQkFBQTtBcEg2aWZOO0FvSDNpZlE7RUFDRSwrQkFBQTtVQUFBLHVCQUFBO0FwSDZpZlY7QW9IeGlmSTtFQUNFLDhGQUFBO0VBQ0Esa0JBQUE7RUFDQSxNQUFBO0VBQ0EsT0FBQTtFQUNBLFlBQUE7RUFDQSxhQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0VBQ0EsbUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0EsYzdHbkdFO0U2R29HRixnQkFBQTtFQUNBLGlCQUFBO0FwSDBpZk47QW9IdmlmSTtFQUNFLGdCQUFBO0VBQ0EsYzdHM0dFO0FQb3BmUjtBb0h0aWZJO0VBQ0UseUJ6Q2xKRTtFeUNtSkYsbUJBQUE7RUFDQSxrQkFBQTtBcEh3aWZOO0FvSHJpZkk7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHdCQUFBO01BQUEscUJBQUE7VUFBQSx1QkFBQTtFQUNBLHFCQUFBO0FwSHVpZk47QW9IdGlmTTtFQUNFLHFCQUFBO0FwSHdpZlI7QW9IdGlmTTtFQUNFLFdBQUE7RUFDQSxZQUFBO0VBQ0EseUJ6Q2hKRjtFeUNpSkUsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGM3R2hJQTtFNkdpSUEscUJBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY0FBQTtBcEh3aWZSO0FvSHRpZk07RUFDRSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSx5QkFBQTtFQUNBLGlCQUFBO0FwSHdpZlI7QW9IcmlmSTtFQUNFLGdDekN2SmlCO0EzRThyZnZCO0FvSHJpZkk7RUFDRSxrQkFBQTtFQUNBLHlCQUFBO0FwSHVpZk47QW9IdGlmTTtFQUNFLGN6Q3ZNRDtBM0UrdWZQO0FvSHBpZkk7RUFDRSxnQkFBQTtFQUNBLGM3RzVKRTtFNkc2SkYseUJBQUE7QXBIc2lmTjtBb0hyaWZNO0VBQ0UsZ0JBQUE7RUFDQSxrQkFBQTtBcEh1aWZSO0FvSHJpZk07RUFDRSxrQkFBQTtFQUNBLGdCQUFBO0FwSHVpZlI7QW9IcGlmUTtFQUNFLGdCQUFBO0FwSHNpZlY7QW9IcGlmUTtFQUNFLDZCQUFBO0FwSHNpZlY7QW9IbmlmTTtFQUNFLGN6Q2pNRjtBM0VzdWZOO0FvSGppZkk7RUFDRSx5QkFBQTtFQUNBLGN6Q3RPQztFeUN1T0Qsa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0FwSG1pZk47QW9INWhmRTtFQUNFLGdDQUFBO0VBQ0EsbUJBQUE7RUFDQSxvQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QXBIOGhmSjtBb0g3aGZJO0VBQ0UseUJ6Q3hOQTtBM0V1dmZOO0FvSDFoZkU7RUFDRSxtQkFBQTtBcEg0aGZKO0FHbG5mUTtFaUhxRk47SUFHSSxtQkFBQTtFcEg4aGZKO0FBQ0Y7QW9IM2hmRTtFQUNFLG1CQUFBO0FwSDZoZko7QUcxbmZRO0VpSDRGTjtJQUdJLG1CQUFBO0VwSCtoZko7QUFDRjtBb0g5aGZJO0VBQ0UsaUJBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7QXBIZ2lmTjtBb0g5aGZJO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7QXBIZ2lmTjtBb0g5aGZJO0VBQ0UseUJBQUE7RUFDQSxjN0dwT0U7RTZHcU9GLGdCQUFBO0FwSGdpZk47QW9IOWhmSTtFQUNFLFNBQUE7RUFDQSxnQkFBQTtBcEhnaWZOO0FvSC9oZk07RUFDRSxxQkFBQTtBcEhpaWZSO0FvSHhoZkk7RUFDRSx5QkFBQTtBcEgwaGZOO0FvSHhoZkk7RUFDRSxrQkFBQTtBcEgwaGZOO0FvSHpoZk07RUFDRSxjekM1UUY7QTNFdXlmTjs7QW9IbGhmRTtFQUNFLHlCN0duUUk7RTZHb1FKLHFCQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtBcEhxaGZKO0FvSGpoZkk7RUFDRSxXQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJ6Q3BURTtFeUNxVEYsY3pDdlVDO0V5Q3dVRCxnQkFBQTtFQUNBLGtCQUFBO0FwSG1oZk47QUdqcmZRO0VpSHFKSjtJQVdJLFdBQUE7SUFDQSxZQUFBO0lBQ0EsZUFBQTtFcEhxaGZOO0FBQ0Y7QW9IcGhmTTtFQUNFLHlCekM3U0Y7RXlDOFNFLGM3RzNSQTtBUGl6ZlI7QW9IcGhmTTtFQUNFLG9CQUFBO0VBQ0EsYUFBQTtBcEhzaGZSO0FvSGxoZk07RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0FwSG9oZlI7QW9IbmhmUTtFQUNFLGVBQUE7QXBIcWhmVjtBb0hwaGZVO0VBQ0UseUJ6QzVUTjtFeUM2VE0sYzdHMVNKO0FQZzBmUjtBb0huaGZRO0VBQ0UsZ0JBQUE7QXBIcWhmVjtBb0hwaGZVO0VBQ0UsNkJBQUE7RUFDQSx5QkFBQTtFQUNBLGM3R25USjtFNkdvVEksb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsOEJBQUE7RUFDQSxnQkFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBcEhzaGZaO0FvSHJoZlk7RUFDRSxVQUFBO0FwSHVoZmQ7QW9IbGhmTTtFQUNFLFdBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0EsaUJBQUE7RUFDQSxlQUFBO0VBQ0EsZ0JBQUE7QXBIb2hmUjtBb0hsaGZNO0VBQ0UsV0FBQTtFQUNBLFlBQUE7QXBIb2hmUjtBb0gvZ2ZFO0VBQ0Usd0JBQUE7VUFBQSxnQkFBQTtFQUNBLGdDQUFBO0FwSGloZko7QW9IL2dmRTtFQUNFLHlCN0dqVkk7RTZHa1ZKLDZDQUFBO1VBQUEscUNBQUE7QXBIaWhmSjtBb0hoaGZJO0VBQ0Usa0JBQUE7RUFDQSx1QkFBQTtFQUNBLGdCQUFBO0FwSGtoZk47O0FvSDdnZkE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBQUE7QUN6WkE7RUFDSSxtQkFBQTtFQUNBLG9CQUFBO0FySDZpZ0JKOztBc0g5aWdCSTtFQUNJLGlCQUFBO0F0SGlqZ0JSOztBdUhsamdCRTtFQUNFLFNBQUE7QXZIcWpnQko7QXVIcGpnQkk7RUFDRSxnQkFBQTtBdkhzamdCTjtBdUhwamdCSTtFQUNFLFdBQUE7QXZIc2pnQk47O0F3SDdqZ0JBO0VBQ0UsZ0JBQUE7QXhIZ2tnQkY7QXdIL2pnQkU7RUFDRSxpQkFBQTtFQUNBLGdCQUFBO0F4SGlrZ0JKO0F3SC9qZ0JFO0VBQ0UsV0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUNBLGdCQUFBO0F4SGlrZ0JKOztBeUgxa2dCRTtFQUNFLGNBQUE7QXpINmtnQko7QXlIM2tnQkU7RUFDRSxjOUNERztFOENFSCxpQkFBQTtFQUNBLGdCQUFBO0VBQ0Esb0JBQUE7QXpINmtnQko7QXlIM2tnQkU7RUFDRSxjOUNnQ0U7RThDL0JGLGtCQUFBO0VBQ0EseUJBQUE7QXpINmtnQko7QXlIM2tnQkU7RUFDRSxrQkFBQTtFQUNBLGM5Q1RHO0EzRXNsZ0JQO0F5SGhrZ0JFO0VBQ0UsbUJBQUE7QXpIa2tnQko7QXlIamtnQkk7RUFDRSxnQkFBQTtBekhta2dCTjtBeUhqa2dCSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsbUJBQUE7QXpIbWtnQk47QXlIamtnQkk7RUFDRSx5QmxIcUJFO0VrSHBCRix5QkFBQTtFQUNBLGM5Q25DQztFOENvQ0Qsb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtFQUNBLFdBQUE7QXpIbWtnQk47QUdsOGZRO0VzSDNJSjtJQVlJLFlBQUE7SUFDQSxZQUFBO0V6SHFrZ0JOO0FBQ0Y7QXlIcGtnQk07RUFDRSxrQkFBQTtBekhza2dCUjtBeUhwa2dCTTtFQUNFLHlCOUNuREQ7RThDb0RDLGNsSEVBO0FQb2tnQlI7QXlIbmtnQkk7RUFDRSxXQUFBO0VBQ0EseUI5Q2xEQztFOENtREQsV0FBQTtBekhxa2dCTjtBeUhqa2dCTTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7QXpIbWtnQlI7QXlIamtnQk07RUFDRSx5QjlDekNDO0U4QzBDRCxXQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBekhta2dCUjtBeUhsa2dCUTtFQUNFLHlCbEh0QkY7RWtIdUJFLGNsSHRCRjtBUDBsZ0JSO0F5SGxrZ0JRO0VBQ0UsNkJBQUE7QXpIb2tnQlY7QXlIbmtnQlU7RUFDRSxjOUNqRkw7QTNFc3BnQlA7QXlIbGtnQlE7RUFDRSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBekhva2dCVjtBeUg5amdCRTtFQUNFLGdDQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7QXpIZ2tnQko7QUdyL2ZRO0VzSDlFTjtJQUtJLGVBQUE7RXpIa2tnQko7QUFDRjtBeUhqa2dCSTtFQUNFLGdCQUFBO0F6SG1rZ0JOO0F5SGprZ0JJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QXpIbWtnQk47QXlIeGpnQkU7RUFDRSxtQkFBQTtFQUNBLGdCQUFBO0F6SDBqZ0JKO0FHcmdnQlE7RXNIdkROO0lBSUksbUJBQUE7RXpINGpnQko7QUFDRjtBRzFnZ0JRO0VzSGpESjtJQUVJLG1CQUFBO0V6SDZqZ0JOO0FBQ0Y7QXlIM2pnQkk7RUFDRSxjbEgzRUU7RWtINEVGLGdCQUFBO0VBQ0EsdUJBQUE7QXpINmpnQk47QXlIM2pnQlE7RUFDRSx5QjlDM0dEO0U4QzRHQyxtQkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7QXpINmpnQlY7QXlIMWpnQlU7RUFDRSw2QkFBQTtFQUVBLHFCQUFBO0F6SDRqZ0JaO0F5SHZqZ0JJO0VBQ0UseUJBQUE7RUFDQSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsbUJBQUE7QXpIeWpnQk47QUdwaWdCUTtFc0h6Qko7SUFNSSxrQkFBQTtFekgyamdCTjtBQUNGO0F5SDFqZ0JNO0VBQ0UsZ0JBQUE7RUFDQSxlQUFBO0F6SDRqZ0JSO0FHN2lnQlE7RXNIakJGO0lBSUksa0JBQUE7RXpIOGpnQlI7QUFDRjs7QTBIcHVnQkU7RUFDRSxjQUFBO0ExSHV1Z0JKO0EwSHJ1Z0JFO0VBQ0UsYy9DREc7RStDRUgsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLG9CQUFBO0ExSHV1Z0JKO0EwSHJ1Z0JFO0VBQ0UsYy9DZ0NFO0UrQy9CRixrQkFBQTtFQUNBLHlCQUFBO0ExSHV1Z0JKO0EwSHJ1Z0JFO0VBQ0Usa0JBQUE7RUFDQSxjL0NURztBM0VndmdCUDtBMEg1dGdCRTtFQUNFLG1CQUFBO0VBQ0EsZ0JBQUE7QTFIOHRnQko7QUd6a2dCUTtFdUh2Sk47SUFJSSxtQkFBQTtJQUNBLGVBQUE7RTFIZ3VnQko7QUFDRjtBRzFrZ0JRO0V1SDVKTjtJQVFJLGtCQUFBO0lBQ0EsbUJBQUE7RTFIa3VnQko7QUFDRjtBMEgvdGdCRTtFQUNFLHdCQUFBO0ExSGl1Z0JKO0EwSGh1Z0JJO0VBQ0UsZUFBQTtFQUNBLHlCQUFBO0ExSGt1Z0JOO0EwSGh1Z0JJO0VBQ0UseUIvQ0xBO0EzRXV1Z0JOO0EwSDd0Z0JFO0VBQ0UsbUJBQUE7QTFIK3RnQko7QTBIOXRnQkk7RUFDRSxnQkFBQTtBMUhndWdCTjtBMEg5dGdCSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EsbUJBQUE7QTFIZ3VnQk47QTBIOXRnQkk7RUFDRSx5Qm5IRkU7RW1IR0YseUJBQUE7RUFDQSxjL0MxREM7RStDMkRELG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0Esd0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0Esa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxXQUFBO0ExSGd1Z0JOO0FHdG5nQlE7RXVIcEhKO0lBWUksWUFBQTtJQUNBLFlBQUE7RTFIa3VnQk47QUFDRjtBMEhqdWdCTTtFQUNFLGtCQUFBO0ExSG11Z0JSO0EwSGp1Z0JNO0VBQ0UseUIvQzFFRDtFK0MyRUMsY25IckJBO0FQd3ZnQlI7QTBIaHVnQkk7RUFDRSxXQUFBO0VBQ0EseUIvQ3pFQztFK0MwRUQsV0FBQTtBMUhrdWdCTjtBMEg5dGdCTTtFQUNFLHFCQUFBO0VBQ0Esa0JBQUE7QTFIZ3VnQlI7QTBIOXRnQk07RUFDRSx5Qi9DaEVDO0UrQ2lFRCxXQUFBO0VBQ0EsWUFBQTtFQUNBLFNBQUE7RUFDQSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBMUhndWdCUjtBMEgvdGdCUTtFQUNFLHlCbkg3Q0Y7RW1IOENFLGNuSDdDRjtBUDh3Z0JSO0EwSC90Z0JRO0VBQ0UsNkJBQUE7QTFIaXVnQlY7QTBIaHVnQlU7RUFDRSxjL0N4R0w7QTNFMDBnQlA7QTBIL3RnQlE7RUFDRSxTQUFBO0VBQ0EsaUJBQUE7RUFDQSxnQkFBQTtBMUhpdWdCVjtBMEgzdGdCRTtFQUNFLGdDQUFBO0VBQ0EsYUFBQTtFQUNBLGNBQUE7QTFINnRnQko7QUd6cWdCUTtFdUh2RE47SUFLSSxlQUFBO0UxSCt0Z0JKO0FBQ0Y7QTBIOXRnQkk7RUFDRSxnQkFBQTtBMUhndWdCTjtBMEg5dGdCSTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0ExSGd1Z0JOO0EwSHB0Z0JJO0VBQ0UsZUFBQTtBMUhzdGdCTjtBMEhwdGdCSTtFQUNFLGdCQUFBO0VBQ0EsVUFBQTtFQUNBLHVCQUFBO0VBQ0EscUJBQUE7QTFIc3RnQk47QTBIbnRnQk07RUFDRSxtQkFBQTtBMUhxdGdCUjtBMEhwdGdCUTtFQUNFLG1CQUFBO0ExSHN0Z0JWO0EwSGh0Z0JFO0VBQ0U7Ozs7Ozs7OztJQUFBO0ExSDJ0Z0JKO0EwSGp0Z0JJO0VBQ0UscUJBQUE7RUFDQSxxQkFBQTtBMUhtdGdCTjtBR3B0Z0JRO0V1SEdBO0lBQ0UsZ0JBQUE7RTFIb3RnQlI7QUFDRjtBMEhqdGdCSTtFQUNFLGNuSC9IRTtFbUhnSUYsZ0JBQUE7RUFDQSx1QkFBQTtBMUhtdGdCTjtBMEhsdGdCTTtFQUNFLGdCQUFBO0VBQ0EseUIvQy9KQztFK0NnS0QsZ0JBQUE7QTFIb3RnQlI7QUdudWdCUTtFdUhZRjtJQUtJLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0UxSHN0Z0JSO0FBQ0Y7QUd6dWdCUTtFdUhvQkE7SUFFSSxVQUFBO0UxSHV0Z0JWO0FBQ0Y7QTBIcnRnQlE7RUFDRSxtQkFBQTtFQUNBLHdDQUFBO0VBQUEsZ0NBQUE7RUFDQSxhQUFBO0ExSHV0Z0JWO0FHbnZnQlE7RXVIeUJBO0lBS0ksV0FBQTtFMUh5dGdCVjtBQUNGO0EwSHR0Z0JVO0VBQ0UsOEJBQUE7RUFFQSxzQkFBQTtBMUh3dGdCWjtBMEh0dGdCVTtFQUNFLDJCQUFBO0VBRUEsbUJBQUE7QTFId3RnQlo7QTBIbnRnQkk7RUFDRSx5QkFBQTtFQUNBLGtCQUFBO0VBQ0EsaUJBQUE7QTFIcXRnQk47QUd2d2dCUTtFdUgrQ0o7SUFNSSxrQkFBQTtJQUNBLHFCQUFBO0UxSHN0Z0JOO0FBQ0Y7QTBIcnRnQk07RUFDRSxxQkFBQTtBMUh1dGdCUjtBMEhydGdCTTtFQUNFLGlDL0NoTVU7RStDaU1WLGdCQUFBO0VBQ0EsZUFBQTtFQUNBLGNBQUE7QTFIdXRnQlI7QUd0eGdCUTtFdUgyREY7SUFNSSxrQkFBQTtFMUh5dGdCUjtBQUNGO0EwSHZ0Z0JNO0VBQ0Usb0JBQUE7QTFIeXRnQlI7QTBIdHRnQlE7RUFDRSxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EsV0FBQTtFQUNBLGlCQUFBO0ExSHd0Z0JWO0EwSHB0Z0JJO0VBQ0Usa0JBQUE7RUFDQSx5QkFBQTtFQUNBLFVBQUE7RUFDQSx3Q0FBQTtFQUFBLGdDQUFBO0VBQ0EsVUFBQTtBMUhzdGdCTjtBRzN5Z0JRO0V1SGdGSjtJQU9JLG9CQUFBO0lBQUEsb0JBQUE7SUFBQSxhQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLG1CQUFBO0lBQ0EseUJBQUE7UUFBQSxzQkFBQTtZQUFBLDhCQUFBO0UxSHd0Z0JOO0UwSHZ0Z0JNO0lBQ0UsVUFBQTtJQUNBLGlCQUFBO0UxSHl0Z0JSO0FBQ0Y7QTBIdnRnQk07RUFHRSxhQUFBO0ExSHV0Z0JSO0EwSHR0Z0JRO0VBQ0UsZ0JBQUE7RUFDQSxhQUFBO0ExSHd0Z0JWO0EwSHR0Z0JRO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtFQUNBLHlCQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBMUh3dGdCVjtBMEhydGdCTTtFQUNFLGdCQUFBO0VBQ0EseUIvQ3hRQTtFK0N5UUEsU0FBQTtFQUNBLHdCQUFBO1VBQUEsZ0JBQUE7RUFDQSxZQUFBO0VBQ0Esd0NBQUE7RUFBQSxnQ0FBQTtBMUh1dGdCUjtBMEh0dGdCUTtFQUNFLHlCL0MxUkg7QTNFay9nQlA7QTBIcnRnQk07RUFDRSxrQkFBQTtBMUh1dGdCUjs7QTJIcGdoQkE7RUFDRSxjaERPSztBM0VnZ2hCUDtBR3IxZ0JRO0V3SG5MUjtJQUdJLGNBQUE7RTNIeWdoQkY7QUFDRjtBMkh4Z2hCRTtFQUNFLFVBQUE7RUFDQSxvQkFBQTtBM0gwZ2hCSjtBRzkxZ0JRO0V3SDlLTjtJQUlJLGlCQUFBO0lBQ0EsZ0JBQUE7RTNINGdoQko7QUFDRjtBMkgzZ2hCSTtFQUNFLFNBQUE7QTNINmdoQk47QTJIdGdoQkU7RUFDRSxrSkFBQTtFQUFBLDRGQUFBO0EzSHdnaEJKO0EySHZnaEJJO0VBQ0UsaUJBQUE7RUFDQSxvQkFBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7RUFDQSxnQkFBQTtBM0h5Z2hCTjtBR2ozZ0JRO0V3SDdKSjtJQU9JLGlCQUFBO0lBQ0EsZUFBQTtJQUNBLGdCQUFBO0UzSDJnaEJOO0FBQ0Y7QTJIdmdoQkU7RUFDRSx5QkFBQTtFQUNBLDZCQUFBO0VBQ0EsZ0JBQUE7RUFDQSxjcEhxQkk7RW9IcEJKLHNCQUFBO0VBQ0EsVUFBQTtFQUNBLHFCQUFBO0EzSHlnaEJKO0EySHhnaEJJO0VBQ0UsY2hERkE7QTNFNGdoQk47QTJIdGdoQkU7RUFDRSxnQkFBQTtFQUNBLFdBQUE7QTNId2doQko7QTJIbmdoQkU7RUFDRSxtQkFBQTtBM0hxZ2hCSjtBMkhwZ2hCSTtFQUNFLGdCQUFBO0EzSHNnaEJOO0EySHBnaEJJO0VBQ0Usa0JBQUE7RUFDQSxnQkFBQTtFQUNBLHVCQUFBO0VBQ0EseUJBQUE7RUFDQSxvQkFBQTtFQUNBLGNBQUE7QTNIc2doQk47QTJIbmdoQkk7RUFDRSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EsY0FBQTtBM0hxZ2hCTjtBMkhsZ2hCSTtFQUNFLGlCQUFBO0VBQ0Esc0JBQUE7QTNIb2doQk47QTJIbGdoQkk7RUFDRSxrQkFBQTtFQUNBLGNwSHJCRTtFb0hzQkYsc0JBQUE7RUFDQSwwQkFBQTtBM0hvZ2hCTjtBMkhsZ2hCSTtFQUNFLGdCQUFBO0VBQ0EsdUJBQUE7RUFDQSxpQkFBQTtFQUNBLHlCQUFBO0EzSG9naEJOO0EySGxnaEJJO0VBQ0Usa0JBQUE7RUFDQSxjaER0RkM7RWdEdUZELGtCQUFBO0EzSG9naEJOO0EySC8vZ0JJO0VBQ0UscUJBQUE7QTNIaWdoQk47QTJILy9nQkk7RUFDRSxjaEQ3REE7QTNFOGpoQk47QTJILy9nQkk7RUFDRSxVQUFBO0VBQ0EseUJoRDdGQztFZ0Q4RkQsWUFBQTtFQUNBLG9CQUFBO0VBQ0EscUJBQUE7QTNIaWdoQk47QUc3N2dCUTtFd0h6RUo7SUFPSSxhQUFBO0UzSG1naEJOO0FBQ0Y7QTJIaGdoQk07RUFDRSxjaEQzRUY7RWdENEVFLHlCQUFBO0VBQ0EsbUJBQUE7RUFDQSxnQkFBQTtBM0hrZ2hCUjtBMkgvL2dCSTtFQUNFLGlCQUFBO0VBQ0Esc0JBQUE7RUFDQSxjcEhsRUU7RW9IbUVGLHlCQUFBO0EzSGlnaEJOO0EySGhnaEJNO0VBQ0Usa0JBQUE7RUFDQSx5QkFBQTtFQUNBLGdCQUFBO0EzSGtnaEJSO0EySGhnaEJRO0VBQ0UsaUJBQUE7RUFDQSxnQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0JBQUE7RUFDQSxxQkFBQTtBM0hrZ2hCVjtBMkhqZ2hCVTtFQUNFLFdBQUE7RUFDQSxXQUFBO0VBQ0Esa0JBQUE7RUFDQSxRQUFBO0VBQ0EsUUFBQTtFQUVBLGdDQUFBO0VBQ0EsK0JBQUE7RUFDQSx1QkFBQTtBM0hrZ2hCWjtBMkg1L2dCSTtFQUNFLGFBQUE7QTNIOC9nQk47QTJIeC9nQkU7RUFDRSxjaEQzSkc7RWdENEpILG1CQUFBO0EzSDAvZ0JKO0EySHYvZ0JJO0VBQ0UsbUJBQUE7QTNIeS9nQk47QTJIeC9nQk07RUFDRSxnQ0FBQTtBM0gwL2dCUjtBMkh4L2dCTTtFQUNFLHdDQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtFQUNBLGdCQUFBO0VBQ0Esc0JBQUE7RUFDQSxpQkFBQTtBM0gwL2dCUjtBMkh4L2dCTTtFQUNFLGNwSHpIQTtFb0gwSEEsZ0JBQUE7QTNIMC9nQlI7QTJIdi9nQlE7RUFDRSxzQkFBQTtFQUNBLG1CQUFBO0VBQ0EsZ0NBQUE7QTNIeS9nQlY7QTJIdi9nQlE7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7QTNIeS9nQlY7QTJIbC9nQkk7RUFDRSxnQkFBQTtBM0hvL2dCTjtBMkhuL2dCTTtFQUNFLGdCQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0VBQ0EseUJBQUE7TUFBQSxzQkFBQTtVQUFBLDhCQUFBO0VBQ0Esa0JBQUE7QTNIcS9nQlI7QTJIbi9nQlE7RUFDRSxnQkFBQTtBM0hxL2dCVjtBMkhuL2dCUTtFQUNFLHVCQUFBO0VBQ0EsY2hEak5IO0VnRGtORyxnQkFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QTNIcS9nQlY7QTJIcC9nQlU7RUFDRSxXQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0EzSHMvZ0JaO0EySHAvZ0JZO0VBQ0UseUJoRGhOUDtBM0Vzc2hCUDtBMkhyL2dCYztFQUNFLDBCQUFBO0EzSHUvZ0JoQjtBMkhsL2dCWTtFQUNFLHlCaEQ1TFI7RWdENkxRLGNwSDFLTjtBUDhwaEJSO0EySGgvZ0JRO0VBQ0UsY0FBQTtBM0hrL2dCVjtBMkhoL2dCUTtFQUNFLGdCQUFBO0EzSGsvZ0JWO0EySGgvZ0JRO0VBQ0UsMEJBQUE7RUFDQSxxQkFBQTtBM0hrL2dCVjtBMkhoL2dCUTtFQUNFLHlCaERuUEg7RWdEb1BHLGNwSDFMRjtFb0gyTEUsa0JBQUE7RUFDQSxtQkFBQTtFQUNBLHFCQUFBO0VBQ0EseUJBQUE7RUFDQSxlQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7QTNIay9nQlY7QUcvamhCUTtFd0htRUE7SUFZSSxnQkFBQTtFM0hvL2dCVjtBQUNGO0EySG4vZ0JVO0VBQ0Usa0JBQUE7RUFDQSxrQkFBQTtBM0hxL2dCWjtBMkgxK2dCSTtFQUNFLGdCQUFBO0EzSDQrZ0JOO0EySDMrZ0JNO0VBQ0UseUJBQUE7QTNINitnQlI7QTJIMytnQk07RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSw4QkFBQTtFQUNBLHNCQUFBO01BQUEsbUJBQUE7VUFBQSxxQkFBQTtFQUNBLG1CQUFBO0EzSDYrZ0JSO0EySDMrZ0JVO0VBQ0UsZUFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSxrQkFBQTtBM0g2K2dCWjtBMkgxK2dCUTtFQUNFLGtCQUFBO0VBQ0EsZ0JBQUE7RUFDQSx1QkFBQTtFQUNBLHlCQUFBO0VBQ0EsY3BINU9GO0VvSDZPRSxpQkFBQTtBM0g0K2dCVjtBMkh4K2dCUTtFQUNFLFdBQUE7RUFDQSx5QmhEclFKO0VnRHNRSSxzQkFBQTtFQUNBLGFBQUE7RUFDQSxpQkFBQTtBM0gwK2dCVjtBMkh6K2dCVTtFQUNFLHlCcEh4UEo7QVBtdWhCUjtBMkhuK2dCSTtFQUNFLGtCQUFBO0VBQ0EsY3BIbFFFO0FQdXVoQlI7QTJIcCtnQk07RUFDRSxjaER0UkY7QTNFNHZoQk47O0E0SHR5aEJFO0VBQ0UsU0FBQTtFQUNBLGdCQUFBO0E1SHl5aEJKO0E0SHh5aEJJO0VBQ0UsV0FBQTtFQUNBLGdCQUFBO0E1SDB5aEJOOztBNkhoemhCQTtFQUNJLFNBQUE7RUFDQSxzQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY2xEdUNFO0VrRHRDRixnQ0FBQTtVQUFBLHdCQUFBO0E3SG16aEJKO0E2SGx6aEJJO0VBQ0ksd0JBQUE7VUFBQSxnQkFBQTtBN0hvemhCUjs7QThIM3poQkE7RUFDSSxtQkFBQTtBOUg4emhCSjtBOEg3emhCSTtFQUNJLGlCQUFBO0VBQ0EsY25EdUNGO0EzRXd4aEJOO0E4SDl6aEJNO0VBQ0UsVUFBQTtBOUhnMGhCUjtBOEg3emhCRTtFQUNFLG9CQUFBO0VBQ0EsaUNBQUE7QTlIK3poQko7O0ErSHowaEJFO0VBQ0Usa0JBQUE7QS9INDBoQko7QUczcGhCUTtFNEhsTE47SUFLSSxhQUFBO0UvSDQwaEJKO0UrSDMwaEJJO0lBRUUsYUFBQTtFL0g0MGhCTjtBQUNGO0ErSDEwaEJJO0VBQ0UsY3hIaURFO0FQMnhoQlI7QStIMTBoQkk7RUFDRSxnQkFBQTtFQUNBLGtCQUFBO0VBQ0EseUJBQUE7QS9INDBoQk47QUczcWhCUTtFNEhwS0o7SUFLSSxrQkFBQTtJQUNBLHVCQUFBO0UvSDgwaEJOO0FBQ0Y7QStINTBoQkk7RUFDRSxnQkFBQTtFQUNBLGVBQUE7QS9IODBoQk47QUdycmhCUTtFNEgzSko7SUFJSSxrQkFBQTtFL0hnMWhCTjtBQUNGO0ErSDkwaEJJO0VBQ0Usb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7RUFDQSw4QkFBQTtFQUVBLGFBQUE7QS9IKzBoQk47QStIOTBoQk07RUFDRSxrQkFBQTtFQUVBLDJCQUFBO0VBQ0Esc0JBQUE7RUFHQSxhQUFBO0EvSDYwaEJSO0ErSHQwaEJJO0VBQ0UsYUFBQTtBL0h3MGhCTjtBRzFzaEJRO0U0SC9ISjtJQUdJLGtCQUFBO0UvSDAwaEJOO0FBQ0Y7QStIejBoQk07RUFDRSxTQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxtQkFBQTtBL0gyMGhCUjtBK0gxMGhCUTtFQUNFLGtCQUFBO0EvSDQwaEJWO0ErSDMwaEJVO0VBQ0UsMEJBQUE7QS9INjBoQlo7QStIMzBoQlU7RUFDRSxvQkFBQTtBL0g2MGhCWjtBK0h2MGhCSTtFQUNFLHlCcEQvQ0U7RW9EZ0RGLGFBQUE7RUFDQSxhQUFBO0EvSHkwaEJOO0FHbHVoQlE7RTRIMUdKO0lBS0ksa0JBQUE7RS9IMjBoQk47QUFDRjtBK0gxMGhCTTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EscUJBQUE7TUFBQSxrQkFBQTtVQUFBLHlCQUFBO0VBQ0EsbUJBQUE7QS9INDBoQlI7QStIMzBoQlE7RUFDRSx5QkFBQTtFQUNBLGlCQUFBO0VBQ0Esb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7QS9INjBoQlY7QStINTBoQlU7RUFDRSxpQkFBQTtFQUNBLG1CQUFBO0EvSDgwaEJaO0ErSHgwaEJNO0VBQ0UsbUJBQUE7QS9IMDBoQlI7QUd6dmhCUTtFNEhsRkY7SUFHSSxnQkFBQTtFL0g0MGhCUjtBQUNGO0ErSDEwaEJNO0VBQ0UsaUNwRHpEVTtFb0QwRFYsZUFBQTtFQUNBLGNwRGxHRDtBM0U4NmhCUDtBK0gxMGhCTTtFQUNFLHlCcERsRkE7RW9EbUZBLG1CQUFBO0EvSDQwaEJSO0FHdndoQlE7RTRIdkVGO0lBSUksZ0JBQUE7RS9IODBoQlI7QUFDRjtBK0g1MGhCTTtFQUNFLDZCQUFBO0VBQ0EsU0FBQTtBL0g4MGhCUjtBK0gzMGhCUTtFQUNFLGNBQUE7QS9INjBoQlY7QStIejBoQlE7RUFDRSxvQkFBQTtFQUNBLHVCQUFBO0VBQ0EsU0FBQTtBL0gyMGhCVjtBK0hyMGhCTTtFQUNFLG9CQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsY0FBQTtBL0h1MGhCUjtBRzV4aEJRO0U0SDdDRjtJQUlJLGNBQUE7RS9IeTBoQlI7QUFDRjtBK0h2MGhCTTtFQUNFLHlCQUFBO0VBQ0EsdUJBQUE7RUFDQSxlQUFBO0VBQ0EseUJBQUE7QS9IeTBoQlI7QStIdjBoQk07RUFDRSxpQkFBQTtBL0h5MGhCUjtBK0huMGhCRTtFQUNFLFVBQUE7RUFDQSxXQUFBO0VBQ0EsWUFBQTtBL0hxMGhCSjtBK0hwMGhCSTtFQUNFLFdBQUE7QS9IczBoQk47QStIcDBoQkk7RUFDRSxTQUFBO0EvSHMwaEJOO0ErSHAwaEJJO0VBQ0UsVUFBQTtBL0hzMGhCTjtBK0hsMGhCRTtFQUNFLGdCQUFBO0VBQ0EsY0FBQTtBL0hvMGhCSjtBK0hsMGhCTTtFQUNFLG1CQUFBO0VBQ0EseUJ4SGxIQTtFd0htSEEsV0FBQTtFQUNBLFlBQUE7RUFDQSxjQUFBO0EvSG8waEJSO0ErSG4waEJRO0VBQ0UsV0FBQTtBL0hxMGhCVjtBK0hqMGhCUTtFQUNFLHlCcEQ5SUo7QTNFaTloQk47QStINXpoQkk7RUFDRSxXQUFBO0EvSDh6aEJOO0FHNTBoQlE7RTRIa0JOO0lBRUksa0JBQUE7SUFDQSxtQkFBQTtFL0g0emhCSjtBQUNGO0ErSDN6aEJJO0VBQ0UsY0FBQTtFQUNBLGFBQUE7RUFDQSxtQkFBQTtBL0g2emhCTjtBK0g1emhCTTtFQUNFLHlCcEQxTEE7QTNFdy9oQlI7QStIM3poQkk7RUFDRSxzQkFBQTtFQUNBLDJCQUFBO0VBQ0Esb0JBQUE7RUFDQSxxQkFBQTtBL0g2emhCTjtBR2gyaEJRO0U0SCtCSjtJQU1JLHFCQUFBO0UvSCt6aEJOO0FBQ0Y7QStIOXpoQk07RUFDRSxVQUFBO0VBQ0EsaUJBQUE7QS9IZzBoQlI7QStIN3poQkk7RUFDRSxnQkFBQTtFQUNBLHlCQUFBO0VBQ0EsY3hIcktFO0V3SHNLRixjQUFBO0EvSCt6aEJOO0ErSDl6aEJNO0VBRUUsZUFBQTtFQUNBLGdCQUFBO0VBQ0EscUJBQUE7QS9IK3poQlI7QStIN3poQk07RUFDRSxvQkFBQTtFQUNBLHFCQUFBO0EvSCt6aEJSO0ErSDd6aEJNO0VBQ0UsaUJBQUE7QS9IK3poQlI7QStIMXpoQk07RUFDRSxjeEh4TEE7RXdIeUxBLGtCQUFBO0EvSDR6aEJSO0ErSDF6aEJNO0VBRUUsY0FBQTtBL0gyemhCUjtBK0h6emhCRTtFQUNJOzs7OztNQUFBO0VBTUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBQUE7QS9IdTJoQk47QStIenpoQkU7RUFDQyxnQkFBQTtFQUNBLGNBQUE7QS9IMnpoQkg7QStIenpoQk07RUFDRSxjQUFBO0EvSDJ6aEJSO0ErSHp6aEJNO0VBQ0UsK0JwRHpRYTtFb0QwUWIseUJBQUE7QS9IMnpoQlI7QStIenpoQk07RUFDRSwyQkFBQTtFQUNBLDRCQUFBO0VBQ0Esc0JBQUE7RUFDQSxtQkFBQTtBL0gyemhCUjtBK0h4emhCRTtFQUNFLGtCQUFBO0EvSDB6aEJKOztBZ0k3bmlCRTtFQUNFLGN6SDJESTtFeUgxREosa0JBQUE7RUFDQSxtQkFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7QWhJZ29pQko7QUduOWhCUTtFNkhsTE47SUFPSSxpQkFBQTtJQUNBLG9CQUFBO0lBQ0EsbUJBQUE7RWhJa29pQko7QUFDRjtBZ0lqb2lCSTtFQUNFLGNBQUE7QWhJbW9pQk47QWdJam9pQkk7RUFDRSxnQkFBQTtFQUNBLGN6SDRDRTtBUHVsaUJSO0FHaitoQlE7RTZIcEtKO0lBSUksZUFBQTtJQUNBLGdCQUFBO0VoSXFvaUJOO0FBQ0Y7QWdJbm9pQkk7RUFDRSxpQ3JEdUJZO0VxRHRCWixnQkFBQTtFQUNBLGlCQUFBO0FoSXFvaUJOO0FnSW5vaUJJO0VBQ0UsY3pIZ0NFO0V5SC9CRixnQkFBQTtFQUNBLG9CQUFBO0FoSXFvaUJOO0FnSWxvaUJFO0VBQ0UsV0FBQTtFQUNBLFlBQUE7RUFDQSxVQUFBO0VBQ0EsY3JEbENHO0VxRG1DSCxlQUFBO0FoSW9vaUJKO0FnSW5vaUJJO0VBQ0UsV0FBQTtBaElxb2lCTjtBZ0lsb2lCRTtFQUNFLFVBQUE7QWhJb29pQko7QUc5L2hCUTtFNkh2SU47SUFHSSxVQUFBO0lBQ0EsV0FBQTtJQUNBLFlBQUE7RWhJc29pQko7QUFDRjtBZ0lwb2lCRTtFQUNFLFNBQUE7QWhJc29pQko7QUd4Z2lCUTtFNkgvSE47SUFHSSxTQUFBO0lBQ0EsV0FBQTtJQUNBLFlBQUE7RWhJd29pQko7QUFDRjtBZ0l0b2lCRTtFQUNFLFlBQUE7QWhJd29pQko7O0FnSW5vaUJJO0VBQ0ksZUFBQTtFQUNBLFNBQUE7QWhJc29pQlI7QWdJcG9pQkk7RUFDSSxrQkFBQTtBaElzb2lCUjtBZ0lyb2lCUTtFQUNJLFdBQUE7QWhJdW9pQlo7QWdJcG9pQkk7RUFDSSxtQkFBQTtBaElzb2lCUjtBZ0lyb2lCUTtFQUNJLG9CQUFBO0VBQ0Esa0JBQUE7RUFDQSxTQUFBO0FoSXVvaUJaO0FnSXBvaUJJO0VBQ0ksbUJBQUE7QWhJc29pQlI7O0FHeGlpQlE7RTZIeEZOO0lBRUksbUJBQUE7RWhJbW9pQko7QUFDRjtBZ0lsb2lCSTtFQUNFLGNBQUE7QWhJb29pQk47QWdJam9pQkU7RUFDRSxtQkFBQTtBaEltb2lCSjtBR3BqaUJRO0U2SGhGTjtJQUdJLG1CQUFBO0VoSXFvaUJKO0FBQ0Y7QWdJbm9pQkU7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLHlCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtBaElxb2lCSjtBZ0lub2lCTTtFQUNFLGtCQUFBO0FoSXFvaUJSO0FnSWpvaUJNO0VBRUUsZUFBQTtFQUNBLGdCQUFBO0VBQ0EseUJBQUE7QWhJa29pQlI7O0FnSTNuaUJFO0VBQ0UsNkJBQUE7RUFDQSxvQkFBQTtBaEk4bmlCSjtBZ0k3bmlCSTtFQUNFLHlCekhuRUU7RXlIb0VGLGN6SHJFRTtBUG9zaUJSO0FnSTluaUJNO0VBQ0UseUJ6SHZFQTtFeUh3RUEsY3pIdkVBO0FQdXNpQlI7QWdJOW5pQk07RUFDRSx5QnJEMUhEO0VxRDJIQyxjekgzRUE7RXlINEVBLHFCckQ1SEQ7RXFENkhDLG9CQUFBO0FoSWdvaUJSO0FnSTduaUJJO0VBQ0UsZ0JBQUE7QWhJK25pQk47QWdJN25pQlE7RUFDRSx5QnJEbklIO0VxRG9JRyxxQnJEcElIO0EzRW13aUJQO0FnSTluaUJVO0VBQ0UseUJ6SHhGSjtFeUh5RkkscUJ6SHpGSjtFeUgwRkksY3pIekZKO0FQeXRpQlI7O0FpSXB4aUJNO0VBREY7SUFFSSxxQkFBQTtFakl3eGlCTjtBQUNGOztBaUlueGlCQTs7Ozs7O0VBTUksZ0JBQUE7RUFDQSxnQkFBQTtBaklzeGlCSjs7QWlJbnhpQkE7OztFQUdJLGVBQUE7RUFDQSxrQkFBQTtBaklzeGlCSjs7QWlJcHhpQkE7RUFDRSx5QkFBQTtBakl1eGlCRjs7QWlJcnhpQkE7RUFDSSxjdERhRTtFc0RaRixlQUFBO0VBQ0EsZ0JBQUE7QWpJd3hpQko7O0FpSXJ4aUJBO0VBQ0UsYzFIeUJNO0FQK3ZpQlI7QWlJdnhpQkk7RUFDSSxvQkFBQTtFQUNBLHVCQUFBO0FqSXl4aUJSO0FpSXZ4aUJJO0VBQ0ksa0JBQUE7QWpJeXhpQlI7QWlJdnhpQkk7RUFDSSxpQkFBQTtFQUNBLG9CQUFBO0FqSXl4aUJSO0FpSXZ4aUJJO0VBQ0ksbUJBQUE7QWpJeXhpQlI7QWlJdnhpQkU7RUFDRSxvQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLGNBQUE7QWpJeXhpQko7QWlJeHhpQkk7RUFDRSxrQkFBQTtBakkweGlCTjtBaUl4eGlCSTtFQUNFLGtCQUFBO0FqSTB4aUJOOztBaUlweGlCRTtFQUNFLGN0RFJLO0VzRFNMLGdCQUFBO0VBQ0Esa0JBQUE7QWpJdXhp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Y2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVURi04XCI7XG4vKiBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuVGFibGUgb2YgQ29udGVudHNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuKi9cbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi45LjBcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLmxhcmdlLCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICosIFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW50ZW50PXRvdWNoXSAqLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKixcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbltkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiO1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbn1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblt0eXBlPXRleHRdLCBbdHlwZT1wYXNzd29yZF0sIFt0eXBlPWRhdGVdLCBbdHlwZT1kYXRldGltZV0sIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgW3R5cGU9bW9udGhdLCBbdHlwZT13ZWVrXSwgW3R5cGU9ZW1haWxdLCBbdHlwZT1udW1iZXJdLCBbdHlwZT1zZWFyY2hdLCBbdHlwZT10ZWxdLCBbdHlwZT10aW1lXSwgW3R5cGU9dXJsXSwgW3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblt0eXBlPXRleHRdOmZvY3VzLCBbdHlwZT1wYXNzd29yZF06Zm9jdXMsIFt0eXBlPWRhdGVdOmZvY3VzLCBbdHlwZT1kYXRldGltZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgW3R5cGU9bW9udGhdOmZvY3VzLCBbdHlwZT13ZWVrXTpmb2N1cywgW3R5cGU9ZW1haWxdOmZvY3VzLCBbdHlwZT1udW1iZXJdOmZvY3VzLCBbdHlwZT1zZWFyY2hdOmZvY3VzLCBbdHlwZT10ZWxdOmZvY3VzLCBbdHlwZT10aW1lXTpmb2N1cywgW3R5cGU9dXJsXTpmb2N1cywgW3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT1zdWJtaXRdLFxuW3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2FjYTtcbn1cblxuW3R5cGU9ZmlsZV0sXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbCxcblt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgd2lkdGg6IDElO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xufVxuXG5maWVsZHNldCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG5sZWdlbmQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xufVxuLmZpZWxkc2V0IGxlZ2VuZCB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IC0wLjE4NzVyZW07XG4gIHBhZGRpbmc6IDAgMC4xODc1cmVtO1xufVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtb3JpZ2luOiBjb250ZW50LWJveDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgLTFyZW0gY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiByZ2IlMjgxMzgsIDEzOCwgMTM4JTI5XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCApIHtcbiAgc2VsZWN0IHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCJkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09XCIpO1xuICB9XG59XG5zZWxlY3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuc2VsZWN0OmRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbnNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5zZWxlY3RbbXVsdGlwbGVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xufVxuc2VsZWN0Om5vdChbbXVsdGlwbGVdKSB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cykge1xuICBib3JkZXItY29sb3I6ICNjYzRiMzc7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDksIDIzNi4xLCAyMzQuMSk7XG59XG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmlzLWludmFsaWQtbGFiZWwge1xuICBjb2xvcjogI2NjNGIzNztcbn1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5mb3JtLWVycm9yLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuZGl2LFxuZGwsXG5kdCxcbmRkLFxudWwsXG5vbCxcbmxpLFxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2LFxucHJlLFxuZm9ybSxcbnAsXG5ibG9ja3F1b3RlLFxudGgsXG50ZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxucCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cblxuZW0sXG5pIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc3Ryb25nLFxuYiB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbmgxLCAuaDEsXG5oMiwgLmgyLFxuaDMsIC5oMyxcbmg0LCAuaDQsXG5oNSwgLmg1LFxuaDYsIC5oNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbn1cbmgxIHNtYWxsLCAuaDEgc21hbGwsXG5oMiBzbWFsbCwgLmgyIHNtYWxsLFxuaDMgc21hbGwsIC5oMyBzbWFsbCxcbmg0IHNtYWxsLCAuaDQgc21hbGwsXG5oNSBzbWFsbCwgLmg1IHNtYWxsLFxuaDYgc21hbGwsIC5oNiBzbWFsbCB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBjb2xvcjogI2NhY2FjYTtcbn1cblxuaDEsIC5oMSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg0LCAuaDQge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDEuMDYyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNiwgLmg2IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxuICBoMiwgLmgyIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxuICBoMywgLmgzIHtcbiAgICBmb250LXNpemU6IDEuOTM3NXJlbTtcbiAgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuNTYyNXJlbTtcbiAgfVxuICBoNSwgLmg1IHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbiAgaDYsIC5oNiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG5hIHtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiAjMTc3OWJhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbmE6aG92ZXIsIGE6Zm9jdXMge1xuICBjb2xvcjogcmdiKDE5Ljc4LCAxMDQuMDYsIDE1OS45Nik7XG59XG5hIGltZyB7XG4gIGJvcmRlcjogMDtcbn1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDEuMjVyZW0gYXV0bztcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbmxpIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG59XG5cbm9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG59XG5cbnVsIHVsLCB1bCBvbCwgb2wgdWwsIG9sIG9sIHtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbmRsIGR0IHtcbiAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjYWNhY2E7XG59XG5ibG9ja3F1b3RlLCBibG9ja3F1b3RlIHAge1xuICBsaW5lLWhlaWdodDogMS42O1xuICBjb2xvcjogIzhhOGE4YTtcbn1cblxuYWJiciwgYWJiclt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwYTBhMGE7XG4gIGN1cnNvcjogaGVscDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbmtiZCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4yNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5zdWJoZWFkZXIge1xuICBtYXJnaW4tdG9wOiAwLjJyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgY29sb3I6ICM4YThhOGE7XG59XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG4uc3RhdCB7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbnAgKyAuc3RhdCB7XG4gIG1hcmdpbi10b3A6IC0xcmVtO1xufVxuXG51bC5uby1idWxsZXQsIG9sLm5vLWJ1bGxldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4uY2l0ZS1ibG9jaywgY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG4uY2l0ZS1ibG9jazpiZWZvcmUsIGNpdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJQgXCI7XG59XG5cbi5jb2RlLWlubGluZSwgY29kZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgcGFkZGluZzogMC4xMjVyZW0gMC4zMTI1cmVtIDAuMDYyNXJlbTtcbn1cblxuLmNvZGUtYmxvY2sge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogYXV0bztcbiAgd2hpdGUtc3BhY2U6IHByZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLnRleHQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRleHQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubWVkaXVtLXRleHQtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cbn1cbi5zaG93LWZvci1wcmludCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDtcbiAgICBwcmludC1jb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgYm94LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1wcmludCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICB9XG4gIHRoZWFkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDtcbiAgfVxuICB0Ym9keS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdHIuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50O1xuICB9XG4gIHRkLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGguc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgfVxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG4gIGFbaHJlZl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIChcIiBhdHRyKGhyZWYpIFwiKVwiO1xuICB9XG4gIC5pciBhOmFmdGVyLFxuICBhW2hyZWZePVwiamF2YXNjcmlwdDpcIl06YWZ0ZXIsXG4gIGFbaHJlZl49XCIjXCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICB0aGVhZCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwO1xuICB9XG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gIEBwYWdlIHtcbiAgICBtYXJnaW46IDAuNWNtO1xuICB9XG4gIHAsXG4gIGgyLFxuICBoMyB7XG4gICAgb3JwaGFuczogMztcbiAgICB3aWRvd3M6IDM7XG4gIH1cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuICAucHJpbnQtYnJlYWstaW5zaWRlIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgfVxufVxuLnJvdyB7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ucm93OjpiZWZvcmUsIC5yb3c6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLnJvdzo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5yb3cuY29sbGFwc2UgPiAuY29sdW1uLCAucm93LmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4ucm93IC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgfVxufVxuLnJvdyAucm93LmNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5yb3cuZXhwYW5kZWQge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4ucm93LmV4cGFuZGVkIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLnJvdzpub3QoLmV4cGFuZGVkKSAucm93IHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1uLCAucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG59XG4ucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1uLCAucm93Lmd1dHRlci1tZWRpdW0gPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG59XG5cbi5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jb2x1bW4sIC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbn1cbi5jb2x1bW4sIC5jb2x1bW5zLCAuY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG59XG4uY29sdW1uOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5jb2x1bW5zOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG4uY29sdW1uLmVuZDpsYXN0LWNoaWxkOmxhc3QtY2hpbGQsIC5lbmQuY29sdW1uczpsYXN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLmNvbHVtbi5yb3cucm93LCAucm93LnJvdy5jb2x1bW5zIHtcbiAgZmxvYXQ6IG5vbmU7XG59XG5cbi5yb3cgLmNvbHVtbi5yb3cucm93LCAucm93IC5yb3cucm93LmNvbHVtbnMge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC0xIHtcbiAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7XG59XG5cbi5zbWFsbC0yIHtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTMge1xuICB3aWR0aDogMjUlO1xufVxuXG4uc21hbGwtcHVzaC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAyNSU7XG59XG5cbi5zbWFsbC1wdWxsLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0yNSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMiB7XG4gIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLTQge1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7XG59XG5cbi5zbWFsbC01IHtcbiAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTQge1xuICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC02IHtcbiAgd2lkdGg6IDUwJTtcbn1cblxuLnNtYWxsLXB1c2gtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTAlO1xufVxuXG4uc21hbGwtcHVsbC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTAlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTU4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogNTAlO1xufVxuXG4uc21hbGwtOCB7XG4gIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7XG59XG5cbi5zbWFsbC1wdXNoLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDc1JTtcbn1cblxuLnNtYWxsLXB1bGwtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTc1JTtcbn1cblxuLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtMTAge1xuICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC04My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC05IHtcbiAgbWFyZ2luLWxlZnQ6IDc1JTtcbn1cblxuLnNtYWxsLTExIHtcbiAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTAge1xuICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTExIHtcbiAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtdXAtMSA+IC5jb2x1bW4sIC5zbWFsbC11cC0xID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0yID4gLmNvbHVtbiwgLnNtYWxsLXVwLTIgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogNTAlO1xufVxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMyA+IC5jb2x1bW4sIC5zbWFsbC11cC0zID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNCA+IC5jb2x1bW4sIC5zbWFsbC11cC00ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDI1JTtcbn1cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTUgPiAuY29sdW1uLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyMCU7XG59XG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC02ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTYgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC03ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTcgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG59XG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC04ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTggPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTIuNSU7XG59XG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnNtYWxsLWNvbGxhcHNlIC5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uZXhwYW5kZWQucm93IC5zbWFsbC1jb2xsYXBzZS5yb3cge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG4uc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cblxuLnNtYWxsLWNlbnRlcmVkIHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbn1cbi5zbWFsbC1jZW50ZXJlZCwgLnNtYWxsLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogbm9uZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5zbWFsbC11bmNlbnRlcmVkLCAuc21hbGwtcHVzaC0wLCAuc21hbGwtcHVsbC0wIHtcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5zbWFsbC11bmNlbnRlcmVkLCAuc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVzaC0wLCAuc21hbGwtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdWxsLTAsIC5zbWFsbC1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubWVkaXVtLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubWVkaXVtLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uLCAubWVkaXVtLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uLCAubWVkaXVtLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbiwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uLCAubWVkaXVtLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLm1lZGl1bS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubWVkaXVtLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG4gIC5tZWRpdW0tY2VudGVyZWQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAubWVkaXVtLWNlbnRlcmVkLCAubWVkaXVtLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCwgLm1lZGl1bS1wdXNoLTAsIC5tZWRpdW0tcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsIC5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1c2gtMCwgLm1lZGl1bS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdWxsLTAsIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0yNSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTc1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW4sIC5sYXJnZS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbiwgLmxhcmdlLXVwLTIgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW4sIC5sYXJnZS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW4sIC5sYXJnZS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAlO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTggPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5leHBhbmRlZC5yb3cgLmxhcmdlLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG4gIC5sYXJnZS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC5sYXJnZS1jZW50ZXJlZCwgLmxhcmdlLWNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLCAubGFyZ2UtcHVzaC0wLCAubGFyZ2UtcHVsbC0wIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVsbC0wLCAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cbi5jb2x1bW4tYmxvY2sge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jb2x1bW4tYmxvY2sge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICB9XG4gIC5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4uYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogMC44NWVtIDFlbTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG4uYnV0dG9uLnRpbnkge1xuICBmb250LXNpemU6IDAuNnJlbTtcbn1cbi5idXR0b24uc21hbGwge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uYnV0dG9uLmxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJ1dHRvbi5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5idXR0b24sIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b246aG92ZXIsIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkuNTUsIDEwMi44NSwgMTU4LjEpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTguNCwgOTYuOCwgMTQ4LjgpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uc2Vjb25kYXJ5LCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoOTQuNCwgOTQuNCwgOTQuNCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigzNC4yMzg2MjY2MDk0LCAxODcuMzYxMzczMzkwNiwgOTEuMzAzMDA0MjkxOCk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi53YXJuaW5nLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDQsIDEzOS4yLCAwKTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLmFsZXJ0LCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE2NS4wOTk2MDE1OTM2LCA1OC42MTAzNTg1NjU3LCA0Mi4xMDAzOTg0MDY0KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnksIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzc2NzY3NjtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzNiM2IzYjtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMjEuMzk5MTQxNjMwOSwgMTE3LjEwMDg1ODM2OTEsIDU3LjA2NDM3NzY4MjQpO1xuICBjb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbn1cbi5idXR0b24uaG9sbG93Lndhcm5pbmcsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xuICBjb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbiAgY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xufVxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cywgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5jbGVhciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5jbGVhcjpob3ZlciwgLmJ1dHRvbi5jbGVhcjpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5LCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnk6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeTpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnksIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpmb2N1cyB7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzczpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMjEuMzk5MTQxNjMwOSwgMTE3LjEwMDg1ODM2OTEsIDU3LjA2NDM3NzY4MjQpO1xufVxuLmJ1dHRvbi5jbGVhci53YXJuaW5nLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmc6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZzpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICBjb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG59XG4uYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG4uYnV0dG9uLmRyb3Bkb3duOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNGVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICNmZWZlZmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjRlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbi1sZWZ0OiAxZW07XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zdWNjZXNzOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zdWNjZXNzOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53YXJuaW5nOjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci53YXJuaW5nOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5hbGVydDo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuYWxlcnQ6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uYXJyb3ctb25seTo6YWZ0ZXIge1xuICB0b3A6IC0wLjFlbTtcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuXG5hLmJ1dHRvbjpob3ZlciwgYS5idXR0b246Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDA7XG59XG4uYnV0dG9uLWdyb3VwOjpiZWZvcmUsIC5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG4gIG1hcmdpbi1ib3R0b206IDFweDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxcHgpO1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYyg1MCUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygyNSUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG4uYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4LjQsIDk2LjgsIDE0OC44KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDk0LjQsIDk0LjQsIDk0LjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzQuMjM4NjI2NjA5NCwgMTg3LjM2MTM3MzM5MDYsIDkxLjMwMzAwNDI5MTgpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA0LCAxMzkuMiwgMCk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjUuMDk5NjAxNTkzNiwgNTguNjEwMzU4NTY1NywgNDIuMTAwMzk4NDA2NCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbjpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYzRiMzc7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b246Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24ge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjA2MjVyZW07XG59XG4uYnV0dG9uLWdyb3VwLm5vLWdhcHMgLmJ1dHRvbiArIC5idXR0b24ge1xuICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkOjphZnRlciwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkOjphZnRlciwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMXB4KTtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDUwJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDMzLjMzMzMzMzMzMzMlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMjAlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMTYuNjY2NjY2NjY2NyUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY2xvc2UtYnV0dG9uLm1lZGl1bSwgLmNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubGFiZWwucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmxhYmVsLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmxhYmVsLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5sYWJlbC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ubGFiZWwuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xufVxuLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbn1cbi5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG59XG4ucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xufVxuLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG59XG5cbi5wcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuLnNsaWRlci1maWxsLmlzLWRyYWdnaW5nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbn1cblxuLnNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IGdyYWI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuc2xpZGVyLWhhbmRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG4uc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOS41NSwgMTAyLjg1LCAxNTguMSk7XG59XG4uc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi5zbGlkZXIuZGlzYWJsZWQsXG4uc2xpZGVyW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG4uc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnN3aXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgaGVpZ2h0OiAycmVtO1xufVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3dpdGNoLXBhZGRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5pbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgbWFyZ2luOiAwO1xufVxuLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBjb250ZW50OiBcIlwiO1xufVxuaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbn1cbmlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAyLjI1cmVtO1xufVxuaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogcmdiKDE4MS44LCAxODEuOCwgMTgxLjgpO1xufVxuaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5pbnB1dDpjaGVja2VkOmZvY3VzLXZpc2libGUgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6IHJnYigxOS41NSwgMTAyLjg1LCAxNTguMSk7XG59XG5pbnB1dDpkaXNhYmxlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC41O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLnN3aXRjaC1pbmFjdGl2ZSwgLnN3aXRjaC1hY3RpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5pbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dpdGNoLWluYWN0aXZlIHtcbiAgcmlnaHQ6IDE1JTtcbn1cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3dpdGNoLnRpbnkge1xuICBoZWlnaHQ6IDEuNXJlbTtcbn1cbi5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbn1cbi5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG59XG4uc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDEuNzVyZW07XG59XG5cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07XG59XG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbn1cbi5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDJyZW07XG59XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xufVxuLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi43NXJlbTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbnRoZWFkLFxudGJvZHksXG50Zm9vdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogcmdiKDI0Ny42NSwgMjQ3LjY1LCAyNDcuNjUpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGZvb3Qge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG50aGVhZCB0cixcbnRmb290IHRyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG50aGVhZCB0aCxcbnRoZWFkIHRkLFxudGZvb3QgdGgsXG50Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRib2R5IHRoLFxudGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG59XG5cbnRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbn1cblxudGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbnRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQyLjU1LCAyNDIuNTUsIDI0Mi41NSk7XG59XG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzYuMiwgMjM2LjIsIDIzNi4yKTtcbn1cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OC45LCAyNDguOSwgMjQ4LjkpO1xufVxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNi4xNSwgMjM2LjE1LCAyMzYuMTUpO1xufVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5iYWRnZS5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYmFkZ2Uuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJhZGdlLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5iYWRnZS5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnJlYWRjcnVtYnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uYnJlYWRjcnVtYnM6OmJlZm9yZSwgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5icmVhZGNydW1icyBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5icmVhZGNydW1icyBsaTpub3QoOmxhc3QtY2hpbGQpOjphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAuNzVyZW07XG4gIG9wYWNpdHk6IDE7XG4gIGNvbnRlbnQ6IFwiL1wiO1xuICBjb2xvcjogI2NhY2FjYTtcbn1cbi5icmVhZGNydW1icyBhIHtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnJlYWRjcnVtYnMgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmJyZWFkY3J1bWJzIC5kaXNhYmxlZCB7XG4gIGNvbG9yOiAjY2FjYWNhO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uY2FsbG91dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTQuODUsIDI1NC44NSwgMjU0Ljg1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmNhbGxvdXQgPiA6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLmNhbGxvdXQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2FsbG91dC5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIxNC44MTg2NjAyODcxLCAyMzUuOTg5NDczNjg0MiwgMjUwLjAzMTMzOTcxMjkpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0LnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzQuNDUsIDIzNC40NSwgMjM0LjQ1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIyNS40NSwgMjQ5LjYsIDIzNC40NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQud2FybmluZyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNTUsIDI0Mi44NSwgMjE2Ljc1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5hbGVydCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDcuMzUsIDIyOCwgMjI1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zbWFsbCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4uY2FsbG91dC5sYXJnZSB7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1sZWZ0OiAzcmVtO1xufVxuXG4uY2FyZCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWRpdmlkZXIge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuLmNhcmQtZGl2aWRlciA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG4uY2FyZC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1pbWFnZSB7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBkaXNwbGF5OiBub25lO1xuICB3aWR0aDogMzAwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmRyb3Bkb3duLXBhbmUuaXMtb3BlbmluZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmRyb3Bkb3duLXBhbmUuaXMtb3BlbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uZHJvcGRvd24tcGFuZS50aW55IHtcbiAgd2lkdGg6IDEwMHB4O1xufVxuXG4uZHJvcGRvd24tcGFuZS5zbWFsbCB7XG4gIHdpZHRoOiAyMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUubGFyZ2Uge1xuICB3aWR0aDogNDAwcHg7XG59XG5cbi5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4ucGFnaW5hdGlvbjo6YmVmb3JlLCAucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG4ucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5wYWdpbmF0aW9uIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi5wYWdpbmF0aW9uIGEsXG4ucGFnaW5hdGlvbiBidXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5wYWdpbmF0aW9uIGE6aG92ZXIsXG4ucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGNvbG9yOiAjY2FjYWNhO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBjb250ZW50OiBcIuKAplwiO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6IFwiwqtcIjtcbn1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiBcIsK7XCI7XG59XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzhhOGE4YTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgei1pbmRleDogMTIwMDtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnRvb2x0aXA6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi50b29sdGlwLmJvdHRvbTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBib3R0b206IDEwMCU7XG59XG4udG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbn1cbi50b29sdGlwLnRvcC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gIGxlZnQ6IDEwMCU7XG59XG4udG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLnRvb2x0aXAucmlnaHQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4udG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiAxMCU7XG59XG4udG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gIGJvdHRvbTogMTAlO1xuICB0b3A6IGF1dG87XG59XG4udG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICBsZWZ0OiAxMCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBjb250ZW50OiBcIitcIjtcbn1cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAk1wiO1xufVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb246Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLnN0YWNrLWZvci1zbWFsbCAubWVkaWEtb2JqZWN0LXNlY3Rpb24gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLm1pZGRsZSB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24uYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLm9yYml0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ub3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9yYml0LXNsaWRlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5vcmJpdC1zbGlkZS5uby1tb3Rpb251aS5pcy1hY3RpdmUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1pbWFnZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5vcmJpdC1uZXh0LCAub3JiaXQtcHJldmlvdXMge1xuICB6LWluZGV4OiAxMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LW5leHQsIFtkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LXByZXZpb3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1uZXh0OmhvdmVyLCAub3JiaXQtcHJldmlvdXM6aG92ZXIsIC5vcmJpdC1uZXh0OmFjdGl2ZSwgLm9yYml0LXByZXZpb3VzOmFjdGl2ZSwgLm9yYml0LW5leHQ6Zm9jdXMsIC5vcmJpdC1wcmV2aW91czpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC41KTtcbn1cblxuLm9yYml0LXByZXZpb3VzIHtcbiAgbGVmdDogMDtcbn1cblxuLm9yYml0LW5leHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMDtcbn1cblxuLm9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vcmJpdC1idWxsZXRzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbiB7XG4gIHdpZHRoOiAxLjJyZW07XG4gIGhlaWdodDogMS4ycmVtO1xuICBtYXJnaW46IDAuMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbi5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xufVxuXG4ucmVzcG9uc2l2ZS1lbWJlZCxcbi5mbGV4LXZpZGVvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4ucmVzcG9uc2l2ZS1lbWJlZCBpZnJhbWUsXG4ucmVzcG9uc2l2ZS1lbWJlZCBvYmplY3QsXG4ucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbi5yZXNwb25zaXZlLWVtYmVkIHZpZGVvLFxuLmZsZXgtdmlkZW8gaWZyYW1lLFxuLmZsZXgtdmlkZW8gb2JqZWN0LFxuLmZsZXgtdmlkZW8gZW1iZWQsXG4uZmxleC12aWRlbyB2aWRlbyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbi5mbGV4LXZpZGVvLndpZGVzY3JlZW4ge1xuICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlO1xufVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLnRhYnM6OmJlZm9yZSwgLnRhYnM6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLnRhYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwO1xufVxuLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xufVxuLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHJnYigyMS44NSwgMTE0Ljk1LCAxNzYuNyk7XG59XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4udGFicy10aXRsZSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAudGFicy10aXRsZSA+IGEge1xuICBvdXRsaW5lOiAwO1xufVxuLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6IHJnYigxOS43OCwgMTA0LjA2LCAxNTkuOTYpO1xufVxuLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLnRhYnMtcGFuZWwuaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiBzb2xpZCA0cHggI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbmEudGh1bWJuYWlsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbn1cbmEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjMsIDEyMSwgMTg2LCAwLjUpO1xufVxuYS50aHVtYm5haWwgaW1hZ2Uge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAubWVudSBsaSB7XG4gIG91dGxpbmU6IDA7XG59XG4ubWVudSBhLFxuLm1lbnUgLmJ1dHRvbiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5tZW51IGlucHV0LFxuLm1lbnUgc2VsZWN0LFxuLm1lbnUgYSxcbi5tZW51IGJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ubWVudSBpbnB1dCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5tZW51IGxpLCAubWVudS5ob3Jpem9udGFsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUudmVydGljYWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5tZW51LmV4cGFuZGVkIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1lbnUuZXhwYW5kZWQgPiBsaSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUuc2ltcGxlIGEge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lbnUubWVkaXVtLWhvcml6b250YWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAubWVudS5tZWRpdW0tdmVydGljYWwgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLWV4cGFuZGVkID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAubWVudS5tZWRpdW0tc2ltcGxlIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubWVudS5tZWRpdW0tc2ltcGxlID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5tZW51LmxhcmdlLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS5sYXJnZS1leHBhbmRlZCB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgPiBsaSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubGFyZ2Utc2ltcGxlID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuLm1lbnUubmVzdGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5tZW51Lmljb25zIGltZyxcbi5tZW51Lmljb25zIGksXG4ubWVudS5pY29ucyBzdmcge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lbnUuaWNvbnMgaW1nICsgc3Bhbixcbi5tZW51Lmljb25zIGkgKyBzcGFuLFxuLm1lbnUuaWNvbnMgc3ZnICsgc3BhbiB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubWVudS5pY29uLXRvcCBpbWcsXG4ubWVudS5pY29uLXRvcCBpLFxuLm1lbnUuaWNvbi10b3Agc3ZnLCAubWVudS5pY29uLXJpZ2h0IGltZyxcbi5tZW51Lmljb24tcmlnaHQgaSxcbi5tZW51Lmljb24tcmlnaHQgc3ZnLCAubWVudS5pY29uLWJvdHRvbSBpbWcsXG4ubWVudS5pY29uLWJvdHRvbSBpLFxuLm1lbnUuaWNvbi1ib3R0b20gc3ZnLCAubWVudS5pY29uLWxlZnQgaW1nLFxuLm1lbnUuaWNvbi1sZWZ0IGksXG4ubWVudS5pY29uLWxlZnQgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5tZW51Lmljb24tdG9wIGltZyArIHNwYW4sXG4ubWVudS5pY29uLXRvcCBpICsgc3Bhbixcbi5tZW51Lmljb24tdG9wIHN2ZyArIHNwYW4sIC5tZW51Lmljb24tcmlnaHQgaW1nICsgc3Bhbixcbi5tZW51Lmljb24tcmlnaHQgaSArIHNwYW4sXG4ubWVudS5pY29uLXJpZ2h0IHN2ZyArIHNwYW4sIC5tZW51Lmljb24tYm90dG9tIGltZyArIHNwYW4sXG4ubWVudS5pY29uLWJvdHRvbSBpICsgc3Bhbixcbi5tZW51Lmljb24tYm90dG9tIHN2ZyArIHNwYW4sIC5tZW51Lmljb24tbGVmdCBpbWcgKyBzcGFuLFxuLm1lbnUuaWNvbi1sZWZ0IGkgKyBzcGFuLFxuLm1lbnUuaWNvbi1sZWZ0IHN2ZyArIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgaSxcbi5tZW51Lmljb24tbGVmdCBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBpLFxuLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudS5pY29uLXRvcCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51Lmljb24tdG9wIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUuaWNvbi10b3AgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLXRvcCBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG8gMC4yNXJlbTtcbn1cbi5tZW51Lmljb24tYm90dG9tIGxpIGEsIC5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgaW1nLFxuLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuMjVyZW0gYXV0byAwO1xufVxuLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tZW51IC5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubWVudS5hbGlnbi1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5hbGlnbi1jZW50ZXIgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLm1lbnUgLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUtY2VudGVyZWQgPiAubWVudSAuc3VibWVudSBsaSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi5uby1qcyBbZGF0YS1yZXNwb25zaXZlLW1lbnVdIHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lbnUtaWNvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNmZWZlZmUsIDAgMTRweCAwICNmZWZlZmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4ubWVudS1pY29uOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgI2NhY2FjYSwgMCAxNHB4IDAgI2NhY2FjYTtcbn1cblxuLm1lbnUtaWNvbi5kYXJrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5tZW51LWljb24uZGFyazo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjMGEwYTBhLCAwIDE0cHggMCAjMGEwYTBhO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbi5kYXJrOmhvdmVyOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICM4YThhOGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzhhOGE4YSwgMCAxNHB4IDAgIzhhOGE4YTtcbn1cblxuLmFjY29yZGlvbi1tZW51IGxpIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uYWNjb3JkaW9uLW1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTNweDtcbiAgcmlnaHQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tbGVmdCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bztcbn1cbi5hY2NvcmRpb24tbWVudS5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gPiBhOjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG59XG5cbi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xufVxuXG4uc3VibWVudS10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5zdWJtZW51LXRvZ2dsZTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogYXV0bztcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlW2FyaWEtZXhwYW5kZWQ9dHJ1ZV06OmFmdGVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uc3VibWVudS10b2dnbGUtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1kcmlsbGRvd24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uaXMtZHJpbGxkb3duIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaXMtZHJpbGxkb3duLmFuaW1hdGUtaGVpZ2h0IHtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG59XG5cbi5kcmlsbGRvd24gYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtYWN0aXZlIHtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1jbG9zaW5nIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmRyaWxsZG93biAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcmlsbGRvd24gLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgbWluLWhlaWdodDogMTAwJTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC02cHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmRyaWxsZG93bi5hbGlnbi1sZWZ0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIHJpZ2h0OiAxcmVtO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyaWxsZG93bi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxcmVtO1xufVxuLmRyaWxsZG93biAuanMtZHJpbGxkb3duLWJhY2sgPiBhOjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtM3B4O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuZHJvcGRvd24ubWVudSBhIHtcbiAgb3V0bGluZTogMDtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4ubm8tanMgLmRyb3Bkb3duLm1lbnUgdWwge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmRyb3Bkb3duLm1lbnUgLm5lc3RlZC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiA1cHg7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiAxNHB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAxMDAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IDVweDtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDEwMCU7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICB9XG59XG4uZHJvcGRvd24ubWVudS5hbGlnbi1yaWdodCAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuXG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbCB7XG4gIHdpZHRoOiAxMDBweDtcbn1cbi5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsLmFsaWduLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgYTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogNXB4O1xuICBsZWZ0OiBhdXRvO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IDEwMCU7XG4gIGxlZnQ6IGF1dG87XG59XG4uaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAxMDAlO1xufVxuXG4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAxMDAlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBub25lO1xuICBtaW4td2lkdGg6IDIwMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuLmRyb3Bkb3duIC5pcy1kcm9wZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDE0cHg7XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBtYXJnaW4tdG9wOiAtMXB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgPiBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUuanMtZHJvcGRvd24tYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU0LCAyNTQsIDI1NCwgMC4yNSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtdmlzaWJsZSB7XG4gIG9wYWNpdHk6IDE7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4ub2ZmLWNhbnZhcy13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG4ub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiAxMztcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBvdXRsaW5lOiAwO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICB6LWluZGV4OiAxMztcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHdpZHRoOiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdCB7XG4gICAgd2lkdGg6IDI1MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG4gIH1cbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tcmlnaHQge1xuICAgIHdpZHRoOiAyNTBweDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbiAgfVxufVxuXG4ucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgaGVpZ2h0OiAyNTBweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tdG9wIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXRvcC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB9XG59XG5cbi5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIGhlaWdodDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tYm90dG9tIHtcbiAgICBoZWlnaHQ6IDI1MHB4O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gIH1cbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gIH1cbn1cblxuLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5odG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuaHRtbC5pcy1yZXZlYWwtb3Blbi56Zi1oYXMtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5odG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMDA1O1xuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNDUpO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi5yZXZlYWwge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAucmV2ZWFsIHtcbiAgb3V0bGluZTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cbn1cbi5yZXZlYWwgLmNvbHVtbiwgLnJldmVhbCAuY29sdW1ucyB7XG4gIG1pbi13aWR0aDogMDtcbn1cbi5yZXZlYWwgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsIHtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuLnJldmVhbC5jb2xsYXBzZSB7XG4gIHBhZGRpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLnRpbnkge1xuICAgIHdpZHRoOiAzMCU7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5zbWFsbCB7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLmxhcmdlIHtcbiAgICB3aWR0aDogOTAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbi5yZXZlYWwuZnVsbCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uc3RpY2t5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAwO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc3RpY2t5LmlzLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA1O1xuICB3aWR0aDogMTAwJTtcbn1cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtdG9wIHtcbiAgdG9wOiAwO1xufVxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC1ib3R0b20ge1xuICBib3R0b206IDA7XG59XG5cbi5zdGlja3kuaXMtYW5jaG9yZWQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiBhdXRvO1xufVxuLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICBib3R0b206IDA7XG59XG5cbi50aXRsZS1iYXIge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnRpdGxlLWJhcjo6YmVmb3JlLCAudGl0bGUtYmFyOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi50aXRsZS1iYXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4udGl0bGUtYmFyIC5tZW51LWljb24ge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuXG4udGl0bGUtYmFyLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50aXRsZS1iYXItdGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4udG9wLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cbi50b3AtYmFyOjpiZWZvcmUsIC50b3AtYmFyOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi50b3AtYmFyOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4udG9wLWJhciBpbnB1dCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udG9wLWJhciBpbnB1dC5idXR0b24ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50b3AtYmFyIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4udG9wLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xufVxuLnRvcC1iYXItdGl0bGUgLm1lbnUtaWNvbiB7XG4gIGJvdHRvbTogMnB4O1xufVxuXG4udG9wLWJhci1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1yaWdodCB7XG4gIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xufVxuXG4uZmxvYXQtY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmludmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnZpc2libGUge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGlkZS1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3Itc3IsXG4uc2hvdy1vbi1mb2N1cyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLnNob3ctZm9yLWxhbmRzY2FwZSxcbi5oaWRlLWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LWZvci1pZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gIC5zaG93LWZvci1pZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pcy1zdHVjayAuaGlkZS1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbn1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS10b3AubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXgubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4ubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLWNjdy5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQtY2N3Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNsb3cge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50O1xufVxuXG4uZmFzdCB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4ge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaG9ydC1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlLTc7XG59XG5Aa2V5ZnJhbWVzIHNoYWtlLTcge1xuICAwJSwgMTAlLCAyMCUsIDMwJSwgNDAlLCA1MCUsIDYwJSwgNzAlLCA4MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDclKTtcbiAgfVxuICA1JSwgMTUlLCAyNSUsIDM1JSwgNDUlLCA1NSUsIDY1JSwgNzUlLCA4NSUsIDk1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC03JSk7XG4gIH1cbn1cblxuLnNwaW4tY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jdy0xdHVybjtcbn1cbkBrZXlmcmFtZXMgc3Bpbi1jdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zcGluLWNjdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWNjdy0xdHVybjtcbn1cbkBrZXlmcmFtZXMgc3Bpbi1jY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxufVxuXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdpZ2dsZS03ZGVnO1xufVxuQGtleWZyYW1lcyB3aWdnbGUtN2RlZyB7XG4gIDQwJSwgNTAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDdkZWcpO1xuICB9XG4gIDM1JSwgNDUlLCA1NSUsIDY1JSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTdkZWcpO1xuICB9XG4gIDAlLCAzMCUsIDcwJSwgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbn1cblxuLnNoYWtlLFxuLnNwaW4tY3csXG4uc3Bpbi1jY3csXG4ud2lnZ2xlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcztcbn1cblxuLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbi5zbG93IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiA3NTBtcyAhaW1wb3J0YW50O1xufVxuXG4uZmFzdCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDtcbn1cblxuLmxpbmVhciB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG4uZWFzZSB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4ge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzYsIC0wLjI0NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5zaG9ydC1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDtcbn1cblxuLmxvbmctZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmIHVybChcIi4vYWpheC1sb2FkZXIuZ2lmXCIpIGNlbnRlciBjZW50ZXIgbm8tcmVwZWF0O1xufVxuXG4vKiBJY29ucyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIHNyYzogdXJsKFwiLi9mb250cy9zbGljay5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi9mb250cy9zbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi9mb250cy9zbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLyogQXJyb3dzICovXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyxcbi5zbGljay1uZXh0OmhvdmVyLFxuLnNsaWNrLW5leHQ6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLXByZXY6aG92ZXI6YmVmb3JlLCAuc2xpY2stcHJldjpmb2N1czpiZWZvcmUsXG4uc2xpY2stbmV4dDpob3ZlcjpiZWZvcmUsXG4uc2xpY2stbmV4dDpmb2N1czpiZWZvcmUge1xuICBvcGFjaXR5OiAxO1xufVxuLnNsaWNrLXByZXYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlLFxuLnNsaWNrLW5leHQuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC4yNTtcbn1cbi5zbGljay1wcmV2OmJlZm9yZSxcbi5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogLTI1cHg7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLXByZXYge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTI1cHg7XG59XG4uc2xpY2stcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGkFwiO1xufVxuW2Rpcj1ydGxdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaSXCI7XG59XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IC0yNXB4O1xufVxuW2Rpcj1ydGxdIC5zbGljay1uZXh0IHtcbiAgbGVmdDogLTI1cHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpJcIjtcbn1cbltkaXI9cnRsXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGkFwiO1xufVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNsaWNrLWRvdHMgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIGZvbnQtc2l6ZTogNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICBjb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuNzU7XG59XG5cbi5zbGljay1sb2FkaW5nIC5zbGljay1saXN0IHtcbiAgYmFja2dyb3VuZDogI2ZmZiB1cmwoXCIuLy4uL2ltYWdlcy92ZW5kb3JzL2FqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZnAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWZwLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHotaW5kZXg6IDEwNDU7XG59XG5cbi5tZnAtaW5saW5lLWhvbGRlciAubWZwLWNvbnRlbnQsXG4ubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZnAtYWpheC1jdXIge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4ubWZwLXpvb20tb3V0LWN1ciwgLm1mcC16b29tLW91dC1jdXIgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICBjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4ubWZwLXpvb20ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4ubWZwLWF1dG8tY3Vyc29yIC5tZnAtY29udGVudCB7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC1jbG9zZSxcbi5tZnAtYXJyb3csXG4ubWZwLXByZWxvYWRlcixcbi5tZnAtY291bnRlciB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1mcC1wcmVsb2FkZXIge1xuICBjb2xvcjogI0NDQztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLTAuOGVtO1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiA4cHg7XG4gIHotaW5kZXg6IDEwNDQ7XG59XG4ubWZwLXByZWxvYWRlciBhIHtcbiAgY29sb3I6ICNDQ0M7XG59XG4ubWZwLXByZWxvYWRlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5tZnAtcy1yZWFkeSAubWZwLXByZWxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtcy1lcnJvciAubWZwLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5idXR0b24ubWZwLWNsb3NlLCBidXR0b24ubWZwLWFycm93IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTA0NjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5tZnAtY2xvc2Uge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMC42NTtcbiAgcGFkZGluZzogMCAwIDE4cHggMTBweDtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7XG59XG4ubWZwLWNsb3NlOmhvdmVyLCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5tZnAtY2xvc2U6YWN0aXZlIHtcbiAgdG9wOiAxcHg7XG59XG5cbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogIzMzMztcbn1cblxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSxcbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICNGRkY7XG4gIHJpZ2h0OiAtNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1mcC1jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI0NDQztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1mcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTU1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA5MHB4O1xuICBoZWlnaHQ6IDExMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ubWZwLWFycm93OmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IC01NHB4O1xufVxuLm1mcC1hcnJvdzpob3ZlciwgLm1mcC1hcnJvdzpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG59XG4ubWZwLWFycm93OmJlZm9yZSwgLm1mcC1hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xufVxuLm1mcC1hcnJvdzphZnRlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDEzcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7XG4gIHRvcDogOHB4O1xufVxuLm1mcC1hcnJvdzpiZWZvcmUge1xuICBib3JkZXItdG9wLXdpZHRoOiAyMXB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5tZnAtYXJyb3ctbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG4ubWZwLWFycm93LWxlZnQ6YWZ0ZXIge1xuICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDMxcHg7XG59XG4ubWZwLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAjM0YzRjNGO1xufVxuXG4ubWZwLWFycm93LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG59XG4ubWZwLWFycm93LXJpZ2h0OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDM5cHg7XG59XG4ubWZwLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7XG59XG5cbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG59XG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gIHRvcDogLTQwcHg7XG59XG5cbi5tZnAtaWZyYW1lLXNjYWxlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG4ubWZwLWlmcmFtZS1zY2FsZXIgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLyogTWFpbiBpbWFnZSBpbiBwb3B1cCAqL1xuaW1nLm1mcC1pbWcge1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogNDBweCAwIDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cbi5tZnAtZmlndXJlIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4ubWZwLWZpZ3VyZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0MHB4O1xuICBib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuLm1mcC1maWd1cmUgc21hbGwge1xuICBjb2xvcjogI0JEQkRCRDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG59XG4ubWZwLWZpZ3VyZSBmaWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5tZnAtYm90dG9tLWJhciB7XG4gIG1hcmdpbi10b3A6IC0zNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogI0YzRjNGMztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBwYWRkaW5nLXJpZ2h0OiAzNnB4O1xufVxuXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XG4gIC8qKlxuICAgKiBSZW1vdmUgYWxsIHBhZGRpbmdzIGFyb3VuZCB0aGUgaW1hZ2Ugb24gc21hbGwgc2NyZWVuXG4gICAqL1xuICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSBpbWcubWZwLWltZyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmU6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgcGFkZGluZzogM3B4IDVweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyOmVtcHR5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNvdW50ZXIge1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY2xvc2Uge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLm1mcC1hcnJvdyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIH1cbiAgLm1mcC1hcnJvdy1sZWZ0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgfVxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbiAgfVxuICAubWZwLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgcGFkZGluZy1yaWdodDogNnB4O1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMS4gR2VuZXJhbCAoRm91bmRhdGlvbiBPdmVycmlkZXMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEuIEdlbmVyYWwgKEZvdW5kYXRpb24gT3ZlcnJpZGVzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIG1hcmdpbjogMDtcbn1cbmJvZHkuc2xpZGUtYWN0aXZlIHtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuYm9keSB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuN3M7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5ib2R5LmZhZGUge1xuICBvcGFjaXR5OiAwO1xufVxuXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cblxuaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5cbnAge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuYSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbmE6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cblxudWwsXG5vbCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG50YWJsZSB7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYm9yZGVyOiAwO1xufVxuXG50YWJsZSB0ciB0ZCxcbnRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG50YWJsZSB0aGVhZCB0ciB0aCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kOiAjNzA3MDcwO1xufVxuXG4uYmctaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuXG4uaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4ucHJvZHVjdC1wYXJhZ3JhcGgge1xuICBjb2xvcjogIzAwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5cbi5pbmZvLS1saW1pdCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbmZvLS1oZWlnaHQge1xuICBoZWlnaHQ6IDZlbTtcbn1cblxuLnBhcmFsbGF4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucGFyYWxsYXgge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5wYXJhbGxheCBoMSxcbi5wYXJhbGxheCBoMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogM3JlbTtcbiAgdG9wOiAyNSU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhcmFsbGF4IGgxLFxuICAucGFyYWxsYXggaDIge1xuICAgIHBhZGRpbmc6IDQuNXJlbSA1LjQzNzVyZW07XG4gIH1cbn1cbi5wYXJhbGxheCBoMSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFyYWxsYXggaDEge1xuICAgIGZvbnQtc2l6ZTogNi41cmVtO1xuICB9XG59XG4ucGFyYWxsYXggaDEgLnRpdGxlIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnBhcmFsbGF4IGgxIC5zdWJ0aXRsZSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTNweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5wYXJhbGxheCBoMSAuc3VidGl0bGUgc3BhbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbn1cbi5wYXJhbGxheCAuaW1nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4ucGFyYWxsYXggLmltZyAuYmctdG9wIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbn1cbi5wYXJhbGxheCAuaW1nOmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG5cbi53aGl0ZS1wb3B1cCB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDQwMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuLndoaXRlLXBvcHVwIC5wb3B1cC1oZWFkZXIge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi53aGl0ZS1wb3B1cCAuYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cbi5uby1yZXN1bHRzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6IHdoaXRlO1xuICBkaXNwbGF5OiBub25lO1xufVxuLm92ZXJsYXktLW5hdiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0b3A6IDMuMnJlbTtcbn1cblxuLnByaW1hcnkge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuLnByaW1hcnktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuXG4ucHJpbWFyeS1idG4ge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDAuOHJlbSAxLjlyZW07XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5wcmltYXJ5LWJ0biBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5yZWQtYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuXG4uYmxhY2stZm9udCB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ucmVkIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5cbi53aGl0ZSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uIHtcbiAgbWF4LXdpZHRoOiAxNjZweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMGEwYTBhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbjpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzY2NjY2Njtcbn1cblxuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U3ZTdlNztcbiAgY29sb3I6ICMzMjMyMzI7XG59XG5cbi5ibGFjayxcbi5idXR0b24uYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLFxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uZm9udC1saWdodCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbi5mb250LWJvbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uZm9udC1oZWF2eSB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG59XG5cbi5mb250LWl0YWxpYyB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLmctcmVjYXB0Y2hhIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbiNjYXB0Y2hhQ2hlY2sge1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5wYWRkZWQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5cbi5wYWRkZWQuZXh0cmEge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG5cbi5wYWRkZWQuc2hvcnQge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuXG4ucGFkZGVkLWxlZnQge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cblxuLnBhZGRlZC1yaWdodCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cblxuLmNvbnRhaW5lci1wYWRkaW5nLS1iIHtcbiAgcGFkZGluZy1ib3R0b206IDRyZW07XG59XG5cbi5hY2NvcmRpb24gLmFjY29yZGlvbi1uYXZpZ2F0aW9uID4gLmNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5hbmNob3Ige1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTNyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5mdWxsLXdpZHRoIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLm1lbnUuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRpdGxlLWJhcixcbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4udG9wLWJhciB1bC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI1NSwgMjU1LCAyNTUpO1xuICBib3JkZXI6IDBweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50LmlzLWRvd24tYXJyb3cgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAwcHg7XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6ICNlYjIxMmUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ViMjEyZTtcbiAgcmlnaHQ6IDVweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaSA+IGE6aG92ZXIsXG4uZHJvcGRvd24ubWVudSA+IGxpID4gdWwgbGkgYTpob3Zlcixcbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtYWN0aXZlID4gYSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gdWwgbGkgYSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwcmVtO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDE1NCU7XG4gIG1pbi13aWR0aDogMjgwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG5hZGRyZXNzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4jaW5zdGFmZWVkIC5jb2x1bW4sICNpbnN0YWZlZWQgLmNvbHVtbnMge1xuICBwYWRkaW5nOiAxcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYzZW0pIHtcbiAgLmludC5zaXRlLWNvbnRlbnQgLmgyIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuLyoqKioqKioqKiBWSURFTyAqKioqKioqKiovXG4jdmlkZW9zIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbiN2aWRlb3MgYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2O1xufVxuI3ZpZGVvcyBhOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xufVxuI3ZpZGVvcyBwIHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG4jdmlkZW9zICNuZXh0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG4jdmlkZW9zICN2aWRlby1jb250YWluZXIgLmNvbHVtbiBhLCAjdmlkZW9zICN2aWRlby1jb250YWluZXIgLmNvbHVtbnMgYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53aGl0ZS1wb3B1cC0td2lkZSB7XG4gIG1heC13aWR0aDogNzAwcHg7XG59XG5cbi5ob3Zlci1pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4uaG92ZXItaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaG92ZXItaXRlbTpob3ZlciAuaG92ZXItaXRlbV9faW1nIHtcbiAgb3BhY2l0eTogMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5ob3Zlci1pdGVtX19oZWFkZXIge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5ob3Zlci1pdGVtX19oZWFkZXIsXG4uaG92ZXItaXRlbSBoNiBzbWFsbCB7XG4gIGNvbG9yOiAjNTQ1NDU0O1xufVxuLmhvdmVyLWl0ZW1fX2ltZyB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC1hbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ucG9wdXAtYmtnIC5tZnAtaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnBvcHVwLWJrZyAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICMwMDA7XG4gIHJpZ2h0OiAwO1xufVxuXG4uc29jaWFsLW1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNvY2lhbC1tZW51ID4gZGl2IHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnNvY2lhbC1tZW51IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuXG4ucm93IHtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIC8qICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICB9Ki9cbn1cbi5wYWdlLWhlYWRlciAucm93IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ucGFnZS1oZWFkZXIgaDEge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgICBmb250LXNpemU6IDIuNzVyZW07XG4gIH1cbn1cbi5wYWdlLWhlYWRlciBoMSB7XG4gIC8qXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGhlaWdodDogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDoyMTRweDtcbiAgICBtYXJnaW46MCBhdXRvO1xuICB9Ki9cbn1cbi5wYWdlLWhlYWRlciBwIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLWhlYWRlciBwIHtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBtYXgtd2lkdGg6IDM3MHB4O1xuICB9XG59XG4ucGFnZS1oZWFkZXIge1xuICAvKlxuICAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MTIwMHB4KXtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6MTQwJTtcbiAgICB9XG4gIH0qL1xufVxuLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIHtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICB9XG59XG5cbi8qXG4ucGFnZS1oZWFkZXIge1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIC8vaGVpZ2h0OjEwMHZoO1xuICB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIC5yb3cge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6MCAyLjgxMjVyZW07XG4gICAgfVxuICB9XG4gIC5wYWdlLXRpdGxlIHtcbiAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzo0cmVtIDA7XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuKi9cbi5wYWdlLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuXG4ubG9hZGluZy1wYWdlIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGJvcmRlcjogNjAwcHggc29saWQgI2ViMjEyZTtcbiAgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xufVxuLmxvYWRpbmctcGFnZS5jbG9zZSB7XG4gIGJvcmRlcjogMHB4IHNvbGlkICNlYjIxMmU7XG59XG4ubG9hZGluZy1wYWdlLXBvcHVwIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiA5OTk5O1xuICBoZWlnaHQ6IDEwMHZoO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGJvcmRlcjogNjAwcHggc29saWQgcmdiYSgwLCAwLCAwLCAwLjcpO1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbn1cbi5sb2FkaW5nLXBhZ2UtcG9wdXAuc2hvdyB7XG4gIG9wYWNpdHk6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmxvYWRpbmctcGFnZS1wb3B1cC5mYW5jeWJveC1tYXJnaW4ge1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0aW5nIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGluZyB7XG4gIGZyb20ge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgdG8ge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG4ubG9hZGluZy1wYWdlLXBvcHVwIC5yb3RhdGluZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1tb3otYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1tcy1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW8tYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICBmb250LXNpemU6IDNyZW07XG59XG5cbltkYXRhLWZjLXNpZGVjYXJ0XSAjZmMgbmF2IC5mYy1maXhlZC1idXR0b24tcmlnaHQgLmZjLXNpZGVjYXJ0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMzMzY2OTk7XG59XG5bZGF0YS1mYy1zaWRlY2FydF0gI2ZjIC5mYy1hY3Rpb24tLWNoZWNrb3V0LS1idXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMzM2Njk5O1xufVxuW2RhdGEtZmMtc2lkZWNhcnRdICNmYyAuZmMtYWN0aW9uLS1jaGVja291dC0tYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbiNmaXRtZW50LXBvcHVwIHtcbiAgcGFkZGluZzogMnJlbTtcbn1cbiNmaXRtZW50LXBvcHVwIC5maXRtZW50LXBvcHVwLWljb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBmb250LXNpemU6IDJyZW07XG59XG4jZml0bWVudC1wb3B1cCBoNCB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jZml0bWVudC1wb3B1cCBzZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xufVxuI2ZpdG1lbnQtcG9wdXAgLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbn1cbiNmaXRtZW50LXBvcHVwICNmaXRtZW50Q2xlYXIge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNmaXRtZW50LXBvcHVwICNmaXRtZW50Q2xlYXI6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuLnByb2Nlc3Npbmcge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbn1cbi5wcm9jZXNzaW5nIC5tZnAtY2xvc2Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnByb2Nlc3Npbmcud2hpdGUge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xufVxuXG4jbmV3c2xldHRlci1wb3B1cCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA1ODBweDtcbiAgcGFkZGluZzogM3JlbTtcbn1cbiNuZXdzbGV0dGVyLXBvcHVwIGkge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC1zaXplOiAyLjVyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbiNuZXdzbGV0dGVyLXBvcHVwIC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCAuaWNvbiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbiNuZXdzbGV0dGVyLXBvcHVwIC5jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbiNuZXdzbGV0dGVyLXBvcHVwICNtY19lbWJlZF9zaWdudXAgaW5wdXQge1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jbmV3c2xldHRlci1wb3B1cCAjbWNfZW1iZWRfc2lnbnVwIGlucHV0OjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xuICBjb2xvcjogIzY2NjY2NjtcbiAgb3BhY2l0eTogMTsgLyogRmlyZWZveCAqL1xufVxuI25ld3NsZXR0ZXItcG9wdXAgI21jX2VtYmVkX3NpZ251cCBpbnB1dDotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBJbnRlcm5ldCBFeHBsb3JlciAxMC0xMSAqL1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiNuZXdzbGV0dGVyLXBvcHVwICNtY19lbWJlZF9zaWdudXAgaW5wdXQ6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IC8qIE1pY3Jvc29mdCBFZGdlICovXG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuI25ld3NsZXR0ZXItcG9wdXAgI21jX2VtYmVkX3NpZ251cCBpbnB1dC5idXR0b24ge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTc1cHg7XG4gIGhlaWdodDogNTRweDtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDkuIFBhZ2luYXRpb25cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4ucGFnaW5hdGlvbiBsaSBhIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMTAuIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogaG9uZXlwb3QgKi9cbi5vaG5vaG9uZXkge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cbi8qIGxvYWRlciAqL1xuLmxkcy1lbGxpcHNpcyxcbi5sZHMtZWxsaXBzaXMgZGl2IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuLmxkcy1lbGxpcHNpcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBjb2xvcjogI2I5YjliOTtcbn1cblxuLmxkcy1lbGxpcHNpcyBkaXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMzMuMzMzMzNweDtcbiAgd2lkdGg6IDEzLjMzMzMzcHg7XG4gIGhlaWdodDogMTMuMzMzMzNweDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBiYWNrZ3JvdW5kOiBjdXJyZW50Q29sb3I7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLCAxLCAxLCAwKTtcbn1cblxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDEpIHtcbiAgbGVmdDogOHB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczEgMC42cyBpbmZpbml0ZTtcbn1cblxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgbGVmdDogOHB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczIgMC42cyBpbmZpbml0ZTtcbn1cblxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDMpIHtcbiAgbGVmdDogMzJweDtcbiAgYW5pbWF0aW9uOiBsZHMtZWxsaXBzaXMyIDAuNnMgaW5maW5pdGU7XG59XG5cbi5sZHMtZWxsaXBzaXMgZGl2Om50aC1jaGlsZCg0KSB7XG4gIGxlZnQ6IDU2cHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMyAwLjZzIGluZmluaXRlO1xufVxuXG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjRweCwgMCk7XG4gIH1cbn1cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxMS4gUG9wdXBzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm1mcC13cmFwIHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjMpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEyLiB5b3V0dWJlXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLnl0cC1wYXVzZS1vdmVybGF5LCAjcGxheWVyLWNvbnRyb2xzLCAjcGxheWVyLWNvbnRyb2wtb3ZlcmxheSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi50LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC50LWNlbnRlci0tc20ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLnQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvbG9yLS1ncmF5IHtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cbi5tYXJnaW4tLXRiIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5wYWRkaW5nLS10YiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVhZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG4gIC8qQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsMCwwLDEpIDAlLCByZ2JhKDAsMCwwLDEpIDQwJSwgcmdiYSg1MSw1MSw1MSwxKSA2MCUsIHJnYmEoNTEsNTEsNTEsMSkgMTAwJSk7XG4gIH0qL1xufVxuaGVhZGVyLm1haW4ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlci5tYWluIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5oZWFkZXIgLnJvdyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG59XG5oZWFkZXIgLnRvcC1iYXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuaGVhZGVyLnN0aWNreS5pcy1hbmNob3JlZC5pcy1hdC1ib3R0b20ge1xuICBib3R0b206IGF1dG87XG59XG5oZWFkZXIuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDAgIWltcG9ydGFudDtcbn1cbmhlYWRlciAuY3NzLTFpZDNuZm4ge1xuICBmaWxsOiBub25lO1xuICBzdHJva2U6ICNmZWZlZmU7XG59XG5oZWFkZXIgI3N2Zy1tZWdhbWVudS1vcGVuIHtcbiAgd2lkdGg6IDE4cHg7XG4gIGhlaWdodDogMThweDtcbiAgZmlsbDogI2ZlZmVmZTtcbiAgc3Ryb2tlLXdpZHRoOiAxcmVtO1xufVxuaGVhZGVyIC5oZWFkZXItbGVmdCwgaGVhZGVyIC5oZWFkZXItY2VudGVyLCBoZWFkZXIgLmhlYWRlci1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuaGVhZGVyIC5oZWFkZXItbGVmdCBzdmcgcGF0aCwgaGVhZGVyIC5oZWFkZXItbGVmdCBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHN0cm9rZTogI2ZlZmVmZTtcbn1cbmhlYWRlciAuaGVhZGVyLWxlZnQgYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5oZWFkZXItbGVmdCBidXR0b24ge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5oZWFkZXIgLmhlYWRlci1sZWZ0IGJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuaGVhZGVyIC5oZWFkZXItbGVmdCAuY3NzLTF3aGJwa24ge1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbn1cbmhlYWRlciAuaGVhZGVyLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuaGVhZGVyIC5oZWFkZXItY2VudGVyIC5oZWFkZXItbG9nbyB7XG4gIG1heC13aWR0aDogMjIwcHg7XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoZWFkZXIgLmhlYWRlci1yaWdodCAuaGVhZGVyLXNvY2lhbCB1bCA+IGxpIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCAuaGVhZGVyLXNvY2lhbCB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCAuaGVhZGVyLXNvY2lhbCB1bCA+IGxpIGEge1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xufVxuaGVhZGVyIC5oZWFkZXItcmlnaHQgLmhlYWRlci1zb2NpYWwgdWwgPiBsaSAuZm9vdGVyLXNvY2lhbC1kaXZpZGVyIHtcbiAgd2lkdGg6IDFweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5OTk5O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5oZWFkZXItc29jaWFsIGkge1xuICBoZWlnaHQ6IGF1dG87XG59XG5oZWFkZXIubWVnYW1lbnUtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbmhlYWRlci5tZWdhbWVudS1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuaGVhZGVyLm1lZ2FtZW51LWFjdGl2ZSB7XG4gIC8qLmhlYWRlci1sZWZ0IC5jc3MtMWlkM25mbiwgLmhlYWRlci1sZWZ0IHNwYW4ge1xuICAgIHN0cm9rZTokd2hpdGU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGZpbGw6JHdoaXRlO1xuICB9Ki9cbn1cbmhlYWRlciAubWVnYW1lbnUge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAubWVnYW1lbnUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIGhlaWdodDogNzV2aDtcbiAgfVxufVxuaGVhZGVyIC5tZWdhbWVudSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oZWFkZXIgLm1lZ2FtZW51IGEubWVudS1icmFuZHMgaSB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudSBhLm1lbnUtYnJhbmRzIGkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmhlYWRlciAubWVnYW1lbnUgaDIge1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5oZWFkZXIgLm1lZ2FtZW51LW1lbnUgdWwuZHJvcGRvd24ubWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi1ib3R0b206IDEuNzVyZW07XG59XG5oZWFkZXIgLm1lZ2FtZW51LW1lbnUgdWwuZHJvcGRvd24ubWVudTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbmhlYWRlciAubWVnYW1lbnUtbWVudSB1bC5kcm9wZG93bi5tZW51ID4gbGkgYSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC4yNXJlbSAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoZWFkZXIgLm1lZ2FtZW51LW1lbnUgdWwuZHJvcGRvd24ubWVudSA+IGxpIGEge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuaGVhZGVyIC5tZWdhbWVudS1tZW51IHtcbiAgLypcbiAgdWwubWVudSB7XG4gICAgPiBsaSB7XG4gICAgICAmOm50aC1jaGlsZCg0KSwgJjpudGgtY2hpbGQoNykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB9XG4gICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzQpe1xuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0qL1xufVxuaGVhZGVyIC5tZWdhbWVudS1tZW51LXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnkge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGhlaWdodDogMTAwdmg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogLTY0MHB4O1xuICBsZWZ0OiA2NDBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LmFjdGl2ZSB7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS5hY3RpdmUgLmNsb3NlLW1lbnUtYnJhbmRzIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS5hY3RpdmUgLmNsb3NlLW1lbnUtYnJhbmRzIGkge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5IHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICBoZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5IGE6aG92ZXIgLmltYWdlIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5IGE6aG92ZXIgLmltYWdlIHNwYW4ge1xuICBvcGFjaXR5OiAxO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5icmFuZCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuYnJhbmQgaW1nIHtcbiAgd2lkdGg6IDUwJTtcbiAgbWF4LWhlaWdodDogMzZweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuYnJhbmQgaW1nIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAzOHB4O1xuICB9XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LWl0ZW0taG92ZXItb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuZGlzY292ZXItbW9yZSB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LWl0ZW0gLmRpc2NvdmVyLW1vcmUgaSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeSB7XG4gIC8qLmVuZCB7XG4gICAgbWluLWhlaWdodDoxNDBweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNDg0cHgpIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgbWluLWhlaWdodDoxNTVweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1pbi1oZWlnaHQ6MTgycHg7XG4gICAgfVxuICB9Ki9cbn1cbmhlYWRlciAuaXMtZHJpbGxkb3duIHtcbiAgbWF4LXdpZHRoOiAzNzBweCAhaW1wb3J0YW50O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyIC5pcy1kcmlsbGRvd24ge1xuICAgIG1pbi1oZWlnaHQ6IDQ2Ni4xMjVweCAhaW1wb3J0YW50O1xuICB9XG59XG5cbmhlYWRlciAucm93IHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC8qXG4gICAgJi5yb3cge1xuICAgICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgfSovXG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci10aXRsZSB7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItdGl0bGUge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAjcmVzcG9uc2l2ZS1tZW51IHtcbiAgICB3aWR0aDogNjglO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAjcmVzcG9uc2l2ZS1tZW51IC50b3AtYmFyLXJpZ2h0LCBoZWFkZXIgLnRvcC1iYXIgI3Jlc3BvbnNpdmUtbWVudSAudG9wLWJhci1yaWdodCA+IHVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgI3Jlc3BvbnNpdmUtbWVudSAudG9wLWJhci1yaWdodCA+IHVsOmZpcnN0LWNoaWxkIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIC5uYXYtbWVudS1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHdpZHRoOiAxMiU7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIC5uYXYtbWVudS1yaWdodCBhIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDI1cmVtO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLm5hdi1tZW51LXJpZ2h0IHVsIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyIC50b3AtYmFyIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gIH1cbn1cbmhlYWRlciAudG9wLWJhciBhIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG59XG5oZWFkZXIgLnRvcC1iYXIgYS5hY3RpdmUtcGFnZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IC0wLjZyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBoZWlnaHQ6IDNweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gIHBhZGRpbmc6IDhweCAwO1xuICBwYWRkaW5nLXJpZ2h0OiAyJTtcbn1cbmhlYWRlciAudG9wLWJhciAuaHAtYnRuLWxpbmtzIGEge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxLjhyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgbWFyZ2luLWxlZnQ6IDhweDtcbn1cbmhlYWRlciAudG9wLWJhci10aXRsZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAudG9wLWJhci10aXRsZSAuaGVhZGVyLWxvZ28gaW1nIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbmhlYWRlciAudG9wLWJhci10aXRsZSAuaGVhZGVyLWxvZ28gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyIC50b3AtYmFyLXRpdGxlIC5tb2JpbGUtbmF2LW1lbnUtcmlnaHQgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbmhlYWRlciAudG9wLWJhci10aXRsZSAubW9iaWxlLW5hdi1tZW51LXJpZ2h0IHVsIGEge1xuICBwYWRkaW5nOiAwLjVyZW07XG59XG5oZWFkZXIge1xuICAvKiAgLmhlYWRlci1sb2dvIHtcbiAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogMXB4O1xuICAgICAgdG9wOiAtNXB4O1xuXG4gICAgICBhIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cbiAgICB9Ki9cbn1cbmhlYWRlciAubmF2LW1lbnUtcmlnaHQgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5oZWFkZXIgLm5hdi1tZW51LXJpZ2h0IGxpIGEge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHBhZGRpbmc6IDFyZW07XG59XG5cbi8qIG1vYmlsZSAqL1xuLm1lbnUtaWNvbi5kYXJrOmhvdmVyOmFmdGVyLCAubWVudS1pY29uLmRhcms6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNmZmZmZmYsIDAgMTRweCAwICNmZmZmZmY7XG59XG5cbi8qIE1lZGlhIFF1ZXJpZXMgKi9cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgcGFkZGluZzogMC43cmVtIDAuNXJlbTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICBoZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgaGVhZGVyIC5tZW51Lm5hdi1zb2NpYWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIGhlYWRlciAudG9wLWJhci10aXRsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDsqL1xuICB9XG4gIGhlYWRlciAudG9wLWJhci10aXRsZSBzcGFuIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyLXRpdGxlIGltZyB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBib3JkZXItcmlnaHQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweCAyMHB4O1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB1bCB1bCBkaXYgZGl2IHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHVsIHVsIGRpdiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IC5kcm9wZG93bi5tZW51IC5zdWJtZW51IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlZWVlO1xuICB9XG4gIGhlYWRlci5maXhlZCB7XG4gICAgcG9zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOTk5OTk5LCAwIDE0cHggMCAjOTk5OTk5O1xuICB9XG4gIC5tZW51ID4gbGkge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIxMnB4KSB7XG4gIGhlYWRlciAudG9wLWJhciBhIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI2MnB4KSB7XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMy4gVG9wIGJhclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgei1pbmRleDogMjA7XG59XG5cbmhlYWRlci5tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIGhlYWRlci5tYWluIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLyojY29udGVudCB7XG4gIHBhZGRpbmctdG9wOjU2cHg7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZy10b3A6MTEycHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpIHtcbiAgICBwYWRkaW5nLXRvcDowO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAmLmhwIHtcbiAgICAgIHBhZGRpbmctdG9wOjU2cHg7XG4gICAgfVxuICB9XG59Ki9cbi5iYXNrZXQtaWNvbiB7XG4gIGNvbG9yOiAjNzY3Njc2O1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG59XG5cbmhlYWRlciB7XG4gIC8qLy8vIFBlbmNpbCBOYXZpZ2F0aW9uIC8vLyovXG59XG5oZWFkZXIgLnBlbmNpbC10b3AtYmFyIHtcbiAgaGVpZ2h0OiA0NHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbmhlYWRlciAucGVuY2lsLXRvcC1iYXIgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDAuN3JlbTtcbn1cbmhlYWRlciAucGVuY2lsLXRvcC1iYXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wLWJhciAucm93IHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAucGVuY2lsLXRvcC1iYXIgLnJvdyB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAucGVuY2lsLXRvcC1iYXIgLnJvdyA+IGRpdjpudGgtY2hpbGQoMikge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBoZWFkZXIgLnBlbmNpbC10b3AtYmFyIC5yb3cgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cbmhlYWRlciAucGVuY2lsLXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5oZWFkZXIgLnBlbmNpbC10b3AgLnBlbmNpbC10b3AtbG9naW4ge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgcGFkZGluZzogMC42NXJlbTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG5oZWFkZXIgLnBlbmNpbC10b3AgLnBlbmNpbC10b3AtbG9naW4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wIC5wZW5jaWwtdG9wLWxvZ2luIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbmhlYWRlciAucGVuY2lsLXRvcCAucGVuY2lsLXRvcC1zZWFyY2gge1xuICBwYWRkaW5nLWJvdHRvbTogMHJlbTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5oZWFkZXIgLnBlbmNpbC10b3AgLnBlbmNpbC10b3Atc2VhcmNoIGZvcm0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wIC5wZW5jaWwtdG9wLXNlYXJjaCBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGhlaWdodDogMS4yNXJlbTtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgcGFkZGluZzogMDtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2NjY2NjO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wIC5wZW5jaWwtdG9wLXNlYXJjaCBidXR0b24ge1xuICB3aWR0aDogNjUlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wLWFubm91bmNlbWVudCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuaGVhZGVyIC5wZW5jaWwtdG9wLW1lbnUgLm1lbnUgPiBsaTpub3QoLm1lbnUtdGV4dCkgPiBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNjYWNhY2E7XG4gIGZvbnQtZmFtaWx5OiBcIlRla29cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMS41ICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMXJlbSAwLjhyZW07XG59XG5AbWVkaWEgKG1pbi13aWR0aDogMTAyNHB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gIGhlYWRlciAucGVuY2lsLXRvcC1tZW51IC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgcGFkZGluZzogMXJlbSAwLjNyZW07XG4gIH1cbn1cbmhlYWRlciAucGVuY2lsLXRvcC1tZW51IC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYTpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbmhlYWRlciAucGVuY2lsLXRvcC1hbm5vdW5jZW1lbnQge1xuICBmb250LWZhbWlseTogXCJUZWtvXCIsIHNhbnMtc2VyaWY7XG4gIHBhZGRpbmc6IDhweCAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuaGVhZGVyIC5hbm5vdW5jZW1lbnQtbGFyZ2Uge1xuICBmb250LXNpemU6IDEuNHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgaGVhZGVyIC5hbm5vdW5jZW1lbnQtbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICB9XG59XG5oZWFkZXIgLmFubm91bmNlbWVudC1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgaGVhZGVyIC5hbm5vdW5jZW1lbnQtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogMC45O1xuICB9XG59XG5oZWFkZXIge1xuICAvKi8vLyBNYWluIE5hdmlnYXRpb24gLy8vKi9cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICBoZWFkZXIgLnRvcC1iYXIge1xuICAgIGhlaWdodDogMTA1cHg7XG4gIH1cbn1cbmhlYWRlciAudG9wLWJhciAubWVudS5pY29uLXRvcCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOGE4YThhO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRyZW0pIHtcbiAgaGVhZGVyIC50b3AtYmFyIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuaGVhZGVyIC50b3AtYmFyIC5maXJzdC1zdWIge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHRvcDogNDRweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICBoZWFkZXIgLnRvcC1iYXIgLmhlYWRlci1sb2dvIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciAjcmVzcG9uc2l2ZS1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC45KTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1pbi13aWR0aDogMjcycHg7XG59XG5cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMXJlbTtcbn1cbi5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gdWwgbGkgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nLWxlZnQ6IDAuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEzNjBweCkge1xuICAuZHJvcGRvd24ubWVudSA+IGxpOmxhc3QtY2hpbGQgLmZpcnN0LXN1YiwgLmRyb3Bkb3duLm1lbnUgPiBsaTpudGgtY2hpbGQoNykgLmZpcnN0LXN1YiB7XG4gICAgbGVmdDogYXV0byAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRyZW0pIHtcbiAgaGVhZGVyIC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLypcbmhlYWRlciAubWVudT5saTpub3QoLm1lbnUtdGV4dCkge1xuICAmOmZpcnN0LWNoaWxkIHtcbiAgICBhIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgfVxuICB9XG4gID4gYSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxNDkwcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjIuMjVyZW07XG4gICAgfVxuICB9XG59Ki9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAyLiBIZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBtb2JpbGUgKi9cbi5tZW51LWljb24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG4ubWVudS1pY29uOmhvdmVyOmFmdGVyLCAubWVudS1pY29uOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5tZW51LWljb24ge1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4ubWVudS1pY29uOmhvdmVyIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5cbmhlYWRlciAudG9wLWJhciAuaGVhZGVyLW1vYmlsZS1vbmx5IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuaGVhZGVyIC50b3AtYmFyIC5oZWFkZXItbW9iaWxlLW9ubHkgYSB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciAuaGVhZGVyLW1vYmlsZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBib3gtc2hhZG93OiBub25lO1xufVxuaGVhZGVyIG5hdiB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICBoZWFkZXIgbmF2ICNyZXNwb25zaXZlLW1lbnUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZmVmZWZlO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5oZWFkZXIgbmF2ICNyZXNwb25zaXZlLW1lbnUgLnRvcC1iYXItcmlnaHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuaGVhZGVyIG5hdiAjcmVzcG9uc2l2ZS1tZW51IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24ge1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyIG5hdiAjcmVzcG9uc2l2ZS1tZW51IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nOiAwO1xufVxuaGVhZGVyIG5hdiAjcmVzcG9uc2l2ZS1tZW51IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24gLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICNmZWZlZmU7XG4gIHJpZ2h0OiAwO1xufVxuaGVhZGVyIG5hdiAjcmVzcG9uc2l2ZS1tZW51IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24gLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7XG59XG5oZWFkZXIgbmF2ICNyZXNwb25zaXZlLW1lbnUgLnRvcC1iYXItcmlnaHQgLmlzLWRyaWxsZG93biAuZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudSAuanMtZHJpbGxkb3duLWJhY2sge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbmhlYWRlciBuYXYgI3Jlc3BvbnNpdmUtbWVudSAudG9wLWJhci1yaWdodCAuaXMtZHJpbGxkb3duIC5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgI2ViMjEyZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbn1cbmhlYWRlciBuYXYgI3Jlc3BvbnNpdmUtbWVudSAubW9iaWxlLW5hdi1tZW51LXJpZ2h0IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nOiAwIDEuNXJlbTtcbn1cbmhlYWRlciBuYXYgI3Jlc3BvbnNpdmUtbWVudSAubW9iaWxlLW5hdi1tZW51LXJpZ2h0ID4gdWwge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4ubWVudS1vcGVuIHtcbiAgLyomLnN0aWNreS1jb250YWluZXIgeyovXG4gIC8qICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjazsqL1xuICAvKn0qL1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgLnRvcC1iYXIge1xuICBwYWRkaW5nOiAwO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgLnRvcC1iYXItdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgLm1lbnUtaWNvbiB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgLm1lbnUtaWNvbjpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgbmF2IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjkpO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5tZW51LW9wZW4gaGVhZGVyIG5hdiAudG9wLWJhci1yaWdodCB7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBhZGRpbmc6IDA7XG59XG4ubWVudS1vcGVuIGhlYWRlciBuYXYgLnRvcC1iYXItcmlnaHQgLmlzLWRyaWxsZG93biB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgbmF2IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG59XG4ubWVudS1vcGVuIGhlYWRlciBuYXYgLnRvcC1iYXItcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmctdG9wOiAwLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC43NXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgbmF2IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUgLmpzLWRyaWxsZG93bi1iYWNrIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZWZlZmU7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgbmF2IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS5pcy1hY3RpdmUgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xufVxuLm1lbnUtb3BlbiBoZWFkZXIgbmF2IC50b3AtYmFyLXJpZ2h0IC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgI2ZlZmVmZTtcbn1cbi5tZW51LW9wZW4gaGVhZGVyIG5hdiAudG9wLWJhci1yaWdodCAubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZy10b3A6IDAuNzVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjc1cmVtO1xuICBtYXJnaW46IDA7XG59XG4ubWVudS1vcGVuIGhlYWRlciBuYXYgLnRvcC1iYXItcmlnaHQgLmhlYWRlci1tb2JpbGUtb25seSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKiBNZWRpYSBRdWVyaWVzICovXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KSA+IGEge1xuICAgIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGhlYWRlciAubWVudS5uYXYtc29jaWFsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXItdGl0bGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7Ki9cbiAgICBwYWRkaW5nOiAxNXB4O1xuICB9XG4gIGhlYWRlciAudG9wLWJhci10aXRsZSBzcGFuIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyLXRpdGxlIGltZyB7XG4gICAgd2lkdGg6IDYwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBib3JkZXItcmlnaHQ6IDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHBhZGRpbmc6IDEwcHggMjBweCAyMHB4O1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VlZWVlZTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB1bCB1bCBkaXYgZGl2IHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgbWFyZ2luOiAwO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHVsIHVsIGRpdiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IC5kcm9wZG93bi5tZW51IC5zdWJtZW51IGxpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAwO1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZWVlZWVlO1xuICB9XG4gIGhlYWRlci5maXhlZCB7XG4gICAgcG9zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gICAgYm94LXNoYWRvdzogMCA3cHggMCAjOTk5OTk5LCAwIDE0cHggMCAjOTk5OTk5O1xuICB9XG4gIC5tZW51ID4gbGkge1xuICAgIGRpc3BsYXk6IGluaGVyaXQ7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIxMnB4KSB7XG4gIGhlYWRlciAudG9wLWJhciBhIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIGEgaSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNjJweCkge1xuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuLypcbi5oZWFkZXIge1xuICB6LWluZGV4OjkwO1xuICB3aWR0aDoxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgdG9wOjA7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcblxuXG4gICYuaG9tZSwmLndoZWVscywmLmdhbGxlcnksJi53aGVlbC1kZXRhaWwge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICAgIGJvcmRlci1ib3R0b206MDtcbiAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTtcbiAgICAmLm5vdEF0VG9wIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwxKTtcbiAgICB9XG4gICAgJi5jbG9zZVVwIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgfVxuICAgIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOjEuODVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLndoZWVsLWRldGFpbCB7XG4gICAgJi5ub3RBdFRvcCB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmFib3V0IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICB9XG4gIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIC8vbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLWxvZ28ge1xuICAgIHBhZGRpbmc6LjVyZW07XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDo2MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjNyZW07ICBcbiAgICAgIHBhZGRpbmctcmlnaHQ6MS41cmVtO1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gIC50b3AtYmFyLWxlZnQge1xuICAgIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgfVxuICAudG9wLWJhciB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB0b3A6MCFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICB9XG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBmb250LXNpemU6MS44NXJlbTtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICB3aWR0aDphdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0Oi43NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6Ljc1cmVtO1xuICAgICAgcGFkZGluZy10b3A6M3B4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkYmx1ZSwgMCAxOHB4IDAgJGJsdWU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJGxpZ2h0LWdyYXksIDAgMThweCAwICRsaWdodC1ncmF5O1xuICAgICAgfVxuICAgICAgJi5kYXJrIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDlweCAwICRibHVlLCAwIDE4cHggMCAkYmx1ZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkcmVkLCAwIDE4cHggMCAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MS41cmVtO1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmhvbWUsICYud2hlZWxzLCAmLmFib3V0LCAmLmdhbGxlcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgYSB7XG4gICAgICBjb2xvcjokbGlnaHQtZ3JheTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICAgICYtbGVmdCB7XG4gICAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6MXJlbSAzcmVtO1xuICAgICAgfVxuICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgIH1cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJHdoaXRlLCAwIDE4cHggMCAkd2hpdGU7XG5cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheTk7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkZ3JheTksIDAgMThweCAwICRncmF5OTtcbiAgICAgICAgfVxuICAgICAgICAmLmRhcmsge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDlweCAwICR3aGl0ZSwgMCAxOHB4IDAgJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRncmF5OTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJGdyYXk5LCAwIDE4cHggMCAkZ3JheTk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIH1cblxuICAvLyBjYXJ0IGljb25zIGRpc3BsYXlcbiAgLmNhcnQtbWVudSB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLXJpZ2h0Oi43NXJlbTtcbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiRibHVlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWl0ZW0ge1xuICAgICAgbWFyZ2luLWxlZnQ6MS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIG1vYmlsZSBzdGlja3lcbiAgJi5pbnROb3RBdFRvcCB7XG4gICAgLnRvcC1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTtcbiAgICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHotaW5kZXg6NTtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vLyBOYXZpZ2F0aW9uIE1lbnUgLy8vLy8vLy8vLy8vLy8vXG4ucmVzcG9uc2l2ZS1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICAgICY6aG92ZXIgYSwgJjphY3RpdmUgYSB7XG4gICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlLm9wZW5zLWxlZnQge1xuICAgICAgICA+IGEge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLnN1Ym1lbnUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcblxuICAgICAgfVxuICAgICAgJi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgcG9zaXRpb246c3RhdGljO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6MTAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gbGkge1xuICAgICAgYSB7XG4gICAgICAgIGkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDouNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6Ljc1cmVtXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBsaSB7ICAgICAgICBcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgJi5kcm9wZG93bi5tZW51e1xuICAgICAgICAgIHRvcDo3M3B4OyBcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgICBmb250LWZhbWlsWTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOjA7XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxLjM7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLy8gY2FydFxuICAuc2hvcHBpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICAgICYtdXNlciwgJi1iYXNrZXQge1xuICAgICAgcGFkZGluZzoxcmVtIDAgMXJlbSAxLjVyZW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXVzZXIge1xuICAgICAgY29sb3I6JGdyYXk5O1xuICAgIH1cbiAgICAmLWJhc2tldCB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiovXG4ub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgbGVmdDogMDtcbn1cblxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLCB2aXNpYmlsaXR5IDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG5cbi5vZmYtY2FudmFzLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgei1pbmRleDogMTI7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1vcGVuIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDM3NXB4O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNzVweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNzVweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cDM3NXB4eCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTtcbn1cblxuLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0IHtcbiAgICB3aWR0aDogNDQ1cHg7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDQ1cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NDVweCk7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgfVxufVxuLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMjUwcHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3Age1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi10b3AuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIDEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgd2lkdGg6IGluaGVyaXQ7XG4gICAgb3ZlcmZsb3c6IGluaGVyaXQ7XG4gICAgdHJhbnNpdGlvbjogaW5oZXJpdDtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ub2ZmLWNhbnZhcyA+IGRpdiA+IGRpdiB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAvKndpZHRoOjQ0NXB4OyAvLyBOZWVkIHRvIHVwZGF0ZSBqcyBiZWZvcmUgYXBwbHlpbmcuLi4uKi9cbiAgd2lkdGg6IDM3NXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgd2lkdGg6IDQ0NXB4O1xuICB9XG59XG4ub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuLm9mZi1jYW52YXMgLmNsb3NlLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAwLjgyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5vZmYtY2FudmFzIC5jbG9zZS1idXR0b24gc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbi5vZmYtY2FudmFzIC5jbG9zZS1idXR0b24ge1xuICAvKlxuICBwYWRkaW5nOi41cmVtIDJyZW07XG4gIGNvbG9yOiRsaWdodC1ncmF5O1xuICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAqL1xufVxuLm9mZi1jYW52YXMgLmNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpdG1lbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maXRtZW50IC5idXR0b24ge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICB3aWR0aDogMjAwcHg7XG4gIGhlaWdodDogNThweDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4ub2ZmLWNhbnZhcyAuc2xpZGUtb3Zlci1jb250YWluZXIgLnNsaWRlLW92ZXItZml0bWVudCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2Njtcbn1cbi5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maXRtZW50IC5maXRtZW50LWluZm8ge1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXgtd2lkdGg6IDQzJTtcbn1cbi5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maWx0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpbHRlciBzZWxlY3QsIC5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maWx0ZXIgLmJ1dHRvbiB7XG4gIGhlaWdodDogNTVweDtcbiAgcGFkZGluZzogMXJlbTtcbn1cbi5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maWx0ZXIgc2VsZWN0IHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIHdpZHRoOiAxMDAlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudSA+IGxpLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIitcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgdG9wOiAxM3B4O1xuICBtYXJnaW4tdG9wOiAwO1xuICByaWdodDogMnJlbTtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gPiBhOmFmdGVyIHtcbiAgY29udGVudDogXCItXCI7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudSA+IGxpID4gYSAuZmEtY2FyZXQtZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudS5pcy1hY2NvcmRpb24tc3VibWVudSA+IGxpOjphZnRlciB7XG4gIGxlZnQ6IDA7XG59XG4ub2ZmLWNhbnZhcyAuc29jaWFsLW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gMnJlbTtcbn1cbi5vZmYtY2FudmFzIC5zb2NpYWwtbWVudSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodCAuZmEtYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG4jZm9yY2VNZW51IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKlxuLmhpZGUtZm9yLWxhcmdlIHtcbiAgcGFkZGluZy10b3A6MS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xufSovXG4jcmVzcG9uc2l2ZS1tZW51IC5kcm9wZG93bi5tZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5uby1qcyAudG9wLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5vLWpzIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubm8tanMgLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG4uaW52ZW50b3J5LW5vLWpzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxvYWRpbmctc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDk5OTk7XG59XG4ubG9hZGluZy1zY3JlZW4gaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5ALW1vei1rZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5oZWFkZXItbmF2LXNlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZWFkZXItbmF2LXNlYXJjaCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuLmhlYWRlci1uYXYtc2VhcmNoIGJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uaGVhZGVyLW5hdi1zZWFyY2gtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlYWRlci1uYXYtc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS45Mzc1cmVtO1xuICB9XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggLnRvZ2dsZS1zZWFyY2gge1xuICBmb250LXNpemU6IDJyZW07XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggZm9ybSBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDI4MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlci1uYXYtc2VhcmNoIGZvcm0gaW5wdXQge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgfVxufVxuLmhlYWRlci1uYXYtc2VhcmNoIGZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5oZWFkZXItbmF2LXNlYXJjaCBmb3JtIGJ1dHRvbiB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZWFkZXItbmF2LXNlYXJjaCBmb3JtIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG59XG5cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5yb3cge1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4ubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzY2NjY2NjtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC44NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIGkge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQ6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIGkge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaGVhZGVyLWZpdG1lbnQtbW9iaWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5oZWFkZXItZml0bWVudC1tb2JpbGUgLmJ1dHRvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiA1OHB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5oZWFkZXItZml0bWVudC1tb2JpbGUgLmZpdG1lbnQtaW5mbyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1heC13aWR0aDogNDMlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmZvb3RlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbmZvb3RlciAuZm9vdGVyLXRvcCB7XG4gIHBhZGRpbmctdG9wOiAxLjI1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5mb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1zb2NpYWwgc3BhbiwgZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItc29jaWFsIHVsIHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG59XG5mb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1zb2NpYWwgc3BhbiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuZm9vdGVyIC5mb290ZXItdG9wIC5mb290ZXItc29jaWFsIHVsIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbmZvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLXNvY2lhbCB1bCBhIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbmZvb3RlciAuZm9vdGVyLXRvcCAuZm9vdGVyLXNvY2lhbCB1bCBhOmhvdmVyIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5mb290ZXIgLmZvb3Rlci10b3AgLmZvb3Rlci1zb2NpYWwgdWwgbGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbmZvb3RlciAuZm9vdGVyLWJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOGY4O1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBmb290ZXIgLmZvb3Rlci1ib2R5IHtcbiAgICBwYWRkaW5nOiA0cmVtIDA7XG4gIH1cbn1cbmZvb3RlciAuZm9vdGVyLWJvZHkgaDUge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGZvb3RlciAuZm9vdGVyLWJvZHkgaDUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG5mb290ZXIgLmZvb3Rlci1ib2R5IHVsIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5mb290ZXIgLmZvb3Rlci1ib2R5IHVsIGEge1xuICBjb2xvcjogIzMzMzMzMztcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5mb290ZXIgLmZvb3Rlci1ib2R5IHVsIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbmZvb3RlciAuZm9vdGVyLWJvZHkgLmZvb3Rlci1sb2dvIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGZvb3RlciAuZm9vdGVyLWJvZHkgLmZvb3Rlci1sb2dvIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5mb290ZXIgLmZvb3Rlci1ib2R5IC5mb290ZXItbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5mb290ZXIgLmZvb3Rlci1ib3R0b20ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBoZWlnaHQ6IDUwdmg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGZvb3RlciAuZm9vdGVyLWJvdHRvbSB7XG4gICAgaGVpZ2h0OiAxMHZoO1xuICB9XG59XG5cbi8qLmhwIHtcbiAgcCB7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gIH1cbn0qL1xuLnNlY3Rpb24ge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlY3Rpb246YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnNlY3Rpb24gPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2VjdGlvbi1iYWNrZ3JvdW5kIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2VjdGlvbi1iYWNrZ3JvdW5kIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnNlY3Rpb24tYmFja2dyb3VuZC1pbWFnZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbi5zZWN0aW9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG4gIHBhZGRpbmc6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbn1cbi5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlY3Rpb24tY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4uc2VjdGlvbi10aXRsZS1kaXZpZGVyIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uc2VjdGlvbi1idXR0b24ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiB7XG4gIHdpZHRoOiAxNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDUwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zM3M7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjMzczsgLyogQW5pbWF0ZSB0aGUgdHJhbnNmb3JtIHByb3BlcnRpZXMgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyAvKiA8LU5CICovXG59XG4uc2VjdGlvbi1idXR0b24gLmN1YmUtYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpOyAvKiBUZXh0IGJsZWVkIGF0IDkwwrogKi9cbn1cbi5zZWN0aW9uLWJ1dHRvbiAuY3ViZS1idXR0b24gLmN1YmUtZnJvbnQsIC5zZWN0aW9uLWJ1dHRvbiAuY3ViZS1idXR0b24gLmN1YmUtYm90dG9tIHtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiAuY3ViZS1mcm9udCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMjVweCk7XG59XG4uc2VjdGlvbi1idXR0b24gLmN1YmUtYnV0dG9uIC5jdWJlLWJvdHRvbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZykgdHJhbnNsYXRlWigtMjVweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZVooLTI1cHgpO1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZm9vdGVyLmhwIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2Uge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG4uZm9vdGVyLmhwIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2UgaW1nIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaGVyby1jb250YWluZXIgaDQsIC5oZXJvLWNvbnRhaW5lciBoMSwgLmhlcm8tY29udGFpbmVyIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5oZXJvLWNvbnRhaW5lciBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24ge1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24jZm91ciAuc2VjdGlvbi1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVyby1jb250YWluZXIgLnNlY3Rpb24jdHdvIC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9ob21lL2hlcm8vc2xpZGUtMmNyYXZlLWxpZmUuanBnXCIpICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5oZXJvLWNvbnRhaW5lciAuc2VjdGlvbiN0d28gLnN1YnRpdGxlIGltZyB7XG4gIG1heC13aWR0aDogMjAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1jb250YWluZXIgLnNlY3Rpb24jdHdvIC5zdWJ0aXRsZSBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uI3R3byAuc2VjdGlvbi1jb250ZW50IC5idXR0b24ge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQgaDQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24tY29udGVudCAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHJnYmEoNTEsIDUxLCA1MSwgMC43KTtcbiAgYm9yZGVyLXJhZGl1czogMjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgd2lkdGg6IGF1dG87XG4gIGJvcmRlcjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5oZXJvLWNvbnRhaW5lciAuaGVyby1zY3JvbGwtbW9yZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE1JTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHotaW5kZXg6IDk7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uaGVyby1jb250YWluZXIgLmhlcm8tc2Nyb2xsLW1vcmUgaSB7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGFuaW1hdGlvbjogdXBkb3duIDJzIGVhc2UgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIHVwZG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbiAgMjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgOTklIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgfVxufVxuLmhlcm8tY29udGFpbmVyIC50YWJsZS1vZi1jb250ZW50cyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgei1pbmRleDogMTA7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMC41cmVtO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvLWNvbnRhaW5lciAudGFibGUtb2YtY29udGVudHMge1xuICAgIHJpZ2h0OiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1jb250YWluZXIgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICByaWdodDogNXJlbTtcbiAgfVxufVxuLmhlcm8tY29udGFpbmVyIC50YWJsZS1vZi1jb250ZW50cyBhIHtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjZmVmZWZlO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmhlcm8tY29udGFpbmVyIC50YWJsZS1vZi1jb250ZW50cyBhLmFjdGl2ZSB7XG4gIGhlaWdodDogNTBweDtcbn1cblxuLmhlcm8gLnZpZGVvLWNvbnRhaW5lciwgLmhlcm8tY29udGFpbmVyIC52aWRlby1jb250YWluZXIge1xuICAtLXZpZGVvUmF0aW86IGNhbGMoMTYgLyA5KTsgLyogQ0hBTkdFIFRISVMgSUYgVEhFIFZJREVPIENIQU5HRVMgKi9cbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvaGVyby5qcGdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvIC52aWRlby1jb250YWluZXIsIC5oZXJvLWNvbnRhaW5lciAudmlkZW8tY29udGFpbmVyIHtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICB9XG59XG4uaGVybywgLmhlcm8tY29udGFpbmVyIHtcbiAgLyogdG8gc3RhcnQgd2l0aCBhc3N1bWUgdGhhdCB0aGUgdmlld3BvcnQgaXMgd2lkZSBlbm91Z2ggZm9yIHRoZSB2aWRlbyB0YWtpbmcgdXAgZnVsbCB3aWR0aCB0aGUgaGVpZ2h0IHdpbGwgYmUgYXQgbGVhc3QgMTAwdmggKi9cbn1cbi5oZXJvIC52aWRlby1jb250YWluZXIgaWZyYW1lLCAuaGVyby1jb250YWluZXIgLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgLS13OiAxMDB2dztcbiAgLS1oOiBjYWxjKHZhcigtLXcpIC8gdmFyKC0tdmlkZW9SYXRpbykpO1xuICBoZWlnaHQ6IHZhcigtLWgpO1xuICB3aWR0aDogdmFyKC0tdyk7XG4gIHRvcDogY2FsYyg1MCUgLSB2YXIoLS1oKSAvIDIpO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogdmFyKC0tdyk7XG4gIGhlaWdodDogdmFyKC0taCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuaGVybyAudmlkZW8tY29udGFpbmVyIGlmcmFtZSwgLmhlcm8tY29udGFpbmVyIC52aWRlby1jb250YWluZXIgaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaGVybywgLmhlcm8tY29udGFpbmVyIHtcbiAgLyogTWF4aW11bSBhc3BlY3QgcmF0aW8gKi9cbn1cbkBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzogMTYvOSkge1xuICAuaGVybywgLmhlcm8tY29udGFpbmVyIHsgLyp0aGUgdmlld3BvcnQgaXMgdG9vIG5hcnJvdyBmb3IgdGhlIGZ1bGwgdmlkZW8gKi8gfVxuICAuaGVybyAudmlkZW8tY29udGFpbmVyIGlmcmFtZSwgLmhlcm8tY29udGFpbmVyIC52aWRlby1jb250YWluZXIgaWZyYW1lIHtcbiAgICAtLWg6IDEwMHZoO1xuICAgIC0tdzogY2FsYyh2YXIoLS1oKSAqIHZhcigtLXZpZGVvUmF0aW8pKTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogY2FsYyg1MCUgLSB2YXIoLS13KSAvIDIpO1xuICB9XG59XG4uaGVybyAudmlkZW8tY29udGFpbmVyLXNob3J0LCAuaGVyby1jb250YWluZXIgLnZpZGVvLWNvbnRhaW5lci1zaG9ydCB7XG4gIC0tdmlkZW9SYXRpbzogY2FsYygxNiAvIDkpOyAvKiBDSEFOR0UgVEhJUyBJRiBUSEUgVklERU8gQ0hBTkdFUyAqL1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaG9tZS9oZXJvLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuLmhlcm8gLnZpZGVvLWNvbnRhaW5lci1zaG9ydCBpZnJhbWUsIC5oZXJvLWNvbnRhaW5lciAudmlkZW8tY29udGFpbmVyLXNob3J0IGlmcmFtZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICAtLXc6IDEwMHZ3O1xuICAtLWg6IGNhbGModmFyKC0tdykgLyB2YXIoLS12aWRlb1JhdGlvKSk7XG4gIGhlaWdodDogdmFyKC0taCk7XG4gIHdpZHRoOiB2YXIoLS13KTtcbiAgdG9wOiBjYWxjKDUwJSAtIHZhcigtLWgpIC8gMik7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiB2YXIoLS13KTtcbiAgaGVpZ2h0OiB2YXIoLS1oKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvIC52aWRlby1jb250YWluZXItc2hvcnQgaWZyYW1lLCAuaGVyby1jb250YWluZXIgLnZpZGVvLWNvbnRhaW5lci1zaG9ydCBpZnJhbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzogMTYvOSkge1xuICAuaGVybyAudmlkZW8tY29udGFpbmVyLXNob3J0LCAuaGVyby1jb250YWluZXIgLnZpZGVvLWNvbnRhaW5lci1zaG9ydCB7IC8qdGhlIHZpZXdwb3J0IGlzIHRvbyBuYXJyb3cgZm9yIHRoZSBmdWxsIHZpZGVvICovIH1cbiAgLmhlcm8gLnZpZGVvLWNvbnRhaW5lci1zaG9ydCBpZnJhbWUsIC5oZXJvLWNvbnRhaW5lciAudmlkZW8tY29udGFpbmVyLXNob3J0IGlmcmFtZSB7XG4gICAgLS1oOiAxMDB2aDtcbiAgICAtLXc6IGNhbGModmFyKC0taCkgKiB2YXIoLS12aWRlb1JhdGlvKSk7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gdmFyKC0tdykgLyAyKTtcbiAgfVxufVxuXG4uaG9tZS1zbGlkZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5ob21lLXNsaWRlci1jb250YWluZXIgLnNsaWNrLXNsaWRlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaG9tZS1zbGlkZXItaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oZXJvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhlcm8tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmhlcm8gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVybyAuc2xpY2stc2xpZGUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIC8qXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgaGVpZ2h0OjEwMHZoO1xuICAgIHBhZGRpbmctYm90dG9tOjA7XG5cbiAgfSovXG59XG4uaGVybyB7XG4gIC8qLnNsaWNrLWxpc3Qge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9Ki9cbn1cbi5oZXJvIGZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5oZXJvIC55b3V0dWJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLWJvdHRvbTogNS42MiU7IC8qIDE2OjkgKi9cbiAgcGFkZGluZy1ib3R0b206IDU2LjYyJTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgaGVpZ2h0OiAxMDB2aDtcbn1cbi5oZXJvIC55b3V0dWJlIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmhlcm8gLm5leHQtc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8gLm5leHQtc2VjdGlvbiB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVybyAubmV4dC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbi5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVybyAubmV4dC1zZWN0aW9uLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgaDIge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIGgyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbi5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIHAge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgPiBkaXYge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIC5idXR0b24tY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIC5idXR0b24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVybyAubmV4dC1zZWN0aW9uLWNvbnRhaW5lciAuYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgLmJ1dHRvbi1jb250YWluZXIgPiBhIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIC5idXR0b24tY29udGFpbmVyID4gYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICB9XG59XG4uaGVybyAubmV4dC1zZWN0aW9uLWNvbnRhaW5lciAuYnV0dG9uLWNvbnRhaW5lciA+IGEuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgLmJ1dHRvbi1jb250YWluZXIgPiBhLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDE2NnB4O1xuICB9XG59XG4uaGVybyAubmV4dC1zZWN0aW9uLWNvbnRhaW5lciAuYnV0dG9uLWNvbnRhaW5lciA+IGEuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uaGVybyAubmV4dC1zZWN0aW9uLWNvbnRhaW5lciAuYnV0dG9uLWNvbnRhaW5lciA+IGEubGluayB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWIyMTJlO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvIC5uZXh0LXNlY3Rpb24tY29udGFpbmVyIC5idXR0b24tY29udGFpbmVyID4gYS5saW5rIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmhlcm8gLm5leHQtc2VjdGlvbi1jb250YWluZXIgLmJ1dHRvbi1jb250YWluZXIgPiBhLmxpbms6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzMzMzMzMztcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uaGVybyAuZmxleC12aWRlbyB7XG4gIGhlaWdodDogMTAwdmg7XG59XG4uaGVybyAuZmxleC12aWRlbyBpZnJhbWUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhlcm8gLmZsZXgtdmlkZW8gaWZyYW1lIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVybyAuZmxleC12aWRlbyBpZnJhbWUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMyk7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvIC5mbGV4LXZpZGVvIGlmcmFtZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTU3NXB4KSB7XG4gIC5oZXJvIC5mbGV4LXZpZGVvIGlmcmFtZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgfVxufVxuLmhlcm8gLmhlcm8tbW9iaWxlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgjMGEwYTBhLCB0cmFuc3BhcmVudCwgdHJhbnNwYXJlbnQpO1xufVxuLmhlcm8gLmhlcm8tbW9iaWxlLXRleHQgaDEge1xuICBkaXNwbGF5OiBub25lO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8gLmhlcm8tbW9iaWxlLXRleHQgaDEge1xuICAgIGZvbnQtc2l6ZTogN3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8gLmhlcm8tbW9iaWxlLXRleHQgaDEge1xuICAgIGxpbmUtaGVpZ2h0OiAwLjc1O1xuICAgIGZvbnQtc2l6ZTogMTByZW07XG4gIH1cbn1cbi5oZXJvIC5oZXJvLW1vYmlsZS10ZXh0IGgzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBjb2xvcjogI2ViMjEyZTtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvIC5oZXJvLW1vYmlsZS10ZXh0IGgzIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cblxuLypcbi52aWRlby1iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7IHJpZ2h0OiAwOyBib3R0b206IDA7IGxlZnQ6IDA7XG4gIHotaW5kZXg6IC05OTtcbn0qL1xuLnZpZGVvLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICB6LWluZGV4OiAxO1xufVxuXG4udmlkZW8tZm9yZWdyb3VuZCxcbi52aWRlby1iYWNrZ3JvdW5kIGlmcmFtZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cblxuLmhlcm8tYmtnIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVyby1ia2cge1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIH1cbn1cblxuLm5leHQtc2VjdGlvbiBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxNjZweDtcbiAgaGVpZ2h0OiA2MHB4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLm5leHQtc2VjdGlvbiBhOmhvdmVyIGkge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgYm9yZGVyLWNvbG9yOiAjZWIyMTJlO1xufVxuLm5leHQtc2VjdGlvbiAuY3ViZS1idXR0b24gYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubmV4dC1zZWN0aW9uIC5jdWJlLWJvdHRvbSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ubmV4dC1zZWN0aW9uIGkge1xuICBib3JkZXI6IDNweCBzb2xpZCAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLmhlcm8tb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG59XG4uaGVyby1vdmVybGF5LWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oZXJvLW92ZXJsYXktY29udGVudCB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZXJvLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIwJTtcbiAgICByaWdodDogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG4uaGVyby1vdmVybGF5LWluZm8ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigwLCAxMDIsIDE3OCk7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tb3ZlcmxheS1pbmZvIHtcbiAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMXJlbSAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1vdmVybGF5LWluZm8ge1xuICAgIG1hcmdpbjogMCAwIDFyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMDIsIDE3OCwgMC44KTtcbiAgICBjbGlwLXBhdGg6IHBvbHlnb24oNiUgMCwgMTAwJSAwJSwgMTAwJSAxMDAlLCAwIDEwMCUpO1xuICAgIC13ZWJraXQtY2xpcC1wYXRoOiBwb2x5Z29uKDYlIDAsIDEwMCUgMCUsIDEwMCUgMTAwJSwgMCAxMDAlKTtcbiAgfVxufVxuLmhlcm8tb3ZlcmxheS1pbmZvLS1zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tb3ZlcmxheS1pbmZvLS1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAxLjQzcmVtO1xuICB9XG59XG4uaGVyby1vdmVybGF5LWluZm8tLW1lZGl1bSB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaGVyby1vdmVybGF5LWluZm8tLW1lZGl1bSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cbi5oZXJvLW92ZXJsYXktaW5mby0tbGFyZ2Uge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvLW92ZXJsYXktaW5mby0tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogNC42cmVtO1xuICB9XG59XG4uaGVyby1vdmVybGF5LWhlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90byBDb25kZW5zZWRcIjtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tb3ZlcmxheS1oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG4uaGVyby1vdmVybGF5LWRlc2Mge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaGVyby1vdmVybGF5LWRlc2Mge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLmhlcm8tYnRuIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5oZXJvLWJ0biB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG5AbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gIC5oZXJvLWJ0biB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgfVxufVxuXG4uaHAtaGVybyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmhlcm8tdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tdmlkZW8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaGVyby12aWRlby1zaG9ydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tdmlkZW8tc2hvcnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlcm8tdmlkZW9fX2JhY2tncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5oZXJvLXZpZGVvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGVyby12aWRlbzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaGVyby12aWRlb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmhwIC5leHBsb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhwIC5leHBsb3JlIC5iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9ob21lL2V4cGxvcmUtYmcud2VicFwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1MCU7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cbi5ocCAuZXhwbG9yZSAuYmFja2dyb3VuZCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZXhwbG9yZSAuYmFja2dyb3VuZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmhwIC5leHBsb3JlIC5iYWNrZ3JvdW5kIGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmhwIC5leHBsb3JlIC5mb3JlZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIC5mb3JlZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3R0b206IDhyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3R0b206IDRyZW07XG4gICAgdG9wOiB1bnNldDtcbiAgfVxufVxuLmhwIC5leHBsb3JlIHAge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIHAge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbi5ocCAuZXhwbG9yZSAuZXhwbG9yZS1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmhwIC5leHBsb3JlIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgd2lkdGg6IDI2NHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IDc0cHg7XG4gIH1cbn1cblxuLmhwIC5wZW5jaWwge1xuICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5wZW5jaWwge1xuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4uaHAgLnBlbmNpbCBoMSwgLmhwIC5wZW5jaWwgcCwgLmhwIC5wZW5jaWwgYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmhwIC5wZW5jaWwgaDEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIGZvbnQtc2l6ZTogMS42NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uaHAgLnBlbmNpbCBwLCAuaHAgLnBlbmNpbCBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5ocCAucGVuY2lsIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5wZW5jaWwgcCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgfVxufVxuLmhwIC5wZW5jaWwgLnBlbmNpbC1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsIC5wZW5jaWwtcmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uaHAgLnBlbmNpbCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB3aWR0aDogMTQwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLnBlbmNpbCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgaGVpZ2h0OiA2NnB4O1xuICAgIHdpZHRoOiAyMDVweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cblxuLmhwIC53aGVlbHMge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLnJvdyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gIH1cbn1cbi5ocCAud2hlZWxzIGgxLCAuaHAgLndoZWVscyBwIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uaHAgLndoZWVscyBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDAuNzU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyBoMSB7XG4gICAgZm9udC1zaXplOiA2LjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1oZWFkZXIgLnRpdGxlIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1oZWFkZXIgLnRpdGxlIHAge1xuICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAuc3VidGl0bGUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAuc3VidGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC5zdWJ0aXRsZSBwIHtcbiAgZm9udC1mYW1pbHk6IFwiVGVrb1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC5zdWJ0aXRsZSBwOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAuc3VidGl0bGUgcDphZnRlciB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5jb2x1bW46bnRoLWNoaWxkKG9kZCksIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQob2RkKSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgfVxuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLmNvbHVtbjpudGgtY2hpbGQoZXZlbiksIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgYTpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IGE6aG92ZXIgLndoZWVsLW5hbWUge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5pbWFnZSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLndoZWVsLW5hbWUge1xuICBmb250LWZhbWlseTogXCJUZWtvXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC53aGVlbC1uYW1lIHtcbiAgICBmb250LXNpemU6IDIuNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5maW5pc2gtbmFtZSwgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC53aGVlbC1zaXplcyB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuZmluaXNoLW5hbWUsIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAud2hlZWwtc2l6ZXMge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcyB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHotaW5kZXg6IDI7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzID4gLm90aGVyLWZpbmlzaCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgPiBkaXYge1xuICBncmlkLWNvbHVtbjogMS8xO1xuICBncmlkLXJvdzogMS8xO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm1vcmUtaW5mb3JtYXRpb24sIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIC5vbmUtaW5mb3JtYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcyAudGh1bWJuYWlsOmhvdmVyIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC5tb3JlLWluZm9ybWF0aW9uIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1jdGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWN0YSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtY3RhIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB3aWR0aDogMjc4cHg7XG4gICAgaGVpZ2h0OiA3MHB4O1xuICB9XG59XG5cbi5icmFuZHMtc2xpZGVyIC5zbGljay1saXN0IHtcbiAgcGFkZGluZzogMCA1MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJyYW5kcy1zbGlkZXIgLnNsaWNrLWxpc3Qge1xuICAgIHBhZGRpbmc6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5icmFuZHMtc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICBwYWRkaW5nOiAwIDI1MHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5icmFuZHMtc2xpZGVyIC5zbGljay1saXN0IC5zbGljay1zbGlkZSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICB6LWluZGV4OiAxMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1hcnJvdyB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1hcnJvdyB7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1hcnJvdzpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xufVxuLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1uZXh0IHtcbiAgcmlnaHQ6IDUwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYnJhbmRzLXNsaWRlciAuYnJhbmRzLW5leHQge1xuICAgIHJpZ2h0OiA4MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnJhbmRzLXNsaWRlciAuYnJhbmRzLW5leHQge1xuICAgIHJpZ2h0OiAyMTBweDtcbiAgfVxufVxuLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1wcmV2IHtcbiAgbGVmdDogNTBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5icmFuZHMtc2xpZGVyIC5icmFuZHMtcHJldiB7XG4gICAgbGVmdDogODBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJyYW5kcy1zbGlkZXIgLmJyYW5kcy1wcmV2IHtcbiAgICBsZWZ0OiAyMTBweDtcbiAgfVxufVxuLmJyYW5kcy1zbGlkZXIgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uYnJhbmRzLXNsaWRlciBhIC5zbGlkZXItb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5icmFuZHMtc2xpZGVyIGEgLnNsaWRlci1vdmVybGF5OmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xufVxuLmJyYW5kcy1zbGlkZXIgYSAuc2xpZGVyLW92ZXJsYXkgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5icmFuZHMtc2xpZGVyIGEgLnNsaWRlci1vdmVybGF5IC50aXRsZSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnJhbmRzLXNsaWRlciBhIC5zbGlkZXItb3ZlcmxheSAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgfVxufVxuLmJyYW5kcy1zbGlkZXIgYSAuc2xpZGVyLW92ZXJsYXkgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZWIyMTJlO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJyYW5kcy1zbGlkZXIgYSAuc2xpZGVyLW92ZXJsYXkgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaDEge1xuICBmb250LXNpemU6IDRyZW07XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBoMSB7XG4gICAgZm9udC1zaXplOiAxLjM1cmVtO1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBoMSBzcGFuIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBwIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIHAge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gcCBzcGFuIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaDYge1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBoNiB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIGg2IHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaW1nIHtcbiAgICAvKnRyYW5zZm9ybTpzY2FsZSgxLjM1KTsqL1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuc2VjdGlvbi1iYWNrZ3JvdW5kLWltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDEwcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuc2VjdGlvbi1jb250ZW50IC5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuc2VjdGlvbi10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tZGVzY3JpcHRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tZGVzY3JpcHRpb24gcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1uLCAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW4sIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyLjVyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW46Zmlyc3QtY2hpbGQgYSwgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cgLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaG9tZS9jdGEtdGlyZXMuanBnXCIpO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cgLmNvbHVtbjpsYXN0LWNoaWxkIGEsIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaG9tZS9jdGEtYWNjZXNzb3JpZXMuanBnXCIpO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmctdG9wOiAyNSU7XG4gIHBhZGRpbmctYm90dG9tOiAyNSU7XG4gIC8qXG4gIHBhZGRpbmctdG9wOjFyZW07XG4gIHBhZGRpbmctYm90dG9tOjFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOjRyZW07XG4gICAgcGFkZGluZy1ib3R0b206NHJlbTtcbiAgfSovXG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgYSBoNCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJQbGF5ZmFpciBEaXNwbGF5XCIsIHNlcmlmO1xuICBmb250LXNpemU6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgYSBoNCB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBhOmhvdmVyIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBpbWcge1xuICB3aWR0aDogYXV0bztcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCB7XG4gIC8qXG4gIC50aXRsZSwuaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NnJlbTtcbiAgICB9XG4gIH0qL1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IHAge1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBwIHtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IHAgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgcCBzcGFuIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ViMjEyZTtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAuYnV0dG9uIHtcbiAgICBmb250LXNpemU6IDEuMTVyZW07XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogM3B4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLmlubGluZS1ibG9jay1kaXNwbGF5IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCB7XG4gIC8qICAgIC5jb2x1bW4ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgei1pbmRleDogMzsgXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy8vaW1hZ2VzLmljb25maWd1cmF0b3JzLmFwcC9pbWFnZXMvd2hlZWxzL2xhcmdlL21rdy1yOTAxLXdoZWVsLTVsdWctYnJ1c2hlZC10aXRhbml1bS0yMHgxMS01MDBfNjk3NS5wbmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICB6LWluZGV4OiAyOyBcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy8vaW1hZ2VzLmljb25maWd1cmF0b3JzLmFwcC9pbWFnZXMvd2hlZWxzL2xhcmdlL21rdy1yOTAyLXdoZWVsLTVsdWctYnJ1c2hlZC10aXRhbml1bS0yMHgxMS01MDBfMzI1MC5wbmcnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLy9pbWFnZXMuaWNvbmZpZ3VyYXRvcnMuYXBwL2ltYWdlcy93aGVlbHMvbGFyZ2UvbWt3LXI5MDMtd2hlZWwtNWx1Zy1icm9uemUtMTh4OTUtNTAwXzU5MzQucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICB9XG4gICAgICB9Ki9cbn1cblxuLmhwIC5jdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ocCAuY3RhIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEge1xuICAgIHBhZGRpbmctdG9wOiA1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cmVtO1xuICB9XG59XG4uaHAgLmN0YSAucm93IHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIC5yb3cge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgcGFkZGluZy1yaWdodDogNXJlbTtcbiAgfVxufVxuLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW4gYSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIlRla29cIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmctdG9wOiAyNSU7XG4gIHBhZGRpbmctYm90dG9tOiAyNSU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSAucm93ID4gLmNvbHVtbiBhLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnMgYSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDMyJTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMzIlO1xuICB9XG59XG4uaHAgLmN0YSAucm93ID4gLmNvbHVtbiBhOmhvdmVyLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnMgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAxJTtcbn1cbi5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgyKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgyKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW46bnRoLWNoaWxkKDMpLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDMpIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgyKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgyKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW46bnRoLWNoaWxkKDMpLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDMpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSAucm93ID4gLmNvbHVtbjpudGgtY2hpbGQoMiksIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uczpudGgtY2hpbGQoMikge1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIH1cbn1cbi5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgyKSBhLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDIpIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvY3RhLWdhbGxlcnkuanBnXCIpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW46bnRoLWNoaWxkKDMpLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDMpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIH1cbn1cbi5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgzKSBhLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDMpIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvY3RhLXZpc3VhbGl6ZXIuanBnXCIpO1xufVxuLmhwIC5jdGEgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDAuNzU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSBoMSB7XG4gICAgZm9udC1zaXplOiA0Ljc1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtO1xuICB9XG59XG4uaHAgLmN0YSBoMTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGhlaWdodDogM3B4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIxNXB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIGgxOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDZweDtcbiAgfVxufVxuLmhwIC5jdGEgcCB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuLmhwIC5jdGEgLnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5ocCAuY3RhIC50ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIC50ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG4uaHAgLmN0YSAuc3VidGl0bGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEgLnN1YnRpdGxlOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDZweDtcbiAgfVxufVxuXG4uaHAgLmRlYWxlcnMgaDEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDAuODU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLmRlYWxlcnMgaDEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZGVhbGVycyBoMSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4ycmVtO1xuICB9XG59XG4uaHAgLmRlYWxlcnMgLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ocCAuZGVhbGVycyAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZGVhbGVycyAuYnV0dG9uIHtcbiAgICBoZWlnaHQ6IDY4cHg7XG4gICAgd2lkdGg6IDIwOHB4O1xuICB9XG59XG4uaHAgLmRlYWxlcnMgLmRlYWxlci1jb250ZW50IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLmRlYWxlcnMgLmRlYWxlci1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmRlYWxlcnMgLmRlYWxlci1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbiAgICBoZWlnaHQ6IDI1NnB4O1xuICB9XG59XG5cbi5ocCAuYWJvdXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvYWJvdXQtYmcud2VicFwiKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1ib3R0b206IDEwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5hYm91dCB7XG4gICAgcGFkZGluZy10b3A6IDRyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgaGVpZ2h0OiAxMjYwcHg7XG4gIH1cbn1cbi5ocCAuYWJvdXQgaDEge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuYWJvdXQgaDEge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgfVxufVxuLmhwIC5hYm91dCBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IGgzIHtcbiAgICBmb250LXNpemU6IDIuNzVyZW07XG4gIH1cbn1cbi5ocCAuYWJvdXQgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IHAge1xuICAgIGZvbnQtc2l6ZTogMS42NXJlbTtcbiAgfVxufVxuLmhwIC5hYm91dCAuYnV0dG9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuYWJvdXQgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGhlaWdodDogNjhweDtcbiAgICB3aWR0aDogMjA4cHg7XG4gIH1cbn1cbi5ocCAuYWJvdXQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4uaHAgLmFib3V0IC5sb2dvIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuYWJvdXQgLmxvZ28ge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbi5ocCAuYWJvdXQgLmJyZWFrIHtcbiAgd2lkdGg6IDIxNHB4O1xuICBoZWlnaHQ6IDZweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IC5icmVhayB7XG4gICAgbWFyZ2luOiAyLjVyZW0gYXV0bztcbiAgfVxufVxuLmhwIC5hYm91dCAudGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IC50ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5cbi5pbnN0YWdyYW0gYSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLmluc3RhZ3JhbSAudGl0bGUge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4uaW5zdGFncmFtIC50aXRsZSBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbnN0YWdyYW0gLnRpdGxlIGEge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZGlzcGxheTogaW5saW5lO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5pbnN0YWdyYW0gLnRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbi5pbnN0YWdyYW0gI2luc3RhZ3JhbSBhIHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG59XG4uaW5zdGFncmFtICNpbnN0YWdyYW0gYTpob3ZlciB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xufVxuXG4jaW5zdGFncmFtLXBvcHVwIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5hY2NvcmRpb24tZmlsdGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXIge1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2NvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuLmFjY29yZGlvbi1maWx0ZXJfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG59XG4uYWNjb3JkaW9uLWZpbHRlcl9faGVhZGVyLS1tb2JpbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBwYWRkaW5nOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5hY2NvcmRpb24tZmlsdGVyX19jb250ZW50IHtcbiAgYm9yZGVyOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24ge1xuICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgZmxleC1ncm93OiAxO1xuICB9XG59XG4uYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gc2VsZWN0IHtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwcmVtIGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biBzZWxlY3Qge1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHNlbGVjdCB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uYWNjb3JkaW9uLWZpbHRlcl9fYnRuIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjY1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19idG4ge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuXG4uc2VsZWN0ZWRWZWhpY2xlQmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWJlYmViO1xufVxuLnNlbGVjdGVkVmVoaWNsZUJhciAubGF5b3V0IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtaW4taGVpZ2h0OiA4MHB4O1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zZWxlY3RlZFZlaGljbGVCYXIgLmxheW91dCB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLnNlbGVjdGVkVmVoaWNsZUJhciBpbWcge1xuICBtYXgtaGVpZ2h0OiAxMDBweDtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXIgLnJvdy0tc21hbGwge1xuICBtYXgtd2lkdGg6IDY3cmVtO1xufVxuLnNlbGVjdGVkVmVoaWNsZUJhcl9fY29udGVudCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXJfX2NvbnRlbnQtLW5vTWFyZ2luIHtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNlbGVjdGVkVmVoaWNsZUJhcl9fY29udGVudCB7XG4gICAgbWFyZ2luOiAxLjVyZW0gYXV0byAwO1xuICB9XG59XG4uc2VsZWN0ZWRWZWhpY2xlQmFyX190ZXh0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2VsZWN0ZWRWZWhpY2xlQmFyX190ZXh0IHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbn1cbi5zZWxlY3RlZFZlaGljbGVCYXJfX3NwYW4ge1xuICBjb2xvcjogIzZhNmE2YTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXJfX2J0biB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLWxlZnQ6IDEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xufVxuLnNlbGVjdGVkVmVoaWNsZUJhci0tc21hbGxlciB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG4ucGVuY2lsLXRvcC1zZWFyY2gge1xuICBwYWRkaW5nOiAxMXB4IDA7XG59XG5cbi5uYXYtc2VhcmNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm5hdi1zZWFyY2gge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2gtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG59XG4uc2VhcmNoLWxpbmtfX3RleHQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICB0b3A6IDAuMnJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAuc2VhcmNoLWxpbmtfX3RleHQge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEwMjRweCkge1xuICAuc2VhcmNoLWxpbmtfX3RleHQge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG59XG5cbi5zZWFyY2gtaWNvbiB7XG4gIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuOCk7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VhcmNoLWljb24ge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB9XG59XG5cbi5zZWFyY2gtYm94IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDAuN3JlbTtcbiAgd2lkdGg6IDQyM3B4O1xuICB6LWluZGV4OiAxMTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuc2VhcmNoLWJveCB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG59XG5cbi5zZWFyY2gtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuI2NvbGxlY3Rpb24gLnBhZ2UtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2NvbGxlY3Rpb24gLnBhZ2UtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDkwdmg7XG4gIH1cbiAgI2NvbGxlY3Rpb24gLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQsICNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJhY2tncm91bmQge1xuICAgIGhlaWdodDogOTB2aDtcbiAgfVxufVxuI2NvbGxlY3Rpb24gLnBhZ2UtaGVhZGVyIGgxLCAjY29sbGVjdGlvbiAucGFnZS1oZWFkZXIgaDQge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciBoMSB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMi43NXJlbTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciBoMSBzcGFuIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjY29sbGVjdGlvbiAucGFnZS1oZWFkZXIgaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4jY29sbGVjdGlvbiAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGhlaWdodDogMTAwdmg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjY29sbGVjdGlvbiAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudCB7XG4gICAgaGVpZ2h0OiA5MHZoO1xuICB9XG59XG4jY29sbGVjdGlvbiAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2NvbGxlY3Rpb24gLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICBoZWlnaHQ6IDkwdmg7XG4gIH1cbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50IC5jb250ZW50LXNjcm9sbC1tb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE1JTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50IC5jb250ZW50LXNjcm9sbC1tb3JlIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50IC5jb250ZW50LXNjcm9sbC1tb3JlIGEgLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICBmb250LXNpemU6IDRyZW07XG4gIGFuaW1hdGlvbjogdXBkb3duIDJzIGVhc2UgaW5maW5pdGU7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5IHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjY29sbGVjdGlvbiAucGFnZS1ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgfVxufVxuI2NvbGxlY3Rpb24gLnBhZ2UtYm9keS1jZW50ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5ID4gLnJvdzpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmc6IDAgM3JlbTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWJvZHkgaDIge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5IGgyIHNwYW4ge1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2NvbGxlY3Rpb24gLnBhZ2UtYm9keSBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWJvZHkgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2NvbGxlY3Rpb24gLnBhZ2UtYm9keSBhOmhvdmVyIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5LW5hdiB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuI2NvbGxlY3Rpb24gLnBhZ2UtYm9keSAuY29sbGVjdGlvbi1uYXYge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5IC5jb2xsZWN0aW9uLW5hdi5ib2R5LW5hdi1maXhlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmctdG9wOiAxLjc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS43NXJlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuI2NvbGxlY3Rpb24gLnBhZ2UtYm9keSAuY29sbGVjdGlvbi1uYXYge1xuICAvKnVsIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICB9XG4gICAgICA+IGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjEuMjVyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9Ki9cbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWJvZHkgLmNvbGxlY3Rpb24tbmF2IHVsIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG4jY29sbGVjdGlvbiAucGFnZS1ib2R5IC5jb2xsZWN0aW9uLW5hdiB1bCA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI2NvbGxlY3Rpb24gLnBhZ2UtYm9keSAuY29sbGVjdGlvbi1uYXYgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMCAwLjVyZW07XG59XG4jY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuI2NvbGxlY3Rpb24gLnBhZ2UtbGlzdGluZyBoMywgI2NvbGxlY3Rpb24gLnBhZ2UtbGlzdGluZyBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIGgzIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2NvbGxlY3Rpb24gLnBhZ2UtbGlzdGluZyBoMyB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWxpc3RpbmcgcCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNjb2xsZWN0aW9uIC5wYWdlLWxpc3RpbmcgcCB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG4jY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIC5saXN0aW5nLWl0ZW0ge1xuICBtYXgtd2lkdGg6IDkwcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiA1NXZoO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwYWRkaW5nOiAwIDNyZW07XG59XG4jY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIC5saXN0aW5nLWl0ZW0tb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiNjb2xsZWN0aW9uIC5wYWdlLWxpc3RpbmcgLmxpc3RpbmctaXRlbS1vdmVybGF5LWFkZHRsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIC5saXN0aW5nLWl0ZW0gPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgI2NvbGxlY3Rpb24gLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNjb2xsZWN0aW9uIC5wYWdlLWxpc3RpbmcgLmxpc3RpbmctaXRlbSA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuI2NvbGxlY3Rpb24gLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtIC5sb2dvIGltZyB7XG4gIG1pbi1oZWlnaHQ6IDYwcHg7XG59XG4jY29sbGVjdGlvbiAucGFnZS1saXN0aW5nIC5saW5rIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4jc2VyaWVzIC5wYWdlLWhlYWRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAxNTB2aDtcbiAgLypcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBoZWlnaHQ6ODB2aDtcbiAgICAuc2VjdGlvbi1jb250ZW50LC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgICBoZWlnaHQ6ODB2aDtcbiAgICB9XG4gIH0qL1xufVxuI3NlcmllcyAucGFnZS1oZWFkZXIgaDEsICNzZXJpZXMgLnBhZ2UtaGVhZGVyIGg0IHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciBoMSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgfVxufVxuI3NlcmllcyAucGFnZS1oZWFkZXIgaDQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlcmllcyAucGFnZS1oZWFkZXIgaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMCk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICBwb3NpdGlvbjogc3RhdGljO1xufVxuI3NlcmllcyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBoZWlnaHQ6IDE1MHZoO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlcmllcyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB9XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LXRvcCB7XG4gIGhlaWdodDogMTAwdmg7XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJvdHRvbSB7XG4gIGhlaWdodDogNTB2aDtcbn1cbiNzZXJpZXMgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtdG9wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI3NlcmllcyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC10b3AgLmNvbnRlbnQtYXQtc2Nyb2xsIHtcbiAgb3BhY2l0eTogMDtcbn1cbiNzZXJpZXMgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtdG9wIC5jb250ZW50LXNjcm9sbC1tb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDE1JTtcbn1cbiNzZXJpZXMgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtdG9wIC5jb250ZW50LXNjcm9sbC1tb3JlIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiNzZXJpZXMgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtdG9wIC5jb250ZW50LXNjcm9sbC1tb3JlIGEgLm1hdGVyaWFsLXN5bWJvbHMtb3V0bGluZWQge1xuICBmb250LXNpemU6IDRyZW07XG4gIGFuaW1hdGlvbjogdXBkb3duIDJzIGVhc2UgaW5maW5pdGU7XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJvdHRvbSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJvdHRvbSBoMiwgI3NlcmllcyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1ib3R0b20gcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3NlcmllcyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1ib3R0b20gaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbiNzZXJpZXMgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtYm90dG9tIC5jb250ZW50IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4jc2VyaWVzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJvdHRvbS1yaWdodCBwIHtcbiAgZm9udC1zaXplOiAxLjE3NXJlbTtcbn1cbiNzZXJpZXMgLnBhZ2UtYm9keSB7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlcmllcyAucGFnZS1ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDogN3JlbTtcbiAgfVxufVxuI3NlcmllcyAucGFnZS1ib2R5LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNzZXJpZXMgLnBhZ2UtYm9keSA+IC5yb3c6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VyaWVzIC5wYWdlLWJvZHkgPiAucm93OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbiNzZXJpZXMgLnBhZ2UtYm9keSBoMiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtYm9keSBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbiNzZXJpZXMgLnBhZ2UtYm9keSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuI3NlcmllcyAucGFnZS1ib2R5IGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiNzZXJpZXMgLnBhZ2UtYm9keS1uYXYge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbiNzZXJpZXMgLnBhZ2UtYm9keSAuY29sbGVjdGlvbi1uYXYge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmctdG9wOiA1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VyaWVzIC5wYWdlLWJvZHkgLmNvbGxlY3Rpb24tbmF2IHtcbiAgICBwYWRkaW5nLXRvcDogN3JlbTtcbiAgfVxufVxuI3NlcmllcyAucGFnZS1ib2R5IC5jb2xsZWN0aW9uLW5hdi5ib2R5LW5hdi1maXhlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuI3NlcmllcyAucGFnZS1ib2R5IC5jb2xsZWN0aW9uLW5hdiB1bCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtYm9keSAuY29sbGVjdGlvbi1uYXYgdWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICB9XG59XG4jc2VyaWVzIC5wYWdlLWJvZHkgLmNvbGxlY3Rpb24tbmF2IHVsID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuI3NlcmllcyAucGFnZS1ib2R5IC5jb2xsZWN0aW9uLW5hdiB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4jc2VyaWVzIC5wYWdlLWJvZHkgLmNvbGxlY3Rpb24tbmF2IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jc2VyaWVzIC5wYWdlLWxpc3RpbmcgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4jc2VyaWVzIC5wYWdlLWxpc3RpbmcgYTpob3ZlciAubGluayB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI3NlcmllcyAucGFnZS1saXN0aW5nIGgzIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlcmllcyAucGFnZS1saXN0aW5nIGgzIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuI3NlcmllcyAucGFnZS1saXN0aW5nIHAge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VyaWVzIC5wYWdlLWxpc3RpbmcgcCB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG4jc2VyaWVzIC5wYWdlLWxpc3RpbmcgLmxpc3RpbmctaXRlbSB7XG4gIG1heC13aWR0aDogOTByZW07XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBoZWlnaHQ6IDU1dmg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gICNzZXJpZXMgLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtID4gZGl2Omxhc3QtY2hpbGQge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZXJpZXMgLnBhZ2UtbGlzdGluZyAubGlzdGluZy1pdGVtID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jc2VyaWVzIC5wYWdlLWxpc3RpbmcgLmxpbmsge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jc2VyaWVzIC5wcm9kdWN0LWxpc3Qge1xuICBwYWRkaW5nOiAycmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VyaWVzIC5wcm9kdWN0LWxpc3Qge1xuICAgIHBhZGRpbmctdG9wOiA0cmVtIDA7XG4gIH1cbn1cblxuI3doZWVscyBoMiwgI3doZWVscyBoMyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI3doZWVscyBoMiB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDUuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IC01cHg7XG59XG4jd2hlZWxzIGgzIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3aGVlbHMgaDEge1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDIuNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgfVxufVxuI3doZWVscyBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyBoNCB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgYSB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIHAge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbHMgcCB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICB9XG59XG4jd2hlZWxzIC5yb3cge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN3aGVlbHMge1xuICAvKlxuICAgIC8vIHBhZ2UgaGVhZGVyXG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToyLjVyZW07XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6NC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICRyZWQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgZm9udC1zaXplOjAuOXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6Mi41O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgICAgfVxuICAgIH1cbiAgKi9cbn1cbiN3aGVlbHMgLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDRyZW07XG59XG4jd2hlZWxzIC5wYWdlLWZpbHRlci1icmFuZHMgdWwge1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgc2Nyb2xsLXNuYXAtdHlwZTogeCBtYW5kYXRvcnk7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICBzY3JvbGwtcGFkZGluZy1pbmxpbmU6IHZhcigtLWFycm93LXNpemUpO1xuICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cbiN3aGVlbHMgLnBhZ2UtZmlsdGVyLWJyYW5kcyB1bCA+IGxpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbiN3aGVlbHMgLnBhZ2UtZmlsdGVyLWJyYW5kcyB1bCA+IGxpOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4jd2hlZWxzIC5wYWdlLWZpbHRlci1icmFuZHMgdWwgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbn1cbiN3aGVlbHMgLnBhZ2UtZmlsdGVyLWJyYW5kcyB1bCBhOmhvdmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4jd2hlZWxzIC5wYWdlLWZpbHRlci1icmFuZHMgdWwgYSBpbWcge1xuICBtYXgtaGVpZ2h0OiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI3doZWVscyAucGFnZS1maWx0ZXItYnJhbmRzIC5yb3cge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAucGFnZS1maWx0ZXItYnJhbmRzIC5yb3cge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICN3aGVlbHMgLnBhZ2UtZmlsdGVyLWJyYW5kcyAucm93IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDVyZW07XG4gICAgcGFkZGluZy1yaWdodDogNXJlbTtcbiAgfVxufVxuI3doZWVscyAuZmlsdGVyLXNvcnQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXItc29ydCAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyLXNvcnQgLnJvdyB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzY2NjY2NjtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC44NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjU0cHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydCAuYnV0dG9uIGkge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIHdpZHRoOiAxMDAlO1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXItc29ydC1ib3R0b20gbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1jb3VudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1jb3VudDpob3ZlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24gaSB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWxzIHtcbiAgLyogLnByb2R1Y3QtaXRlbSB7XG4gICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgcGFkZGluZzoycmVtO1xuICAgICBwYWRkaW5nLXRvcDowO1xuICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICAgfVxuICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICAgfVxuICAgICA+IC5jb2x1bW4ge1xuICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICB9XG4gICB9Ki9cbn1cbiN3aGVlbHMgLmJyZWFrIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbHMgLmJyZWFrIC5yb3cge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWF4LXdpZHRoOiA4NHJlbTtcbn1cbiN3aGVlbHMgLmJyYW5kLWluZm9ybWF0aW9uIC5yb3cge1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuI3doZWVscyB7XG4gIC8qXG4gIC5wcm9kdWN0LWxpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRjtcbiAgICBwYWRkaW5nLXRvcDowLjY3NXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjMuNzVyZW0gMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTowLjY3NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjMuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuODc1cmVtO1xuICAgICAgICA+IC5jb2x1bW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxLjg3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuODc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjNyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWluZm8ge1xuICAgICAgPiBkaXYge1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgICYud2hlZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyLjM1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSovXG59XG5cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0LCAjd2hlZWwgLnByb2R1Y3RzLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QsICN3aGVlbCAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QsICN3aGVlbCAucHJvZHVjdHMtbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbiwgI3doZWVscyAucHJvZHVjdHMtbGlzdCAuY29sdW1ucywgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5jb2x1bW5zLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAuY29sdW1uLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAuY29sdW1ucywgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5jb2x1bW4sICN3aGVlbCAucHJvZHVjdHMtbGlzdCAuY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCAuY29sdW1uOm50aC1jaGlsZCgzbiksICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnM6bnRoLWNoaWxkKDNuKSwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uOm50aC1jaGlsZCgzbiksICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnM6bnRoLWNoaWxkKDNuKSwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmNvbHVtbjpudGgtY2hpbGQoM24pLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQoM24pLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbjpudGgtY2hpbGQoM24pLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnM6bnRoLWNoaWxkKDNuKSB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCBhLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IGEsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IGEsICN3aGVlbCAucHJvZHVjdHMtbGlzdCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0sICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSwgI3doZWVsIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtID4gZGl2LCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gPiBkaXYsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gPiBkaXYsICN3aGVlbCAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIGltZywgI3doZWVsIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIGltZywgI3doZWVsIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZywgI3NlcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZywgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbTpob3ZlciBpbWcsICN3aGVlbCAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW06aG92ZXIgLmZpbmlzaC1sb2dvIGltZywgI3NlcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIC5maW5pc2gtbG9nbyBpbWcsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW06aG92ZXIgLmZpbmlzaC1sb2dvIGltZywgI3doZWVsIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW06aG92ZXIgLmZpbmlzaC1sb2dvIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5pbmZvLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAuaW5mbywgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5pbmZvIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLmluZm8sICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8sICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5pbmZvLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLmluZm8ge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLmluZm8gPiBkaXYsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gPiBkaXYsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5pbmZvID4gZGl2LCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLmluZm8gPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvID4gZGl2Omxhc3QtY2hpbGQsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gPiBkaXY6bGFzdC1jaGlsZCwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmluZm8gPiBkaXY6bGFzdC1jaGlsZCwgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5pbmZvID4gZGl2Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmluZm8gLndoZWVsLW5hbWUsICN3aGVlbCAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmluZm8gLndoZWVsLW5hbWUsICN3aGVlbCAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbywgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAuZmluaXNoLWxvZ28sICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbywgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbyBpbWcsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gLmZpbmlzaC1sb2dvIGltZywgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmluZm8gLmZpbmlzaC1sb2dvIGltZywgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbyBpbWcge1xuICBtYXgtaGVpZ2h0OiA1MHB4O1xuICBtYXgtd2lkdGg6IDE2MHB4O1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogMC41cmVtIDA7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gLmZpbmlzaCwgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLmluZm8gLmZpbmlzaCwgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gge1xuICBmb250LXNpemU6IDAuODI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcywgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcywgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzID4gLm90aGVyLWZpbmlzaCwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgPiAub3RoZXItZmluaXNoLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgPiAub3RoZXItZmluaXNoLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzID4gLm90aGVyLWZpbmlzaCB7XG4gICAgd2lkdGg6IDI1JTtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIsICN3aGVlbCAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciA+IGRpdiwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyID4gZGl2LCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyID4gZGl2LCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciA+IGRpdiB7XG4gIGdyaWQtY29sdW1uOiAxLzE7XG4gIGdyaWQtcm93OiAxLzE7XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm1vcmUtZmluaXNoZXMsICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciAub25lLWZpbmlzaCwgI3NlcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIC5tb3JlLWZpbmlzaGVzLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm9uZS1maW5pc2gsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm1vcmUtZmluaXNoZXMsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm9uZS1maW5pc2gsICN3aGVlbCAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIC5tb3JlLWZpbmlzaGVzLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciAub25lLWZpbmlzaCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWwsICNzZXJpZXMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWwsICNjb2xsZWN0aW9uIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyAudGh1bWJuYWlsLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWwge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBib3JkZXI6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIHBhZGRpbmc6IDRweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyAudGh1bWJuYWlsOmhvdmVyLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyAudGh1bWJuYWlsOmhvdmVyLCAjY29sbGVjdGlvbiAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbDpob3ZlciwgI3doZWVsIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyAudGh1bWJuYWlsOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC5tb3JlLWZpbmlzaGVzLCAjc2VyaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyAubW9yZS1maW5pc2hlcywgI2NvbGxlY3Rpb24gLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC5tb3JlLWZpbmlzaGVzLCAjd2hlZWwgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC5tb3JlLWZpbmlzaGVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4vKiN3aGVlbHMge1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLXRvcDozcmVtO1xuICAgIC5jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAuaG92ZXItaXRlbV9faGVhZGVyIHtcbiAgICBmb250LXNpemU6Mi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0Oi41O1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBjb2xvcjokZ3JheTtcbiAgICBzbWFsbCB7XG4gICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gICAgfVxuICB9XG4gIC5wb3BfdXBfdmVoaWNsZSB7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIGJ1dHRvbiB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gc2VlIG9uIHZlaGljbGUgcG9wdXBcbi5mYW5jeWJveC1pbm5lciB7XG4gIGhlaWdodDphdXRvIWltcG9ydGFudDtcbiAgI3ZlaGljbGUtc2VsZWN0cyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICB9XG59XG4uZmFuY3lib3gtY2xvc2Uge1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtcbiAgcmlnaHQ6LTIwcHghaW1wb3J0YW50OyAgXG59XG4gICovXG4jd2hlZWwge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiN3aGVlbCAucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCAucGFnZS1oZWFkZXIge1xuICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbiN3aGVlbCAucGFnZS1oZWFkZXIgLmZsZXgtdmlkZW8gaWZyYW1lIHtcbiAgdG9wOiAtMTAlO1xufVxuI3doZWVsICNkZXRhaWwtdG9wIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNlN2U3ZTcgMCUsICNlN2U3ZTcgNSUsIHRyYW5zcGFyZW50IDIwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG59XG4jd2hlZWwgI2RldGFpbC10b3AgPiBkaXYge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIG1heC13aWR0aDogODByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWwgI2RldGFpbC10b3AgPiBkaXYge1xuICAgIHBhZGRpbmctdG9wOiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4jd2hlZWwgLmxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWwgLmxhYmVsIGkge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiN3aGVlbCAuYnV0dG9uLCAjd2hlZWwgaW5wdXQsICN3aGVlbCBzZWxlY3Qge1xuICBtYXgtd2lkdGg6IDM3MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAud2hlZWwtc2l6ZXMge1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuI3doZWVsIC53aGVlbC1zaXplcyBzcGFuIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWxzIC53aGVlbC1wYXJhZ3JhcGgge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWxzIC53aGVlbC1wYXJhZ3JhcGggc3BhbiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuI3doZWVsIC5sb2FkaW5nSW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiN3aGVlbCAuZml0bWVudC1zZWFyY2gtY29udGFpbmVyIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbiN3aGVlbCAuZml0bWVudC1zZWFyY2gtY29udGFpbmVyIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWwgI2RldGFpbC1ib3R0b20gPiAucm93IHtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cblxuLmdhbGxlcnktcG9wdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uZ2FsbGVyeS1wb3B1cCAuZ2FsbGVyeVZpZXctaW5mbyB7XG4gIGNvbG9yOiAjY2NjO1xuICBmb250LXNpemU6IDEuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi5nYWxsZXJ5LXBvcHVwIC5nYWxsZXJ5Vmlldy1pbmZvIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5nYWxsZXJ5LXBvcHVwIC5wb3B1cC1jYXIge1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDEuM3JlbTtcbiAgY29sb3I6ICNmZmY7XG59XG4uZ2FsbGVyeS1wb3B1cCAubWZwLWNsb3NlIHtcbiAgY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZGV0YWlsLXRodW1iIHAge1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuLmRldGFpbC10aHVtYiAuZmluaXNoLW5hbWUge1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4uZGV0YWlsLXRodW1iIGltZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmRldGFpbC10aHVtYiBpbWc6aG92ZXIge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG59XG5cbi5zZWUtb24tdmVoaWNsZS1jb250YWluZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDAuMnJlbTtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbn1cblxuLnNlZS1vbi12ZWhpY2xlLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VlLW9uLXZlaGljbGUtc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudGFibGUge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG50YWJsZSB0ciB0ZCxcbnRhYmxlIHRyIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxudGFibGUgdHIgdGgge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWwgLmJhbm5lci10b3AgLndoZWVsLWJhbm5lciB7XG4gICAgaGVpZ2h0OiA2cmVtO1xuICB9XG4gICN3aGVlbCAuYmFubmVyLXRvcCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgdG9wOiA5MCU7XG4gIH1cbiAgI3doZWVsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmluaXNoLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuI3doZWVsIC5kZXRhaWxzLW5hdi1jb250YWluZXIge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYtY29udGFpbmVyLmJvZHktbmF2LWZpeGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xufVxuI3doZWVsIC5kZXRhaWxzLW5hdiwgI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2IGEsICN3aGVlbCAuZGV0YWlscy1uYXYgYnV0dG9uLCAjd2hlZWwgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEsICN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgYnV0dG9uIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmZWZlZmU7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYgLnJvdy5leHBhbmRlZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2IC5yb3cuZXhwYW5kZWQge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2IC5yb3cuZXhwYW5kZWQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICB9XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2IC5icmVhZGNydW1icy1yZXR1cm4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI3doZWVsIC5kZXRhaWxzLW5hdiAuYnJlYWRjcnVtYnMtcmV0dXJuLWxpbmsgaSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsIC5kZXRhaWxzLW5hdiAuYnJlYWRjcnVtYnMtcmV0dXJuLWxpbmsgaSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2IC5icmVhZGNydW1icy1yZXR1cm4gLmRpdmlkZXIge1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBvdmVyZmxvdzogdW5zZXQ7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2IC5icmVhZGNydW1icy1yZXR1cm4gLmRpdmlkZXIge1xuICAgIG1hcmdpbi1sZWZ0OiAycmVtO1xuICAgIG1hcmdpbi1yaWdodDogMnJlbTtcbiAgfVxufVxuI3doZWVsIC5kZXRhaWxzLW5hdiAuYnJlYWRjcnVtYnMtcmV0dXJuIC5kZXRhaWxzLW5hdi1tZW51LWJ1dHRvbiBpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAuZGV0YWlscy1uYXYgLmJyZWFkY3J1bWJzLXJldHVybiAuZGV0YWlscy1uYXYtbWVudS1idXR0b24gaSB7XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYgLmRldGFpbHMtbmF2LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2IC5kZXRhaWxzLW5hdi1yaWdodCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYgLmRldGFpbHMtbmF2LXJpZ2h0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICBib3JkZXItY29sb3I6ICMzMzMzMzM7XG4gIG1heC13aWR0aDogMTYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2IC5kZXRhaWxzLW5hdi1yaWdodCAuYnV0dG9uIHtcbiAgICBtYXgtd2lkdGg6IDEzMHB4O1xuICAgIHBhZGRpbmc6IDAuNzVyZW0gMDtcbiAgfVxufVxuI3doZWVsIC5kZXRhaWxzLW5hdiAuZGV0YWlscy1uYXYtcmlnaHQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIHtcbiAgLyoucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjVyZW07XG4gICAgfSovXG59XG4jd2hlZWwgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIHVsIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgLnByb2R1Y3QtaXRlbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBtYXgtaGVpZ2h0OiAyNjBweDtcbiAgbWF4LXdpZHRoOiA0NDBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciBhIC5ob3Zlci1pdGVtIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgYSAuaG92ZXItaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWwgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEgLmhvdmVyLWl0ZW0gPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgYSAuaG92ZXItaXRlbSBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgcGFkZGluZzogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgYSAuaG92ZXItaXRlbSBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4jd2hlZWwgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEgLmhvdmVyLWl0ZW06aG92ZXIgaW1nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cbiN3aGVlbCAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgLmluZm8ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciAuaW5mbyB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVsIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciAuaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICB9XG59XG5cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciwgI3doZWVsIC5maXRtZW50LXNlYXJjaC1jb250YWluZXIsICN3aGVlbCAucHJpY2UtY29udGFpbmVyLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDMzNnB4O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3doZWVsIC5jYXAtY29udGFpbmVyIC5wcmljZSwgI3doZWVsIC5maXRtZW50LXNlYXJjaC1jb250YWluZXIgLnByaWNlLCAjd2hlZWwgLnByaWNlLWNvbnRhaW5lciAucHJpY2UsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2Uge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4jd2hlZWwgLmNhcC1jb250YWluZXIgLnByaWNlLXJhbmdlLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtcmFuZ2UsICN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5wcmljZS1yYW5nZSwgI2FjY2Vzc29yeSAud2hlZWwtY29udGFpbmVyIC5wcmljZS1yYW5nZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMDc1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucywgI3doZWVsIC5maXRtZW50LXNlYXJjaC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMsICN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5wcmljZS1idXR0b25zLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uLCAjd2hlZWwgLnByaWNlLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICBmb250LXNpemU6IDAuN3JlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCAjMGEwYTBhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVsIC5jYXAtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5idXR0b24sICN3aGVlbCAuZml0bWVudC1zZWFyY2gtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5idXR0b24sICN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5idXR0b24sICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTU4cHg7XG4gIH1cbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmhvdmVyLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmhvdmVyLCAjd2hlZWwgLnByaWNlLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmhvdmVyLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGJvcmRlci1jb2xvcjogIzY2NjY2Njtcbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmRpc2FibGVkLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmRpc2FibGVkLCAjd2hlZWwgLnByaWNlLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAuYnV0dG9uOmRpc2FibGVkLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLmJ1dHRvbjpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTtcbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOm50aC1jaGlsZCgyKSAuYnV0dG9uLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOm50aC1jaGlsZCgyKSAuYnV0dG9uLCAjd2hlZWwgLnByaWNlLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOm50aC1jaGlsZCgyKSAuYnV0dG9uLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpudGgtY2hpbGQoMikgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVsIC5jYXAtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5wcmljZS1idXR0b246bnRoLWNoaWxkKDIpIC5idXR0b246aG92ZXIsICN3aGVlbCAuZml0bWVudC1zZWFyY2gtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5wcmljZS1idXR0b246bnRoLWNoaWxkKDIpIC5idXR0b246aG92ZXIsICN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5wcmljZS1idXR0b246bnRoLWNoaWxkKDIpIC5idXR0b246aG92ZXIsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOm50aC1jaGlsZCgyKSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1jb2xvcjogIzY2NjY2Njtcbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQgLmJ1dHRvbiwgI3doZWVsIC5maXRtZW50LXNlYXJjaC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpsYXN0LWNoaWxkIC5idXR0b24sICN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5wcmljZS1idXR0b246bGFzdC1jaGlsZCAuYnV0dG9uLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpsYXN0LWNoaWxkIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICBib3JkZXItY29sb3I6ICNjY2NjY2M7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVsIC5jYXAtY29udGFpbmVyIC5wcmljZS1idXR0b25zIC5wcmljZS1idXR0b246bGFzdC1jaGlsZCAuYnV0dG9uOmhvdmVyLCAjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQgLmJ1dHRvbjpob3ZlciwgI3doZWVsIC5wcmljZS1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpsYXN0LWNoaWxkIC5idXR0b246aG92ZXIsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItY29sb3I6ICM2NjY2NjY7XG59XG5cbiN3aGVlbCAucHJpY2UtY29udGFpbmVyIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuI3doZWVsIC5wcmljZS1jb250YWluZXIgaW5wdXQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWwgLnByaWNlLWNvbnRhaW5lciBzZWxlY3Qge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbn1cbiN3aGVlbCAucHJpY2UtY29udGFpbmVyICNkZXRhaWxzLWRpYW1ldGVycyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3doZWVsIC5wcmljZS1jb250YWluZXIgLmRpc2NsYWltZXIge1xuICBtYXJnaW46IDJyZW0gMDtcbn1cbiN3aGVlbCAucHJpY2UtY29udGFpbmVyIC5kaXNjbGFpbWVyIHAge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbiN3aGVlbCAucmVhci1zaXplLWNvbnRhaW5lci5kaXNwbGF5LXJlYXIge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiN3aGVlbCAucmVhci1zaXplLWNvbnRhaW5lciAjZGV0YWlscy1yZWFyLWRpYW1ldGVycyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3doZWVsIC5yZWFyLXNpemUtY29udGFpbmVyIC5zZWxlY3QtcmVhci1zaXplIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiN3aGVlbCAucmVhci1zaXplLWNvbnRhaW5lciAjcmVhci1kaXNwbGF5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAucmVhci1zaXplLWNvbnRhaW5lciAjcmVhci1kaXNwbGF5IHNwYW46Zmlyc3QtY2hpbGQge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiN3aGVlbCAucmVhci1zaXplLWNvbnRhaW5lciAjcmVhci1kaXNwbGF5IHNwYW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIge1xuICBkaXNwbGF5OiBub25lO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAycmVtO1xuICB9XG59XG4jd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2Uge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlIC5zaGlwcGluZyB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IGg1IHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG4jd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAuZnJvbnQsICN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IC5yZWFyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlLWRpc3BsYXkgLmZyb250IGlucHV0LCAjd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAucmVhciBpbnB1dCB7XG4gIG1heC13aWR0aDogNjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDFyZW07XG59XG4jd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAuZnJvbnQgLnNlbGVjdGVkLWZyb250LXByaWNlLCAjd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAuZnJvbnQgLnNlbGVjdGVkLXJlYXItcHJpY2UsICN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IC5yZWFyIC5zZWxlY3RlZC1mcm9udC1wcmljZSwgI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlLWRpc3BsYXkgLnJlYXIgLnNlbGVjdGVkLXJlYXItcHJpY2Uge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlLWRpc3BsYXkgLmZyb250IC5zZWxlY3RlZC1mcm9udC1wcmljZSwgI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlLWRpc3BsYXkgLmZyb250IC5zZWxlY3RlZC1yZWFyLXByaWNlLCAjd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAucmVhciAuc2VsZWN0ZWQtZnJvbnQtcHJpY2UsICN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IC5yZWFyIC5zZWxlY3RlZC1yZWFyLXByaWNlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IC5mcm9udCAuZGlzcGxheS1mcm9udC1zdG9jaywgI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLnNlbGVjdGVkLXByaWNlLWRpc3BsYXkgLmZyb250IC5kaXNwbGF5LXJlYXItc3RvY2ssICN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5zZWxlY3RlZC1wcmljZS1kaXNwbGF5IC5yZWFyIC5kaXNwbGF5LWZyb250LXN0b2NrLCAjd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSAucmVhciAuZGlzcGxheS1yZWFyLXN0b2NrIHtcbiAgY29sb3I6ICMzM2NjMzM7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jd2hlZWwgLnNlbGVjdGVkLXByaWNlLWNvbnRhaW5lciAuY2FydC1idXR0b24ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIgLmNhcnQtYnV0dG9uIGlucHV0IHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICBtYXgtd2lkdGg6IDYwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5jYXJ0LWJ1dHRvbiBpbnB1dFtuYW1lPXF1YW50aXR5XSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiN3aGVlbCAuc2VsZWN0ZWQtcHJpY2UtY29udGFpbmVyIC5jYXJ0LWJ1dHRvbiBidXR0b24ge1xuICBtYXgtd2lkdGg6IDE1OHB4O1xufVxuXG4jd2hlZWwgLmNhcC1jb250YWluZXIsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciBoNCwgI2FjY2Vzc29yeSAud2hlZWwtY29udGFpbmVyIGg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4jd2hlZWwgLmNhcC1jb250YWluZXIgLnRpdGxlLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLmNhcC1jb250YWluZXIgLnByaWNlLXJhbmdlLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIgLnByaWNlLXJhbmdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS4wNzVyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVsIC5jYXAtY29udGFpbmVyIC5jYXAtaXRlbSwgI2FjY2Vzc29yeSAud2hlZWwtY29udGFpbmVyIC5jYXAtaXRlbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgbWF4LXdpZHRoOiAyNCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuI3doZWVsIC5jYXAtY29udGFpbmVyIC5jYXAtaXRlbSBpbWcsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAuY2FwLWl0ZW0gaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciAuY2FwLWl0ZW0gYSwgI2FjY2Vzc29yeSAud2hlZWwtY29udGFpbmVyIC5jYXAtaXRlbSBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2hlZWwgLmNhcC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpsYXN0LWNoaWxkIC5idXR0b24sICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXItY29sb3I6ICNjY2NjY2M7XG59XG4jd2hlZWwgLmNhcC1jb250YWluZXIgLnByaWNlLWJ1dHRvbnMgLnByaWNlLWJ1dHRvbjpsYXN0LWNoaWxkIC5idXR0b246aG92ZXIsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciAucHJpY2UtYnV0dG9ucyAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ubWFpbi1pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1haW4taW1hZ2Uge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgfVxufVxuLm1haW4taW1hZ2UgaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogNjMwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1haW4taW1hZ2UgLnNsaWNrLWRvdHMgbGkge1xuICBoZWlnaHQ6IDIxcHg7XG4gIHdpZHRoOiAyMXB4O1xufVxuLm1haW4taW1hZ2UgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgaGVpZ2h0OiAyMXB4O1xuICB3aWR0aDogMjFweDtcbn1cbi5tYWluLWltYWdlIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgd2lkdGg6IDIzcHg7XG4gIGhlaWdodDogMjNweDtcbiAgbGluZS1oZWlnaHQ6IDIxcHg7XG4gIGJvcmRlcjogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbn1cbi5tYWluLWltYWdlIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhO1xufVxuXG4uYWx0LWltYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay10cmFjayB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IDA7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIHdpZHRoOiAxMTVweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFsdC1pbWFnZXMgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4uYWx0LWltYWdlcyAuc2xpY2stc2xpZGUuc2xpY2stY3VycmVudCB7XG4gIGJvcmRlci1jb2xvcjogIzk5OTk5OTtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uYWx0LWltYWdlcyBhIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBwYWRkaW5nOiAwLjdyZW07XG59XG4uYWx0LWltYWdlcyBpbWcge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLWluLW91dDtcbn1cbi5hbHQtaW1hZ2VzIGltZzpob3ZlciB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbn1cblxuI3doZWVsIC53aGVlbC1kZXRhaWwtc3BlY3Mge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtc3BlY3MgPiBkaXYge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlsLXNwZWNzIC53aGVlbC1zaXplcyB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG5cbi53aGVlbC1zcGVjcyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG4ud2hlZWwtc3BlY3NfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLndoZWVsLXNwZWNzX19kZXRhaWxzIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5kZXRhaWwtc3BlYy10YWJzIHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmRldGFpbC1zcGVjLXRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5kZXRhaWwtc3BlYy10YWJzLXBhbmVsIHtcbiAgcGFkZGluZzogMDtcbn1cbi5kZXRhaWwtc3BlYy10YWJzIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogNTAlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uZGV0YWlsLXNwZWMtdGFicyBhIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMC42cmVtIDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgY29sb3I6ICM2NjY7XG59XG4uZGV0YWlsLXNwZWMtdGFicyBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5kZXRhaWwtc3BlYy10YWJzIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJwLXRvZ2dsZS1idG4ge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLndoZWVsLWluZm8ge1xuICAgIG1heC13aWR0aDogNDAwcHg7XG4gIH1cbn1cbi53aGVlbC1pbmZvIGgzIHtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogIzMzMzMzMztcbn1cbi53aGVlbC1pbmZvIG9sIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4ud2hlZWwtaW5mbyBvbCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbi53aGVlbC1pbmZvIHAge1xuICBmb250LXNpemU6IDEuMDc1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi53aGVlbC1pbmZvIC5pbmZvcm1hdGlvbiwgLndoZWVsLWluZm8gLnNpemVzLCAud2hlZWwtaW5mbyAuZmluaXNoIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtaW5mbyAuZmluaXNoIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ud2hlZWwtaW5mbyAuc2l6ZXMgLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ud2hlZWwtaW5mbyAuc2l6ZXMtbGlzdCB7XG4gIGZvbnQtc2l6ZTogMS4wNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi53aGVlbC1pbmZvIC5zaXplcy1saXN0IHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi53aGVlbC1pbmZvIC5zZWUtc3BlY3MgYSB7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4ud2hlZWwtaW5mbyAuc2VlLXNwZWNzIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbiAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZSAuZmEtY2hldnJvbi11cDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYwNzhcIjtcbn1cbiN3aGVlbCAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24gLmZhcyB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIGNvbG9yOiAjMzM2Njk5O1xufVxuI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlcjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3aGVlbCAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4jd2hlZWwgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbCAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIH1cbn1cblxuLmN0YS1idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jdGEtYnV0dG9ucyB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gIH1cbn1cbi5jdGEtYnV0dG9uc19fYnRuIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY3RhLWJ1dHRvbnNfX2J0bi0tc3BhY2Uge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG59XG4uY3RhLWJ1dHRvbnMgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xuICBmb250LXNpemU6IDEuMTVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY3RhLWJ1dHRvbnMgbGkge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNTtcbiAgd2lkdGg6IDI1JTtcbn1cbi5jdGEtYnV0dG9ucyBsaTpmaXJzdC1jaGlsZCA+IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuXG4uZGV0YWlscy1tZWRpYSB7XG4gIHotaW5kZXg6IDU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kZXRhaWxzLW1lZGlhX19oZWFkZXIge1xuICBmb250LWZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICAtby10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICBjb2xvcjogIzAwMDtcbn1cbi5kZXRhaWxzLW1lZGlhX19oZWFkZXI6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuLmRldGFpbHMtZGl2aWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuLmRldGFpbHMtZGl2aWRlcjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M5O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogMTVweCBhdXRvIDA7XG4gIHdpZHRoOiAycmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZGV0YWlscy0zNjAsXG4gIC5kZXRhaWxzLXZpZGVvIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwIDFyZW07XG4gIH1cbiAgLmRldGFpbHMtZGl2aWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBoNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBzZWxlY3Qge1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAuZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAyO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAubm8tZml0bWVudCB7XG4gIG1pbi1oZWlnaHQ6IDZyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLm5vLWZpdG1lbnQ6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgb3BhY2l0eTogMC44O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDE7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5uby1maXRtZW50IC5lcnJvciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAubG9hZGluZ0ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5ob3Zlci1pdGVtOmhvdmVyIGJ1dHRvbiB7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLmhvdmVyLWl0ZW06aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMC4wNzU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAuaG92ZXItaXRlbTpob3Zlcjo6YmVmb3JlIHtcbiAgb3BhY2l0eTogMC43O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBidXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNDAlO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIG9wYWNpdHk6IDA7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsLW92ZXJsYXkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMTtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtc2l6ZTogNTBweDtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwtb3ZlcmxheSAuZmEtc3Bpbm5lciB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIHtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAzcmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDB2bWF4IHJnYmEoMCwgMCwgMCwgMC43KTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgfVxuICAjc2VlLW9uLXZlaGljbGUtcG9wdXBbb3Blbl0ge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3doZWVsLXNwZWMtcHJpY2UsICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuYnV5LW5vdyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3ZlaGljbGUtZGVzY3JpcHRpb24sICNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUge1xuICBmb250LWZhbWlseTogXCJUZWtvXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUgI3Zvdi1zdWJtb2RlbCB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1jb2xvci1idXR0b24ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAud2hlZWwtaW5mbyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC53aGVlbC1pbmZvIC53aGVlbC10aHVtYm5haWwge1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWluZm8sICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcy1pbmZvIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3doZWVsLWJyYW5kIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWNvbnRhaW5lciA+IC5zcGVjczpmaXJzdC1jaGlsZCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWNvbnRhaW5lciA+IC5zcGVjczpmaXJzdC1jaGlsZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcyAuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcyAuZGl2aWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI2ljbS12b3YtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52b3YtYW5nbGUtYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMjUlO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAudm92LWFuZ2xlLWFycm93IHtcbiAgICB0b3A6IDQ4JTtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52b3YtYW5nbGUtYXJyb3c6aG92ZXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3Zvdi1wcmV2aW91cy1hbmdsZSB7XG4gIGxlZnQ6IDA7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3Zvdi1uZXh0LWFuZ2xlIHtcbiAgcmlnaHQ6IDA7XG59XG5cbiNzd2F0Y2hlcy1kaWFsb2cge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMHZtYXggcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuI3N3YXRjaGVzLWRpYWxvZyAuaWNtLXZvdi1zd2F0Y2gtZ3JpZCB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIGdhcDogMTBweDtcbiAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiAxZnIgMWZyO1xufVxuXG4ud2hlZWwtZ2FsbGVyeV9faGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMTA1O1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtZ2FsbGVyeV9faGVhZGVyIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG59XG5cbi53aGVlbC1nYWxsZXJ5TGlzdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndoZWVsLWdhbGxlcnlMaXN0IHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG59XG4ud2hlZWwtZ2FsbGVyeUxpc3RfX2l0ZW0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDMxJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDIlO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4ud2hlZWwtZ2FsbGVyeUxpc3RfX2l0ZW06bnRoLWNoaWxkKG4rNykge1xuICBkaXNwbGF5OiBub25lO1xufVxuLndoZWVsLWdhbGxlcnlMaXN0X19pdGVtLS1kaXNwbGF5Om50aC1jaGlsZChuKzcpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi53aGVlbC1nYWxsZXJ5SW1hZ2Uge1xuICB3aWR0aDogMTkwcHg7XG4gIGhlaWdodDogMTAycHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtZ2FsbGVyeUltYWdlIHtcbiAgICB3aWR0aDogOTVweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndoZWVsLWdhbGxlcnlUeHQge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG4jc3BlY3Mge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jc3BlY3MgaDQge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3NwZWNzIC50YWJzIHtcbiAgYm9yZGVyOiAwO1xufVxuI3NwZWNzIHRhYmxlIHRyIHRoLCAjc3BlY3MgdGFibGUgdHIgdGQge1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbn1cbiNzcGVjcyB0YWJsZSB0aGVhZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG4jc3BlY3MgdGFibGUgdGhlYWQgdHIgdGgge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4jc3BlY3MgdGJvZHkge1xuICBib3JkZXI6IDA7XG59XG4jc3BlY3MgdHI6bnRoLWNoaWxkKG9kZCkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjFmMWYxO1xufVxuI3NwZWNzIHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuI3NwZWNzIHRoZWFkIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4jc3BlY3MgLnRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy10b3A6IDAuOXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuOXJlbTtcbn1cbiNzcGVjcyAudGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAwO1xufVxuI3NwZWNzIC50YWJzLWNvbnRlbnQgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4ud2hlZWwtc3BlYy10YWJzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDcwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi53aGVlbC1zcGVjLXRhYnMgPiBhIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi53aGVlbC1zcGVjLXRhYnMuaXMtYWN0aXZlIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlYjIxMmU7XG59XG4ud2hlZWwtc3BlYy10YWJzLmlzLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLndoZWVsLXNwZWMtcGFuZWwge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLndoZWVsLWRldGFpbC1zcGVjcy10aXRsZSAucm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnNwZWNzLWFjY29yZGlvbiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjY2NjY2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBwYWRkaW5nOiAxLjVyZW0gMDtcbn1cbi5zcGVjcy1hY2NvcmRpb24gLmFjY29yZGlvbi10aXRsZTpiZWZvcmUge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLnNwZWNzLWFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBvdmVyZmxvdzogYXV0bztcbiAgYm9yZGVyOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNwZWNzLWFjY29yZGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxufVxuXG4vKlxuLndoZWVsLXNwZWMge1xuICAgICYtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB9XG5cbiAgICAmLXRhYnMgPiBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGMTtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6Zm9jdXMsICZbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk3O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAmLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIGEge1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICAgICYtYnRuIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gIC50YWJzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgPiBkaXYge1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6MDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0qL1xuLmZpbmlzaGVzIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZpbmlzaGVzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG4uZmluaXNoZXMgaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uZmluaXNoZXMgaW1nIHtcbiAgbWF4LXdpZHRoOiAxNzBweDtcbn1cbi5maW5pc2hlcyBwIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmZpbmlzaGVzIHAgLmZpbmlzaC1uYW1lIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5maW5pc2hlcyBwIC5sdWdzIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmZpbmlzaGVzIC5sYWJlbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YzZjNmMztcbn1cbi5maW5pc2hlcyAuYWx0LWZpbmlzaGVzID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuZGlzY29udGludWVkLWZpbmlzaCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkZGRkZGQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC1zaXplOiAwLjdyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuZGlzY29udGludWVkLWZpbmlzaCAuZGlzY29udGludWVkLW92ZXJsYXkge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbi5maW5pc2hlcyAuYWx0LWZpbmlzaGVzID4gYS5kaXNjb250aW51ZWQtZmluaXNoOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbi5maW5pc2hlcyAuYWx0LWZpbmlzaGVzID4gYS5kaXNjb250aW51ZWQtZmluaXNoOmhvdmVyIC5kaXNjb250aW51ZWQtb3ZlcmxheSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuZGlzY29udGludWVkLWZpbmlzaDpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAwLjE1O1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhIC5pbWFnZSB7XG4gIG1heC13aWR0aDogOTBweDtcbn1cbi5maW5pc2hlcyAuYWx0LWZpbmlzaGVzID4gYSAuaW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiN3aGVlbCAud2hlZWwtZGV0YWlsLWdhbGxlcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSBoMiB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWwgLndoZWVsLWRldGFpbC1nYWxsZXJ5IGgyIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSBoMyB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlsLWdhbGxlcnkgLnRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXgtd2lkdGg6IDkwcmVtO1xuICBwYWRkaW5nOiAwIDJyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSAucGhvdG8ge1xuICBib3JkZXI6IDNweCBzb2xpZCAjZmVmZWZlO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSAucGhvdG8gc3BhbiB7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jd2hlZWwgLndoZWVsLWRldGFpbC1nYWxsZXJ5IC5uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlsLWdhbGxlcnkgLm5hdmlnYXRpb24gLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiAxNThweDtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xuICBsZXR0ZXItc3BhY2luZzogdW5zZXQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlcjogMnB4IHNvbGlkICMwYTBhMGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4jd2hlZWwgLndoZWVsLWRldGFpbC1nYWxsZXJ5IC5uYXZpZ2F0aW9uIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xuICBib3JkZXItY29sb3I6ICM2NjY2NjY7XG59XG5cbi5wcm9kdWN0LW5leHQtcHJldiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4ucHJvZHVjdC1uZXh0LXByZXYgYSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmOGY4Zjg7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLnByb2R1Y3QtbmV4dC1wcmV2IGE6aG92ZXIge1xuICBib3JkZXItY29sb3I6ICMwYTBhMGE7XG59XG4ucHJvZHVjdC1uZXh0LXByZXYgYS5uby1wcm9kdWN0IHtcbiAgb3BhY2l0eTogMC41O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5wcm9kdWN0LW5leHQtcHJldiBpbWcge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZDVkNWQ1O1xufVxuXG4ud2hlZWwtdGl0bGUgaDIsIC53aGVlbC10aXRsZSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi53aGVlbC10aXRsZSBoMiB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuLndoZWVsLXRpdGxlIGgzLCAud2hlZWwtdGl0bGUgaDQge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLndoZWVsLXRpdGxlIGgzIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjVyZW07XG59XG4ud2hlZWwtdGl0bGUgaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLndoZWVsLXRpdGxlIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLndoZWVsLXRpdGxlIHAge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4ud2hlZWwtdGl0bGUgLnRpdGxlIC5sdWctZGlzcGxheSB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4ud2hlZWwtdGl0bGUgLnJlZCB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuLndoZWVsLXRpdGxlIC5kaXZpZGVyIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgaGVpZ2h0OiA0NnB4O1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndoZWVsLXRpdGxlIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ud2hlZWwtdGl0bGUgLmZpbmlzaCAuZGlzY29udGludWVkIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ud2hlZWwtdGl0bGUgLnByaWNlLCAud2hlZWwtdGl0bGUgLm1zcnAtZGlzcGxheSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi53aGVlbC10aXRsZSAucHJpY2Ugc3BhbiwgLndoZWVsLXRpdGxlIC5tc3JwLWRpc3BsYXkgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi53aGVlbC10aXRsZSAucHJpY2Ugc3Bhbi5tc3JwLXByaWNpbmcsIC53aGVlbC10aXRsZSAubXNycC1kaXNwbGF5IHNwYW4ubXNycC1wcmljaW5nIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLndoZWVsLXRpdGxlIC5wcmljZSBzcGFuLm1zcnAtcHJpY2luZzpiZWZvcmUsIC53aGVlbC10aXRsZSAubXNycC1kaXNwbGF5IHNwYW4ubXNycC1wcmljaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDQ1JTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNlYjIxMmU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gIHRyYW5zZm9ybTogc2tld1koMTBkZWcpO1xufVxuLndoZWVsLXRpdGxlIC5tc3JwLWRpc3BsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jd2hlZWwgLmNhcnQge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbCAuY2FydCAucHJvZHVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3Quc2t1LXByb2R1Y3Qge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbiN3aGVlbCAuY2FydCAucHJvZHVjdCAjcHJvZHVjdC1zZWxlY3Qge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjVyZW0gY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3QgLnByb2R1Y3Qtc2t1IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3QgLmxhYmVsLnNrdS1pbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuI3doZWVsIC5jYXJ0IC5wcm9kdWN0IC5sYWJlbC5za3UtbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCB7XG4gIG1heC13aWR0aDogNDAwcHg7XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSBzcGFuIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWVlZWVlO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5idXR0b24uZml0bWVudC1vcGVuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGJvcmRlci1yaWdodDogMDtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAuYnV0dG9uLmZpdG1lbnQtb3Blbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbi5maXRtZW50LW9wZW46aG92ZXIgc3BhbiB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5idXR0b24uZml0bWVudENsZWFyMzpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAucmVtb3ZlLWZpdG1lbnQge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC52b3YtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAudm92LWxpbmsge1xuICAgIG1heC13aWR0aDogMjYwcHg7XG4gIH1cbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAudm92LWxpbmsgaSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuI3doZWVsIC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDM3MHB4O1xufVxuI3doZWVsIC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24uc2t1LXByaWNpbmctc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAudG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAudG9wIC5xdWFudGl0eSBpbnB1dCB7XG4gIG1heC13aWR0aDogODBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAudG9wIC5wcmljaW5nIHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuI3doZWVsIC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24gLmJvdHRvbSAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuI3doZWVsIC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24gLmJvdHRvbSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cblxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lci5ib2R5LW5hdi1maXhlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LCAuZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdiBhLCAuZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdiBidXR0b24sIC5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEsIC5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGJ1dHRvbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYgLnJvdy5leHBhbmRlZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdiAucm93LmV4cGFuZGVkIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYgLnJvdy5leHBhbmRlZCB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIH1cbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2IC5icmVhZGNydW1icy1yZXR1cm4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYgLmJyZWFkY3J1bWJzLXJldHVybi1saW5rIGkge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdiAuYnJlYWRjcnVtYnMtcmV0dXJuIC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgb3ZlcmZsb3c6IHVuc2V0O1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2IC5icmVhZGNydW1icy1yZXR1cm4gLmRldGFpbHMtbmF2LW1lbnUtYnV0dG9uIGkge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2IC5kZXRhaWxzLW5hdi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYgLmRldGFpbHMtbmF2LXJpZ2h0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICBib3JkZXItY29sb3I6ICMzMzMzMzM7XG4gIG1heC13aWR0aDogMTYwcHg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdiAuZGV0YWlscy1uYXYtcmlnaHQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciB7XG4gIC8qLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDo1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgIH0qL1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciB1bCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIHBhZGRpbmc6IDJyZW07XG4gIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTArICovXG4gIHNjcm9sbGJhci13aWR0aDogbm9uZTsgLyogRmlyZWZveCAqL1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgdWw6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgZGlzcGxheTogbm9uZTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIC5wcm9kdWN0LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG4gIG1heC1oZWlnaHQ6IDI2MHB4O1xuICBtYXgtd2lkdGg6IDQ0MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgYSAuaG92ZXItaXRlbSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciBhIC5ob3Zlci1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEgLmhvdmVyLWl0ZW0gPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEgLmhvdmVyLWl0ZW0gaW1nIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciBhIC5ob3Zlci1pdGVtIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIGEgLmhvdmVyLWl0ZW06aG92ZXIgaW1nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cbi5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIC5pbmZvIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kZXRhaWxzLW5hdi1jb250YWluZXIgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIC5pbmZvIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgLmluZm8gLndoZWVsLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgfVxufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgLmRldGFpbHMtbmF2LWJ1dHRvbi1jb250YWluZXIgYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDM4JTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBib3JkZXItcmFkaXVzOiAxMDBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uZGV0YWlscy1uYXYtY29udGFpbmVyIC5kZXRhaWxzLW5hdi1tZW51LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtYnV0dG9uLWNvbnRhaW5lciBidXR0b24uYnV0dG9uLWxlZnQge1xuICBsZWZ0OiAzcmVtO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIgLmRldGFpbHMtbmF2LWJ1dHRvbi1jb250YWluZXIgYnV0dG9uLmJ1dHRvbi1yaWdodCB7XG4gIHJpZ2h0OiAzcmVtO1xufVxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciAuZGV0YWlscy1uYXYtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBiYWNrZHJvcC1maWx0ZXI6IGJsdXIoM3B4KTtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgaDMsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgaDMge1xuICBmb250LXNpemU6IDEuMTVyZW07XG4gIGNvbG9yOiAjZWIyMTJlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAudGl0bGUsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLnRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhYWFhYWE7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC5hY2NvcmRpb24tY29udGFpbmVyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC5hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLmFjY29yZGlvbi10aXRsZSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXJzIC5hY2NvcmRpb24tY29udGVudCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNhYWFhYWE7XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLmZpdG1lbnQtc2VhcmNoIC5idXR0b24sICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLmZpdG1lbnQtc2VhcmNoIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbiwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbjpob3ZlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIGg1LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgaDUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIHVsLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgbGksICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciBsaSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIGlucHV0LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIGxhYmVsLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgbGFiZWwge1xuICBsaW5lLWhlaWdodDogMDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgdWwsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIHVsIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBsaSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBhLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGE6aG92ZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgYSBpLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBhIGkge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGEjY2xlYXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGEjY2xlYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlLXNlbGVjdGVkIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBjb2xvcjogd2hpdGU7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciBhLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtY2xlYXIge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNhYWFhYWE7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgcGFkZGluZzogMDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLWNsZWFyIGE6aG92ZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLWNsZWFyIGE6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciAuZmlsdGVyLWJ1dHRvbiwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIC5maWx0ZXItYnV0dG9uIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItcGFydC1udW1iZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciB7XG4gIG1heC13aWR0aDogODAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzY2NjY2NjtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItcGFydC1udW1iZXIgaW5wdXQsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciBpbnB1dCB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciBidXR0b24sICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzM2Njk5O1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSB7XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnksICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkge1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjNjY2NjY2O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsLCAjd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHNlbGVjdCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBsYWJlbCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBzZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBsYWJlbCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBsYWJlbCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBsYWJlbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHNlbGVjdCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBzZWxlY3Qge1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgaDUsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgaDUge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgaDUsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgaDUge1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyLXNlbGVjdGlvbiwgI3doZWVsLWJyYW5kcyAuZmlsdGVyLXNlbGVjdGlvbiwgI2dhbGxlcnkgLmZpbHRlci1zZWxlY3Rpb24ge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwLjc1cmVtO1xuICB9XG4gICN3aGVlbHMgLmFjY29yZGlvbi1pdGVtLCAjd2hlZWwtYnJhbmRzIC5hY2NvcmRpb24taXRlbSwgI2dhbGxlcnkgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjYWFhYWFhO1xuICB9XG59XG4jd2hlZWxzIC5hY2NvcmRpb24tdGl0bGUsICN3aGVlbC1icmFuZHMgLmFjY29yZGlvbi10aXRsZSwgI2dhbGxlcnkgLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlRla29cIiwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4jd2hlZWxzIC53aGVlbC1maWx0ZXIgI3doZWVsLWZpbHRlci1zZWFyY2gsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAjd2hlZWwtZmlsdGVyLXNlYXJjaCAuYnJhbmQtbmFtZSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyICN3aGVlbC1maWx0ZXItc2VhcmNoIC5icmFuZC1uYW1lIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW46IDAgMXJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAjd2hlZWwtZmlsdGVyLXNlYXJjaCAuYWNjb3JkaW9uLWZpbHRlcl9faGVhZGVyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgI3doZWVsLWZpbHRlci1zZWFyY2ggLmFjY29yZGlvbi1maWx0ZXJfX2hlYWRlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1bnNldDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fY29udGVudCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19jb250YWluZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fY29udGFpbmVyIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24sICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24ge1xuICBmbGV4LWdyb3c6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biB7XG4gICAgbWFyZ2luOiAwIDFyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHNlbGVjdCB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2RkZGRkZDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIC5idXR0b24sICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwLjc1cmVtIDEuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVyIC5zb3J0LXdoZWVscywgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5zb3J0LXdoZWVscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXIgLnNvcnQtd2hlZWxzLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgLnNvcnQtd2hlZWxzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG5cbiN3aGVlbHMgLmZpbHRlci1maXRtZW50LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXItZml0bWVudCwgI2dhbGxlcnkgLmZpbHRlci1maXRtZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbiN3aGVlbHMgLmZpbHRlciAudmVoaWNsZS10aXRsZSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlLCAjZ2FsbGVyeSAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgaGVpZ2h0OiA1NHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbiN3aGVlbHMgLmZpbHRlciAudmVoaWNsZS10aXRsZSBoNCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlIGg0LCAjZ2FsbGVyeSAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlIGg0IHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzIC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0LCAjZ2FsbGVyeSAuZmlsdGVyIC52ZWhpY2xlLXNlbGVjdCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGJvcmRlci10b3A6IDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IHNlbGVjdCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC52ZWhpY2xlLXNlbGVjdCBzZWxlY3QsICNnYWxsZXJ5IC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IHNlbGVjdCB7XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYztcbn1cbiN3aGVlbHMgLmZpbHRlciAudmVoaWNsZS1zZWxlY3QgLmJ1dHRvbi1ncm91cCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC52ZWhpY2xlLXNlbGVjdCAuYnV0dG9uLWdyb3VwLCAjZ2FsbGVyeSAuZmlsdGVyIC52ZWhpY2xlLXNlbGVjdCAuYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUsICN3aGVlbC1icmFuZHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xufVxuI3doZWVscyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSBpbnB1dCwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSBpbnB1dCwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUgaW5wdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgbWFyZ2luOiAwO1xufVxuI3doZWVscyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZSwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZSwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUgLnZzX19kcm9wZG93bi10b2dnbGUge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4jd2hlZWxzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4jd2hlZWxzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCBpbnB1dCwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQgaW5wdXQsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4jd2hlZWxzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCAudnNfX2Ryb3Bkb3duLXRvZ2dsZSwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQgLnZzX19kcm9wZG93bi10b2dnbGUsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGJvcmRlcjogMDtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIHN2ZywgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQgc3ZnLCAjZ2FsbGVyeSAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQgc3ZnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUgLnZzX19zZWxlY3RlZCwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX3NlbGVjdGVkLCAjZ2FsbGVyeSAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX3NlbGVjdGVkIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnByb2R1Y3QtZmlsdGVycyAuaWNvbi1wcm9kdWN0LWZpbHRlciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG4ucHJvZHVjdC1maWx0ZXJzIC5maWx0ZXItYnJhbmRzLW9wdHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaWNvbi1maWx0ZXItdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaWNvbi1maWx0ZXItdGl0bGUgaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5pY29uLWZpbHRlci1pdGVtcyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLmljb24tZmlsdGVyLWl0ZW1zIGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaWNvbi1maWx0ZXItaXRlbXMgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmljb24tZmlsdGVyLWl0ZW1zIGxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiN3aGVlbHMgLmZpbHRlciwgI3doZWVsLWJyYW5kcyAuZmlsdGVyLCAjZ2FsbGVyeSAuZmlsdGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuI3doZWVscyAuZmlsdGVyIGg0LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgaDQsICNnYWxsZXJ5IC5maWx0ZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgdWwsICN3aGVlbC1icmFuZHMgLmZpbHRlciB1bCwgI2dhbGxlcnkgLmZpbHRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4jd2hlZWxzIC5maWx0ZXIgbGFiZWwsICN3aGVlbC1icmFuZHMgLmZpbHRlciBsYWJlbCwgI2dhbGxlcnkgLmZpbHRlciBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzIC5maWx0ZXIgaS5mYS1taW51cywgI3doZWVscyAuZmlsdGVyIGkuZmEtcGx1cywgI3doZWVsLWJyYW5kcyAuZmlsdGVyIGkuZmEtbWludXMsICN3aGVlbC1icmFuZHMgLmZpbHRlciBpLmZhLXBsdXMsICNnYWxsZXJ5IC5maWx0ZXIgaS5mYS1taW51cywgI2dhbGxlcnkgLmZpbHRlciBpLmZhLXBsdXMge1xuICBjb2xvcjogIzg4ODg4ODtcbn1cbiN3aGVlbHMgLmZpbHRlciBpLmZhLW1pbnVzOmhvdmVyLCAjd2hlZWxzIC5maWx0ZXIgaS5mYS1wbHVzOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgaS5mYS1taW51czpob3ZlciwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIGkuZmEtcGx1czpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciBpLmZhLW1pbnVzOmhvdmVyLCAjZ2FsbGVyeSAuZmlsdGVyIGkuZmEtcGx1czpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItdGl0bGUsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLXRpdGxlLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1idXR0b24sICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbiwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM0NDQ0NDQ7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1idXR0b246aG92ZXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItaXRlbXMsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWl0ZW1zLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItaXRlbXMge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWl0ZW1zIGxpLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWl0ZW1zIGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBpbnB1dCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItaXRlbXMgaW5wdXQsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1pdGVtcyBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsYWJlbCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItaXRlbXMgbGFiZWwsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsYWJlbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI3doZWVscyAuZmlsdGVyIC5wcm9kdWN0LWZpbHRlcnMgLnByb2R1Y3QtZmlsdGVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIsICNnYWxsZXJ5IC5maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICB9XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEgaSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEgaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhIGkge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciBpLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciBpLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGE6aG92ZXIgaSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhLmZpdG1lbnRTZXQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhLmZpdG1lbnRTZXQgaSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpIHtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgdWwgbGksICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzQ0NDQ0NDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYTpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhOmhvdmVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtdGl0bGUsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtdGl0bGUgaDQsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSBoNCwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSBoNCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYnJhbmRzIGxhYmVsLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1icmFuZHMgbGFiZWwsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1icmFuZHMgbGFiZWwge1xuICBtYXgtd2lkdGg6IDI2MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI3doZWVsIC53aGVlbC1pbmZvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIHtcbiAgLypwYWRkaW5nOjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjVweCAkZ3JheUM7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nOjIuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjIuNXJlbTtcbiAgfSovXG59XG4jd2hlZWwgLndoZWVsLWluZm8gaDEsICN3aGVlbCAud2hlZWwtaW5mbyBoNCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyBoMSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyBoNCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5ib3R0b20sICN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zdG9jaywgI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlLCAjd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctbWF0Y2gsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmJvdHRvbSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zdG9jaywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1tYXRjaCB7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3Mge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXNwZWNzLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAudG9wLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3Age1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmFmdGVyLCAjd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAucmVhciA+IHNwYW46YWZ0ZXIsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLnJlYXIgPiBzcGFuOmFmdGVyIHtcbiAgY29udGVudDogXCIsXCI7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmxhc3QtY2hpbGQ6YWZ0ZXIsICN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAudG9wIC5yZWFyID4gc3BhbjpsYXN0LWNoaWxkOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLmZyb250ID4gc3BhbjpsYXN0LWNoaWxkOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLnJlYXIgPiBzcGFuOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXNwZWNzIC5ib3R0b20sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSBzcGFuIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1icmFuZCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIC5wcmljaW5nLWJyYW5kIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuY2FsbC1mb3IsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuY2FsbC1mb3Ige1xuICBjb2xvcjogI2ViMjEyZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIC5wcmljaW5nLXN0YXJ0aW5nIC5zYWxlLWl0ZW0sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuc2FsZS1pdGVtIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbS5ub24tc2t1cGFnZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tLm5vbi1za3VwYWdlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tLm5vbi1za3VwYWdlID4gZGl2LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC5ib3R0b20ubm9uLXNrdXBhZ2UgPiBkaXYge1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAucHJpY2luZy1zdG9jaywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAucHJpY2luZy1zdG9jayB7XG4gIGNvbG9yOiAjMzNjYzMzO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1wcmljZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXByaWNlIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlIC5zYWxlLWl0ZW0sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlIC5zYWxlLWl0ZW0ge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlIC5zdWJ0aXRsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAuc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnN1YnRpdGxlIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctcHJpY2UgLnN1YnRpdGxlIHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlIC5wcmljZS1vcmlnaW5hbCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utb3JpZ2luYWwge1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utc2FsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utc2FsZSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLW1hdGNoLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLW1hdGNoIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctdmVoaWNsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy12ZWhpY2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy12ZWhpY2xlIGg0LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXZlaGljbGUgaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctdmVoaWNsZSBidXR0b24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctdmVoaWNsZSBidXR0b24ge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiAjZWIyMTJlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhIC5idXR0b24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMS42cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEgLmJ1dHRvbjpob3ZlciwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEgLmJ1dHRvbi5ncmF5LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5jdGEgLmJ1dHRvbi5ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhIC5idXR0b24uZ3JheTpob3ZlciwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b24uZ3JheTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YSAuYnV0dG9uLmFjdGl2ZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b24uYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWJ1dHRvbiwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5jdGEtbGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbms6bGFzdC1jaGlsZCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWxpbms6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rOmxhc3QtY2hpbGQgLmljb24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rOmxhc3QtY2hpbGQgLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5OTk5O1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEtbGluay5vcmFuZ2UgLmljb24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rLm9yYW5nZSAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rIGEsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIGEge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEtbGluayAuaWNvbiwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWxpbmsgLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5zZXQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDIuNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbmsgLnRleHQsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIC50ZXh0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbmsgLnRleHQsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIC50ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuYnV5LW9wdGlvbnMsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmJ1eS1vcHRpb25zIHtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZDRkNDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5idXktb3B0aW9ucyBsYWJlbCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuYnV5LW9wdGlvbnMgbGFiZWwge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5idXktb3B0aW9ucyAubWlzc2luZywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuYnV5LW9wdGlvbnMgLm1pc3Npbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgNTEsIDUxLCAwLjUpO1xufVxuXG4jd2hlZWwgLndoZWVsLWluZm8gaW1nLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIGltZyB7XG4gIG1heC13aWR0aDogMjAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWwgLndoZWVsLWluZm8gLnNlcmllcy1sb2dvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5zZXJpZXMtbG9nbyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICN3aGVlbCAud2hlZWwtaW5mbyAuc2VyaWVzLWxvZ28gaW1nLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5zZXJpZXMtbG9nbyBpbWcge1xuICAgIG1heC13aWR0aDogMTgwcHg7XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAud2hlZWwtbmFtZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbCAud2hlZWwtaW5mbyAud2hlZWwtbmFtZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuI3doZWVsIC53aGVlbC1pbmZvIC53aGVlbC1uYW1lIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLndoZWVsLW5hbWUgc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgaDUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ud2hlZWwtZGV0YWlsLXNpemVzIC50aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi53aGVlbC1iYWRnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLWJhZGdlcyA+IGRpdiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLndoZWVsLWJhZGdlcyBpbWcge1xuICBtYXgtd2lkdGg6IDEwMHB4O1xufVxuXG4ud2hlZWwtZmluaXNoZXMgaW1nIHtcbiAgbWF4LXdpZHRoOiAxNTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ud2hlZWwtZmluaXNoZXMgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLndoZWVsLWZpbmlzaGVzIC50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAxLjE1cmVtO1xufVxuLndoZWVsLWZpbmlzaGVzIC5kZXRhaWwtdGh1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLWZpbmlzaGVzIC53aGVlbC1maW5pc2gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4ud2hlZWwtdmlkZW9zLmZpbmlzaGVzLWJvcmRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYWFhYWFhO1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG59XG4ud2hlZWwtdmlkZW9zIC50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAxLjE1cmVtO1xufVxuLndoZWVsLXZpZGVvcyAud2hlZWwtdmlkZW8ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLXZpZGVvcyAud2hlZWwtdmlkZW8gPiBkaXYge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWFhYWE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aGVlbC12aWRlb3MgLndoZWVsLXZpZGVvIGE6aG92ZXIgLnBsYXktaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyBhOmhvdmVyIC5wbGF5LWljb24gaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cbi53aGVlbC12aWRlb3MgLndoZWVsLXZpZGVvIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyAucGxheS1pY29uIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ucHJpY2luZy1pbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07XG59XG5cbiN3aGVlbCAuc3BlYy1pbmZvcm1hdGlvbi1jb250YWluZXIgLnNwZWMtaW5mb3JtYXRpb24ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5OTk5OTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTk5OTk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW06bnRoLWNoaWxkKG9kZCkgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi1pdGVtID4gZGl2IHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW46IDAgMnB4O1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi1pdGVtID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW0gPiBkaXY6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuI3doZWVsIC53aGVlbC1kZXRhaWwtc3RhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jd2hlZWwgLndoZWVsLWRldGFpbC1zdGFnZSAuY2FwdGlvbiB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVsIC5zdGFnZS1jb250YWluZXIgPiBkaXY6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAzNSU7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIHdpZHRoOiA4MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWwgLnN0YWdlLWNvbnRhaW5lciA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgd2lkdGg6IDg1JTtcbiAgfVxufVxuI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiA0cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMge1xuICAgIG1hcmdpbi1yaWdodDogOHJlbTtcbiAgfVxufVxuI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMgLnNsaWNrLXRyYWNrIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgd2lkdGg6IDEwMCU7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyAuc2xpY2stc2xpZGUsICN3aGVlbCAuc3RhZ2UtY29udGFpbmVyIC5hbHQtaW1hZ2VzIC5zbGljay10cmFjayB7XG4gIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyAuc2xpY2stc2xpZGUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYztcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICB3aWR0aDogMTE1cHggIWltcG9ydGFudDtcbn1cbiN3aGVlbCAuc3RhZ2UtY29udGFpbmVyIC5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjOTk5OTk5O1xufVxuI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMgLnNsaWNrLWFjdGl2ZTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyB7XG4gIC8qLnNsaWNrLXRyYWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOjEwMCUhaW1wb3J0YW50O1xuICAgIH1cbiAgfSovXG59XG5cbi5tYWluLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5tYWluLWltYWdlIGltZyB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uYWx0LWltYWdlcyB7XG4gIG1hcmdpbjogMCBhdXRvIDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWx0LWltYWdlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uYWx0LWltYWdlcyAuc2xpY2stdHJhY2sge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hbHQtaW1hZ2VzLS1yZXRhaWxlciAuc2xpY2stdHJhY2sge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgLyptYXJnaW4tdG9wOiAzcmVtOyovXG4gIH1cbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IDA7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stc2xpZGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLXNsaWRlIGltZyB7XG4gIG1heC13aWR0aDogMTAwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cbi5hbHQtaW1hZ2VzIGEge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAuN3JlbTtcbn1cbi5hbHQtaW1hZ2VzIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBvcGFjaXR5OiAwLjU7XG59XG4uYWx0LWltYWdlcyBpbWc6aG92ZXIge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stYWN0aXZlOmFmdGVyIHtcbiAgd2lkdGg6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGhlaWdodDogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLWN1cnJlbnQ6YWZ0ZXIge1xuICB3aWR0aDogODAlO1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLWN1cnJlbnQgaW1nIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuI3doZWVsIC5kZXRhaWxzLW1lZGlhIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAycmVtO1xufVxuXG4uem9vbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnpvb206YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDMzcHg7XG4gIGhlaWdodDogMzNweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoaWNvbi5wbmcpO1xufVxuLnpvb20gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uem9vbSBpbWc6OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4vKlxuLmVhc3l6b29tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgJ1Nocmluay13cmFwJyB0aGUgZWxlbWVudCBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gICp6b29tOiAxO1xufVxuXG4uZWFzeXpvb20gaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLmVhc3l6b29tLmlzLWxvYWRpbmcgaW1nIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLmVhc3l6b29tLmlzLXJlYWR5IGltZyB7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xufVxuXG4uZWFzeXpvb20uaXMtZXJyb3IgaW1nIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmVhc3l6b29tLW5vdGljZSB7XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTUwO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTBlbTtcbiAgbWFyZ2luOiAtMWVtIDAgMCAtNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4ICM4ODg7XG59XG5cbi5lYXN5em9vbS1mbHlvdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmVhc3l6b29tLWZseW91dCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cblxuXG4uZWFzeXpvb20tLW92ZXJsYXkgLmVhc3l6b29tLWZseW91dCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmVhc3l6b29tLS1hZGphY2VudCAuZWFzeXpvb20tZmx5b3V0IHtcbiAgdG9wOiAtMTBweDtcbiAgbGVmdDogNzUlO1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjMzMzO1xufVxuXG5cblxuXG5cblxuXG5cblxuXG4qL1xuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSBoMSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSBoMSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSBoMSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSBoMSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgaDEge1xuICAgIGNvbG9yOiAjZmVmZWZlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSBoMSB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuY29udGVudC1oZWFkZXIsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmNvbnRlbnQtaGVhZGVyLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuY29udGVudC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvYmFubmVycy93aGVlbHMtYmFubmVyLmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDQ0NDQ0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmNvbnRlbnQtaGVhZGVyLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5jb250ZW50LWhlYWRlciwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmNvbnRlbnQtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDI0MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdlLWNvbnRlbnQucGFkZGVkLmV4dHJhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdlLWNvbnRlbnQucGFkZGVkLmV4dHJhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucGFnZS1jb250ZW50LnBhZGRlZC5leHRyYSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwgPiBsaSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwLjM1cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwgPiBsaTpsYXN0LWNoaWxkIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSB7XG4gIHdpZHRoOiA5NnB4O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwgPiBsaTpsYXN0LWNoaWxkIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhIHtcbiAgd2lkdGg6IDQ2cHg7XG4gIGhlaWdodDogNTJweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNGY0ZjQ7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGE6aG92ZXIsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLmFjdGl2ZS1sZXR0ZXIsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhOmhvdmVyLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5hY3RpdmUtbGV0dGVyLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGE6aG92ZXIsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5hY3RpdmUtbGV0dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5kaXNhYmxlLWxldHRlciwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGEuZGlzYWJsZS1sZXR0ZXIsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5kaXNhYmxlLWxldHRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjI1O1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW4sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnMsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW4sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGEsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYSwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGJ1dHRvbiwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYnV0dG9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYnV0dG9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSA+IGRpdiwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGEgPiBkaXYsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSA+IGRpdiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGEgPiBkaXYsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGEgPiBkaXYsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSA+IGRpdiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBidXR0b24gPiBkaXYge1xuICB3aWR0aDogNjAlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGEsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYnV0dG9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYnV0dG9uIHtcbiAgd2lkdGg6IGF1dG87XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTJweDtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5ob3Zlci1pdGVtLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5ob3Zlci1pdGVtLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaG92ZXItaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmhvdmVyLWl0ZW06aG92ZXIgaW1nLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5ob3Zlci1pdGVtOmhvdmVyIGltZywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmhvdmVyLWl0ZW06aG92ZXIgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjAyNSk7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zYWxlLWl0ZW0sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNhbGUtaXRlbSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNhbGUtaXRlbSB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxMzVkZWcsICNlYjIxMmUgMCwgI2ViMjEyZSA0MCUsIHRyYW5zcGFyZW50IDQwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaW5mbywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaW5mbywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmluZm8ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmltYWdlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5pbWFnZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmltYWdlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIHNwYW4sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSBzcGFuLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIHNwYW4ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgLm5ldywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIC5uZXcsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgLm5ldyB7XG4gIHdpZHRoOiA1NnB4O1xuICBoZWlnaHQ6IDI4cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAyO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIC5icmFuZC1hbmQtbmFtZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIC5icmFuZC1hbmQtbmFtZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSAuYnJhbmQtYW5kLW5hbWUge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3MsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3Mge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcyAuc2t1LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcyAuc2t1LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3MgLnNrdSB7XG4gIGNvbG9yOiAjOTk5OTk5O1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC5zeW1ib2wsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC52YWx1ZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnN5bWJvbCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnZhbHVlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnN5bWJvbCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC52YWx1ZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC5zZXQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC5zZXQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSAuc2V0IHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnN5bWJvbCwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnZhbHVlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAuc3ltYm9sLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAudmFsdWUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAuc3ltYm9sLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnZhbHVlIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLm9yaWdpbmFsLXByaWNlIC52YWx1ZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnZhbHVlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnZhbHVlIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5zYWxlcy1wcmljZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uuc2FsZXMtcHJpY2UsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5zYWxlcy1wcmljZSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNoaXBwaW5nLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzk5OTk5OTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2luYXRpb24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2luYXRpb24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdpbmF0aW9uIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucGFnaW5hdGlvbiAuY3VycmVudCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucGFnaW5hdGlvbiAuY3VycmVudCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuZmluYW5jaW5nLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuZmluYW5jaW5nLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiBoNSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gaDUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiBoNSB7XG4gIGZvbnQtc2l6ZTogMS44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gcCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gcCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHAge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGluZS1oZWlnaHQ6IDI7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiAudGl0bGUsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIC50aXRsZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIC50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gdWwsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHVsLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gdWwge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiB1bCBsaSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gdWwgbGksICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDMsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDMsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGgzLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDQgc3BhbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCBzcGFuLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCBzcGFuIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5cbi5zdGlja3ktY29udGFpbmVyIC50b3Age1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAxcmVtIDEuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIGEsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIGEge1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA1MnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgYSwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggYSB7XG4gICAgd2lkdGg6IDQwcHg7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciBhOmhvdmVyLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIGEuYWN0aXZlLWxldHRlciwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggYTpob3ZlciwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggYS5hY3RpdmUtbGV0dGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIGEuZGlzYWJsZS1sZXR0ZXIsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIGEuZGlzYWJsZS1sZXR0ZXIge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgb3BhY2l0eTogMC4yNTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW4sIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjM1cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjM1cmVtO1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGEsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGEsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYnV0dG9uLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGEsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBhLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGEsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjZWZlZmVmO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGEgPiBkaXYsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBidXR0b24gPiBkaXYsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBidXR0b24gPiBkaXYsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiB7XG4gIHdpZHRoOiA2MCU7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGEsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYnV0dG9uLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBhLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24ge1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUycHg7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubWFpbi5jdGEtYWRkZWQge1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzBhMGEwYTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5jb250ZW50LWhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IDBweCA1cHggMTVweCAtNXB4ICMwYTBhMGE7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAuY29udGVudC1oZWFkZXIgaDEge1xuICBmb250LXNpemU6IDEuMTVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4vKlxuLy8gc2VyaWVzIHRpdGxlXG4jd2hlZWxzIHtcbiAgcGFkZGluZy10b3A6MnJlbTtcbiAgLnNlcmllcy1hbmNob3Ige1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0yMDBweDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnNlcmllcy1sb2dvIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUE7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6MjAwcHg7XG4gICAgfVxuICB9XG4gIC5wcm9kdWN0cy1zZXJpZXMsIC5wcm9kdWN0cy1zZXJpZXMgLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OmF1dG87XG4gIH1cbn1cblxuLy8gd2hlZWxzIGxpc3RpbmdcbiN3aGVlbHMge1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgLnByb2R1Y3QtaW5mb3JtYXRpb24ge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgICB9XG4gICAgICAud2hlZWwtbmFtZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIH1cbiAgICAgIC53aGVlbC1zaXplcyB7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgfVxuICAgIH1cbiAgICAmLW5vbmUge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEZpdG1lbnRcbiN3aGVlbHMsI3doZWVsIHtcbiAgLnBhZ2UtaGVhZGVyLmZpdG1lbnQtaGVhZGVyIHtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgZm9udC1zaXplOjEuODVyZW07XG4gICAgICBmb250LXNpemU6NzAwO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpdG1lbnQtYmFyLWNvbnRhaW5lciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuZml0bWVudC1iYXIge1xuICAgICAgcGFkZGluZy1sZWZ0Oi42MjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0Oi42MjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0Oi45Mzc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO1xuICAgICAgfVxuICAgICAgJi5yaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIG1heC13aWR0aDozMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZml0bWVudC1oZWFkZXItaW5mbyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIC52ZWhpY2xlLXNpemUge1xuICAgICAgICBmb250LXNpemU6MS4zNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6MTAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZS1kaXNwbGF5IHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6MXB4IHNvbGlkICRncmF5QTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGUtZGlzcGxheSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICB9XG4gICAgLnZlaGljbGVVcGRhdGUge1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgIC5maXRtZW50LWNoYW5nZSB7XG4gICAgICBjb2xvcjokZ3JheTU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbn0qL1xuLnRpcmUtZGV0YWlscyB7XG4gIGJhY2tncm91bmQ6ICNmMWYxZjE7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xufVxuXG4udGlyZS1pbmZvX19oZWFkZXIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLnRpcmUtY3RhIC5idXR0b24tZ3JvdXAge1xuICBtYXJnaW46IDA7XG59XG4udGlyZS1jdGEgLmJ1dHRvbi1ncm91cCBsaSB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG4udGlyZS1jdGEgLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50aXJlLXNwZWNzIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbi50aXJlLXNwZWNzX19oZWFkZXIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi50aXJlLXNwZWNzX19kZXRhaWxzIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4jdGlyZXMgaDIsICN0aXJlcyBoMyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI3RpcmVzIGgyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsZXR0ZXItc3BhY2luZzogLTVweDtcbn1cbiN0aXJlcyBoMyB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jdGlyZXMgYSB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0LXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNjY2NjY2O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3RpcmVzIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICB9XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0IC5idXR0b24gaSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydCAuZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICB3aWR0aDogMTAwJTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbi5hY3RpdmUtZmlsdGVyLWNvdW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQ6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24gaSB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jdGlyZXMgLnByb2R1Y3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nOiAycmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN0aXJlcyAucHJvZHVjdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gIH1cbn1cbiN0aXJlcyAucHJvZHVjdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuI3RpcmVzIC5wcm9kdWN0LWl0ZW0gPiAuY29sdW1uLCAjdGlyZXMgLnByb2R1Y3QtaXRlbSA+IC5jb2x1bW5zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiN0aXJlcyAucHJvZHVjdHMtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1heC13aWR0aDogODByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjdGlyZXMgLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN0aXJlcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uLCAjdGlyZXMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnMge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbiN0aXJlcyAucHJvZHVjdHMtbGlzdCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3RpcmVzIC5wcm9kdWN0cy1saXN0IGEgLmhvdmVyLWl0ZW0gaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jdGlyZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbTpob3ZlciBpbWcge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuI3RpcmVzIC5wcm9kdWN0cy1saXN0IC5pbmZvIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN0aXJlcyAucHJvZHVjdHMtbGlzdCAuaW5mbyB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB9XG59XG4jdGlyZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gLndoZWVsLW5hbWUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjdGlyZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8gLndoZWVsLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgfVxufVxuXG4jYWNjZXNzb3JpZXMgaDIsICNhY2Nlc3NvcmllcyBoMyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI2FjY2Vzc29yaWVzIGgyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsZXR0ZXItc3BhY2luZzogLTVweDtcbn1cbiNhY2Nlc3NvcmllcyBoMyB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jYWNjZXNzb3JpZXMgYSB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jYWNjZXNzb3JpZXMgLmFjY2Vzc29yeS1wcm9kdWN0cyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG1heC13aWR0aDogODByZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYWNjZXNzb3JpZXMgLmFjY2Vzc29yeS1wcm9kdWN0cyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5hY2Nlc3NvcnktcHJvZHVjdHMge1xuICAgIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICB9XG59XG4jYWNjZXNzb3JpZXMgLnBhZ2luYXRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XG59XG4jYWNjZXNzb3JpZXMgLnBhZ2luYXRpb24gYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNhY2Nlc3NvcmllcyAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjIxMmU7XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0LXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXI6IDJweCBzb2xpZCAjNjY2NjY2O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICB9XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0IC5idXR0b24gaSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydCAuZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICB3aWR0aDogMTAwJTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbi5hY3RpdmUtZmlsdGVyLWNvdW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQ6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24gaSB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3QtaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nOiAycmVtO1xuICBwYWRkaW5nLXRvcDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdC1pdGVtIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdC1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAwO1xufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0LWl0ZW0gPiAuY29sdW1uLCAjYWNjZXNzb3JpZXMgLnByb2R1Y3QtaXRlbSA+IC5jb2x1bW5zIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNhY2Nlc3NvcmllcyAuYWNjZXNzb3J5LWZpbHRlciAuaW5wdXQtZ3JvdXAtYnV0dG9uID4gYnV0dG9uIHtcbiAgcGFkZGluZzogMCAxcmVtO1xufVxuI2FjY2Vzc29yaWVzIC5hY2Nlc3NvcnktZmlsdGVyIFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpLCAjYWNjZXNzb3JpZXMgLmFjY2Vzc29yeS1maWx0ZXIgW3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBvcGFjaXR5OiAxO1xuICBwb2ludGVyLWV2ZW50czogdmlzaWJsZTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuI2FjY2Vzc29yaWVzIC5hY2Nlc3NvcnktZmlsdGVyIGZvcm0gPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI2FjY2Vzc29yaWVzIC5hY2Nlc3NvcnktZmlsdGVyIGZvcm0gPiBkaXY6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IHtcbiAgLyptYXJnaW4tYm90dG9tOjFyZW07XG4gIG1heC13aWR0aDo4MHJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgbWF4LXdpZHRoOm5vbmU7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICB9Ki9cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uLCAjYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnMge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uOm50aC1jaGlsZCgzbiksICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQoM24pIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgcGFkZGluZzogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSBpbWcge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgcGFkZGluZzogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbTpob3ZlciAuZmluaXNoLWxvZ28gaW1nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8ge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC53aGVlbC1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAuYWNjZXNzb3J5LWZpbmlzaCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC5maW5pc2gtbG9nbyBpbWcge1xuICBtYXgtaGVpZ2h0OiA1MHB4O1xuICBtYXgtd2lkdGg6IDE2MHB4O1xuICB3aWR0aDogYXV0bztcbiAgcGFkZGluZzogMC41cmVtIDA7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcyA+IC5vdGhlci1maW5pc2gge1xuICAgIHdpZHRoOiAyNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiA2cHg7XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZ3JpZDtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyID4gZGl2IHtcbiAgZ3JpZC1jb2x1bW46IDEvMTtcbiAgZ3JpZC1yb3c6IDEvMTtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIC5tb3JlLWZpbmlzaGVzLCAjYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciAub25lLWZpbmlzaCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogNHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC5tb3JlLWZpbmlzaGVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jYWNjZXNzb3J5IHtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjYWNjZXNzb3J5IHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuI2FjY2Vzc29yeSAucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNhY2Nlc3NvcnkgLnBhZ2UtaGVhZGVyIHtcbiAgICBtYXgtaGVpZ2h0OiA2MDBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG59XG4jYWNjZXNzb3J5IC5wYWdlLWhlYWRlciAuZmxleC12aWRlbyBpZnJhbWUge1xuICB0b3A6IC0xMCU7XG59XG4jYWNjZXNzb3J5ICNkZXRhaWwtdG9wIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDBkZWcsICNlN2U3ZTcgMCUsICNlN2U3ZTcgNSUsIHRyYW5zcGFyZW50IDIwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG59XG4jYWNjZXNzb3J5ICNkZXRhaWwtdG9wID4gZGl2IHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2FjY2Vzc29yeSAjZGV0YWlsLXRvcCA+IGRpdiB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbiNhY2Nlc3NvcnkgLmxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jYWNjZXNzb3J5IC5sYWJlbCBpIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4jYWNjZXNzb3J5IC5idXR0b24sICNhY2Nlc3NvcnkgaW5wdXQsICNhY2Nlc3Nvcnkgc2VsZWN0IHtcbiAgbWF4LXdpZHRoOiAzNzBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIGgyLCAjYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgaDIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgaDMsICNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgaDMge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuNXJlbTtcbn1cbiNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSBoNCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDAuMjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIHAge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgLmJyYW5kIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIC5yZWQge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSAuZGl2aWRlciB7XG4gIHdpZHRoOiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGhlaWdodDogNDZweDtcbiAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSAuZGl2aWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIC5maW5pc2ggLmRpc2NvbnRpbnVlZCB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBtYXJnaW4tdG9wOiAtMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIC5wcmljZSwgI2FjY2Vzc29yeSAuYWNjZXNzb3J5LXRpdGxlIC5tc3JwLWRpc3BsYXkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgLnByaWNlIHNwYW4sICNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSAubXNycC1kaXNwbGF5IHNwYW4ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgLnByaWNlIHNwYW4ubXNycC1wcmljaW5nLCAjYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgLm1zcnAtZGlzcGxheSBzcGFuLm1zcnAtcHJpY2luZyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSAucHJpY2Ugc3Bhbi5tc3JwLXByaWNpbmc6YmVmb3JlLCAjYWNjZXNzb3J5IC5hY2Nlc3NvcnktdGl0bGUgLm1zcnAtZGlzcGxheSBzcGFuLm1zcnAtcHJpY2luZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiA0NSU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZWIyMTJlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1koMTBkZWcpO1xuICB0cmFuc2Zvcm06IHNrZXdZKDEwZGVnKTtcbn1cbiNhY2Nlc3NvcnkgLmFjY2Vzc29yeS10aXRsZSAubXNycC1kaXNwbGF5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLnByb2R1Y3Qge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI2FjY2Vzc29yeSAuY2FydCAucHJvZHVjdC5za3UtcHJvZHVjdCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuI2FjY2Vzc29yeSAuY2FydCAucHJvZHVjdCAjcHJvZHVjdC1zZWxlY3Qge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjVyZW0gY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5wcm9kdWN0IC5wcm9kdWN0LXNrdSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuI2FjY2Vzc29yeSAuY2FydCAucHJvZHVjdCAubGFiZWwuc2t1LWluZm9ybWF0aW9uIHtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5wcm9kdWN0IC5sYWJlbC5za3UtbGFiZWwge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQge1xuICBtYXgtd2lkdGg6IDQwMHB4O1xufVxuI2FjY2Vzc29yeSAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuI2FjY2Vzc29yeSAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSBzcGFuIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzMzMzMzMztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VlZWVlZTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbi5maXRtZW50LW9wZW4ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuI2FjY2Vzc29yeSAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAuYnV0dG9uLmZpdG1lbnQtb3Blbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5idXR0b24uZml0bWVudC1vcGVuOmhvdmVyIHNwYW4ge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbi5maXRtZW50Q2xlYXIzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5yZW1vdmUtZml0bWVudCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC52b3YtbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcnkgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLnZvdi1saW5rIHtcbiAgICBtYXgtd2lkdGg6IDI2MHB4O1xuICB9XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC52b3YtbGluayBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDIuMjVyZW07XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24ge1xuICBtYXgtd2lkdGg6IDM3MHB4O1xufVxuI2FjY2Vzc29yeSAuY2FydCAucHJpY2luZy1zZWN0aW9uLnNrdS1wcmljaW5nLXNlY3Rpb24ge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuI2FjY2Vzc29yeSAuY2FydCAucHJpY2luZy1zZWN0aW9uIC50b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAudG9wIC5xdWFudGl0eSBpbnB1dCB7XG4gIG1heC13aWR0aDogODBweDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24gLnRvcCAucHJpY2luZyB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbiNhY2Nlc3NvcnkgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAuYm90dG9tIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jYWNjZXNzb3J5IC5jYXJ0IC5wcmljaW5nLXNlY3Rpb24gLmJvdHRvbSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbiNhY2Nlc3NvcnkgLmFjY2Vzc29yeS13aGVlbHMgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jYWNjZXNzb3J5IC5hY2Nlc3Nvcnktd2hlZWxzIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuLmFjY2Vzc29yeS1jdGEgLmN0YS1idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmFjY2Vzc29yeS1jdGEgLmN0YS1idXR0b25zX19idG4ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLmFjY2Vzc29yeS1iYXItYnRuIHtcbiAgbWFyZ2luOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZWIyMTJlO1xuICBjb2xvcjogI2ViMjEyZTtcbiAgYm94LXNoYWRvdzogMXB4IDFweCAjOTk5O1xufVxuLmFjY2Vzc29yeS1iYXItYnRuOmhvdmVyIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuI2dhbGxlcnktZmlsdGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNnYWxsZXJ5LWZpbHRlciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI2dhbGxlcnktZmlsdGVyIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG59XG4jZ2FsbGVyeS1maWx0ZXIgc2VsZWN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbn1cblxuI2dhbGxlcnkgLnBhZ2UtaGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgLnBhZ2UtaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG4gICNnYWxsZXJ5IC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LCAjZ2FsbGVyeSAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG59XG4jZ2FsbGVyeSAucGFnZS1oZWFkZXIgaDEsICNnYWxsZXJ5IC5wYWdlLWhlYWRlciBoNCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI2dhbGxlcnkgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAyLjc1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgICBmb250LXNpemU6IDUuMjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMjVyZW07XG4gIH1cbn1cbiNnYWxsZXJ5IC5wYWdlLWhlYWRlciBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5IC5wYWdlLWhlYWRlciBoNCB7XG4gICAgZm9udC1zaXplOiAxLjQ1cmVtO1xuICB9XG59XG4jZ2FsbGVyeSAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGhlaWdodDogNDAwcHg7XG59XG4jZ2FsbGVyeSAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogNDAwcHg7XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktbWVudSB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktbWVudSB7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICB9XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktbWVudSB1bCB7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbn1cbiNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1tZW51IHVsIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LW1lbnUgdWwgbGkgYnV0dG9uIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktbWVudSB1bCBsaSBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktZmlsdGVyLWRpc3BsYXksICNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1zZWFyY2gtZGlzcGxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktZmlsdGVyLWRpc3BsYXksICNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1zZWFyY2gtZGlzcGxheSB7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuICB9XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktZmlsdGVyLWRpc3BsYXkgLnRvZ2dsZS1nYWxsZXJ5LCAjZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktc2VhcmNoLWRpc3BsYXkgLnRvZ2dsZS1nYWxsZXJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSAudG9nZ2xlLWdhbGxlcnkgYnV0dG9uLCAjZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktc2VhcmNoLWRpc3BsYXkgLnRvZ2dsZS1nYWxsZXJ5IGJ1dHRvbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LWZpbHRlci1kaXNwbGF5IC50b2dnbGUtZ2FsbGVyeSBidXR0b24gaSwgI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LXNlYXJjaC1kaXNwbGF5IC50b2dnbGUtZ2FsbGVyeSBidXR0b24gaSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LWZpbHRlci1kaXNwbGF5IC5hY2NvcmRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LWZpbHRlci1kaXNwbGF5IC5hY2NvcmRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktZmlsdGVyLWRpc3BsYXkgLmFjY29yZGlvbi1pdGVtIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiNnYWxsZXJ5ICNnYWxsZXJ5LWhlYWRlciAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSAjZ2FsbGVyeS1zZWFyY2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LWZpbHRlci1kaXNwbGF5IC5zZWFyY2gtc2VsZWN0b3Igc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktZmlsdGVyLWRpc3BsYXkgI3BhZ2UtZmlsdGVycyAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogdW5zZXQ7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBib3JkZXI6IDA7XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktc2VhcmNoLWRpc3BsYXkgZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LXNlYXJjaC1kaXNwbGF5IGZvcm0ge1xuICAgIG1heC13aWR0aDogNTAlO1xuICB9XG59XG4jZ2FsbGVyeSAjZ2FsbGVyeS1oZWFkZXIgLmdhbGxlcnktc2VhcmNoLWRpc3BsYXkgaW5wdXQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOWU5ZTllO1xufVxuI2dhbGxlcnkgI2dhbGxlcnktaGVhZGVyIC5nYWxsZXJ5LXNlYXJjaC1kaXNwbGF5IGJ1dHRvbiB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuI2dhbGxlcnkgLnNsaWNrLWFycm93IHtcbiAgei1pbmRleDogMTtcbiAgd2lkdGg6IDc1cHg7XG4gIGhlaWdodDogNzVweDtcbn1cbiNnYWxsZXJ5IC5zbGljay1hcnJvdzpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xufVxuI2dhbGxlcnkgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICBsZWZ0OiAxNSU7XG59XG4jZ2FsbGVyeSAuc2xpY2stYXJyb3cuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAxNSU7XG59XG4jZ2FsbGVyeSAuc2xpY2stZG90cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI2dhbGxlcnkgLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgd2lkdGg6IDEwcHg7XG4gIGhlaWdodDogMTBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4jZ2FsbGVyeSAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cbiNnYWxsZXJ5IC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuI2dhbGxlcnkgLnNsaWNrLXNsaWRlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgLmdhbGxlcnktbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gIH1cbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLCAjZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC52aWRlbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAucGhvdG86aG92ZXIsICNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnZpZGVvOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWltYWdlLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgcGFkZGluZy1ib3R0b206IDVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWltYWdlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDE2cmVtO1xuICB9XG59XG4jZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC5waG90by1pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgb3BhY2l0eTogMDtcbiAgbWF4LWhlaWdodDogMjE2cHg7XG59XG4jZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC5waG90by1pbmZvcm1hdGlvbiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWluZm9ybWF0aW9uIC52ZWhpY2xlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC5waG90by1pbmZvcm1hdGlvbiAuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG4jZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC5waG90by1pbmZvcm1hdGlvbiAuc3BlY3Mge1xuICBmb250LXNpemU6IDAuOHJlbTtcbn1cbiNnYWxsZXJ5IC5ob3Zlci1saXN0ID4gZGl2IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNnYWxsZXJ5IC5ob3Zlci1saXN0IC5waG90bywgI2dhbGxlcnkgLmhvdmVyLWxpc3QgLnZpZGVvIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jZ2FsbGVyeSAuaG92ZXItbGlzdCAucGhvdG8sICNnYWxsZXJ5IC5ob3Zlci1saXN0IC52aWRlbyB7XG4gIC8qXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgcGFkZGluZzogMCAxcHggMXB4IDA7XG4gICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgICovXG4gIC8qXG4gICY6YmVmb3JlIHtcbiAgXHRwb3NpdGlvbjogYWJzb2x1dGU7XG4gIFx0ei1pbmRleDogMTtcbiAgXHRkaXNwbGF5OiBibG9jaztcbiAgXHR3aWR0aDogMTAwJTtcbiAgXHRoZWlnaHQ6IDEwMCU7XG4gIFx0Y29udGVudDogJyc7XG4gIFx0LXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIFx0LXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuM3M7XG4gIFx0dHJhbnNpdGlvbi1kdXJhdGlvbjogLjNzO1xuICBcdC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuICBcdHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgXHRiYWNrZ3JvdW5kOiByZ2JhKDI0OCwgMjAwLCA3NywgMCk7XG4gIH1cbiAgJjphZnRlciB7XG4gIFx0Zm9udC1zaXplOiAxLjFyZW07XG4gIFx0cG9zaXRpb246IGFic29sdXRlO1xuICBcdHotaW5kZXg6IDI7XG4gIFx0dG9wOiA1MCU7XG4gIFx0ZGlzcGxheTogYmxvY2s7XG4gIFx0d2lkdGg6IDkwJTtcbiAgXHRtYXJnaW46IC0xZW0gNSUgMDtcbiAgXHRwYWRkaW5nLWJvdHRvbTogMmVtO1xuICBcdGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuICBcdC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgXHR0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBcdC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuICBcdHRyYW5zaXRpb24tZHVyYXRpb246IC4ycztcbiAgXHQtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcbiAgXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG4gIFx0dGV4dC1hbGlnbjogY2VudGVyO1xuICBcdGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgXHRvcGFjaXR5OiAwO1xuICBcdGNvbG9yOiAkd2hpdGU7XG4gIFx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICB9XG4gICY6aG92ZXI6YmVmb3JlIHtcbiAgXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDE2MywgMjI0LCAuNyk7XG4gIH1cbiAgJjpob3ZlcjphZnRlciB7XG4gIFx0b3BhY2l0eTogMTtcbiAgfSovXG59XG4jZ2FsbGVyeSAuaG92ZXItbGlzdCAudmlkZW86YWZ0ZXIge1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiNnYWxsZXJ5IC5ob3Zlci1saXN0IC5nYWxsZXJ5LWl0ZW0tdmVoaWNsZSwgI2dhbGxlcnkgLmhvdmVyLWxpc3QgLmdhbGxlcnktaXRlbS13aGVlbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI2dhbGxlcnkgLmhvdmVyLWxpc3QgLmdhbGxlcnktaXRlbS12ZWhpY2xlIHtcbiAgZm9udC1mYW1pbHk6IFwiVGVrb1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2dhbGxlcnkgLmhvdmVyLWxpc3QgLmJnLWltYWdlIHtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xufVxuI2dhbGxlcnkgLm5hdmlnYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNnYWxsZXJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZ2FsbGVyeS12ZWhpY2xlIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDEsICNnYWxsZXJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIGgzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5wYWdlLWhlYWRlciBoMSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5wYWdlLWhlYWRlciBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIGg0IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stcHJldiwgI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dCB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDNyZW07XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5zbGljay1wcmV2OmJlZm9yZSwgI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAtNiU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjZ2FsbGVyeS12ZWhpY2xlIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC02JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNnYWxsZXJ5LXZlaGljbGUgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gIH1cbn1cbiNnYWxsZXJ5LXZlaGljbGUgLnNsaWNrLXNsaWRlIHtcbiAgcGFkZGluZzogMXB4O1xufVxuXG4uZ2FsbGVyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luOiAwO1xufVxuLmdhbGxlcnktbWFpbi1pbWcge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZ2FsbGVyeS1tYWluLWltZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5LXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbn1cbi5nYWxsZXJ5LXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xufVxuLmdhbGxlcnktZGV0YWlscyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LXRvcCAuc2xpY2stdHJhY2sge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktZGV0YWlscyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LWRldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktc3BlY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1zcGVjcyAubGVmdCBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LXNwZWNzIC5yaWdodCBzcGFuIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jZ2FsbGVyeS12ZWhpY2xlIC5nYWxsZXJ5LW5hdiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nOiA0cmVtIDAgMnJlbTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLmdhbGxlcnktbmF2IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLmdhbGxlcnktbmF2IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLmdhbGxlcnktbmF2IC5idXR0b24ubm90LWZvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2FhYWFhYTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlci1jb2xvcjogI2FhYWFhYTtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5nYWxsZXJ5LW5hdiAucm93IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLmdhbGxlcnktbmF2IC5yb3cgLmNvbHVtbjpudGgtY2hpbGQoMikgLmJ1dHRvbiwgI2dhbGxlcnktdmVoaWNsZSAuZ2FsbGVyeS1uYXYgLnJvdyAuY29sdW1uczpudGgtY2hpbGQoMikgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGJvcmRlci1jb2xvcjogI2NjY2NjYztcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLmdhbGxlcnktbmF2IC5yb3cgLmNvbHVtbjpudGgtY2hpbGQoMikgLmJ1dHRvbjpob3ZlciwgI2dhbGxlcnktdmVoaWNsZSAuZ2FsbGVyeS1uYXYgLnJvdyAuY29sdW1uczpudGgtY2hpbGQoMikgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAjY29udGFjdCAucGFnZS1oZWFkZXIgLmJhY2tncm91bmQtaW1hZ2UsICN0aGFua3MgLnBhZ2UtaGVhZGVyIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2MCU7XG4gIH1cbn1cblxuI2NvbnRhY3QgcCxcbiN0aGFua3MgcCxcbiNjb250YWN0IGxpLFxuI3RoYW5rcyBsaSxcbiNnYWxsZXJ5IHAsXG4jZ2FsbGVyeSBsaSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctdG9wOiAwcHg7XG59XG5cbiNjb250YWN0IGgzLFxuI3RoYW5rcyBoMyxcbiNnYWxsZXJ5IGgzIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwcHg7XG59XG5cbiNjb250YWN0IGgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI2NvbnRhY3QgcC5yZWQge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4jZm9ybS1yaWdodCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI2Zvcm0tcmlnaHQgbGkge1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG59XG4jZm9ybS1yaWdodCAuZmEge1xuICBmb250LXNpemU6IDIuMjVyZW07XG59XG4jZm9ybS1yaWdodCBoMyB7XG4gIGZvbnQtc2l6ZTogMS42cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbn1cbiNmb3JtLXJpZ2h0IGFkZHJlc3Mge1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuI2Zvcm0tcmlnaHQgLnNvY2lhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuI2Zvcm0tcmlnaHQgLnNvY2lhbCBpIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuI2Zvcm0tcmlnaHQgLnNvY2lhbCBsaSB7XG4gIG1hcmdpbi1yaWdodDogMnJlbTtcbn1cblxuI2NvbnRhY3QgLmxvY2F0aW9uIHtcbiAgY29sb3I6ICMzMzY2OTk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cblxuI3BhZ2UgLnBhZ2UtaGVhZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogN3JlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNwYWdlIC5wYWdlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogOXJlbTtcbiAgfVxufVxuI3BhZ2UgLnBhZ2UtaGVhZGVyIC5yb3cge1xuICB3aWR0aDogMTAwJTtcbn1cbiNwYWdlIC5wYWdlLWhlYWRlciAuYmFja2dyb3VuZC1pbWFnZSB7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogdW5zZXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG4jcGFnZSAucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoZWlnaHQ6IDYwdmg7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4xKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNwYWdlIC5wYWdlLWhlYWRlciAucGFnZS10aXRsZSB7XG4gICAgaGVpZ2h0OiAzMHZoO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFnZSAucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICAgIGhlaWdodDogNTB2aDtcbiAgfVxufVxuI3BhZ2UgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIGgxIHtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDMuNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNwYWdlIC5wYWdlLWhlYWRlciAucGFnZS10aXRsZSBoMSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cbiNwYWdlIC5wYWdlLWhlYWRlciAucGFnZS10aXRsZSBoNCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3BhZ2UgLnBhZ2UtaGVhZGVyIC5wYWdlLXRpdGxlIGg0IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuI3BhZ2UgLnBhZ2UtY29udGVudCBoMSwgI3BhZ2UgLnBhZ2UtY29udGVudCBoMiwgI3BhZ2UgLnBhZ2UtY29udGVudCBoMywgI3BhZ2UgLnBhZ2UtY29udGVudCBoNCwgI3BhZ2UgLnBhZ2UtY29udGVudCBoNSwgI3BhZ2UgLnBhZ2UtY29udGVudCBoNiB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xufVxuI3BhZ2UgLnBhZ2UtY29udGVudCBoMSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDMuNzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jcGFnZSAucGFnZS1jb250ZW50IGgyIHtcbiAgZm9udC1zaXplOiAxLjg1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3BhZ2UgLnBhZ2UtY29udGVudCBoMiB7XG4gICAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB9XG59XG4jcGFnZSAucGFnZS1jb250ZW50IGgzIHtcbiAgZm9udC1zaXplOiAyLjc1cmVtO1xufVxuI3BhZ2UgLnBhZ2UtY29udGVudCBoNCB7XG4gIGZvbnQtc2l6ZTogMi4xNXJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgaDUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgcCwgI3BhZ2UgLnBhZ2UtY29udGVudCB1bCB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNwYWdlIC5wYWdlLWNvbnRlbnQgcCwgI3BhZ2UgLnBhZ2UtY29udGVudCB1bCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgfVxufVxuI3BhZ2UgLnBhZ2UtY29udGVudCB1bCB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xuICBsaXN0LXN0eWxlOiBkaXNjO1xufVxuI3BhZ2UgLnBhZ2UtY29udGVudCB1bCA+IGxpIHtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG4jcGFnZSAucGFnZS1jb250ZW50IC5wYWdlLWJvZHktbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogNnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNwYWdlIC5wYWdlLWNvbnRlbnQgLnBhZ2UtYm9keS1sZWZ0IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4jcGFnZSAucGFnZS1jb250ZW50IC5wYWdlLWJvZHktcmlnaHQge1xuICBwYWRkaW5nLWxlZnQ6IDZyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFnZSAucGFnZS1jb250ZW50IC5wYWdlLWJvZHktcmlnaHQge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLypcbi5wYWdlLWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6MDtcbiAgaDEge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG59XG5cbiovXG4jcGFnZSAuZmFxLXBhZ2UgaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3BhZ2UgLmZhcS1wYWdlIHAge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuI3BhZ2UgLmZhcS1wYWdlIHVsIHtcbiAgbWFyZ2luOiAwO1xufVxuI3BhZ2UgLmZhcS1wYWdlIHVsIGxpIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiNwYWdlIC5mYXEtcGFnZSAuZmFxLXNlY3Rpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuI3BhZ2UgLmZhcS1wYWdlIC5mYXEtc2VjdGlvbiAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3BhZ2UgLmZhcS1wYWdlIC5hY2NvcmRpb24tdGl0bGUsICNwYWdlIC5mYXEtcGFnZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbn1cbiNwYWdlIC5mYXEtcGFnZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxLjE3NXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4jcGFnZSAuZmFxLXBhZ2UgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgY29udGVudDogXCLijIRcIjtcbn1cbiNwYWdlIC5mYXEtcGFnZSAuaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG59XG4jcGFnZSAuZmFxLXBhZ2UgLmlzLWFjdGl2ZSA+IC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oyDXCI7XG59XG5cbiNwYWdlIC5zdXBwb3J0LXBhZ2UgLnN1cHBvcnQtaXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNwYWdlIC5zdXBwb3J0LXBhZ2UgLnN1cHBvcnQtaXRlbSA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jcGFnZSAuc3VwcG9ydC1wYWdlIC5zdXBwb3J0LWl0ZW0gPiBkaXY6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jcGFnZSAuc3VwcG9ydC1wYWdlIC5zdXBwb3J0LWl0ZW0gLnRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jcGFnZSAuc3VwcG9ydC1wYWdlIC5zdXBwb3J0LWl0ZW0gLmxvZ28gc3BhbiB7XG4gIGZvbnQtc2l6ZTogOHJlbTtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG59XG4jcGFnZSAuc3VwcG9ydC1wYWdlIC5zdXBwb3J0LWl0ZW0gLmxpbmsgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5cbi5uZXdzLWFydGljbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG59XG4ubmV3cy1hcnRpY2xlIC50aW1lc3RhbXAge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZDogIzMzMztcbn1cbi5uZXdzLWFydGljbGUgLnRpbWVzdGFtcCAuZGF0ZSB7XG4gIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLm5ld3MtYXJ0aWNsZSBpbWcge1xuICBib3JkZXItYm90dG9tOiA1cHggc29saWQgI2ViMjEyZTtcbn1cbi5uZXdzLWFydGljbGUgLm5ld3Mtc2lkZWJhciB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJhY2tncm91bmQ6ICNmYmZiZmI7XG59XG4ubmV3cy1hcnRpY2xlIC5uZXdzLXNpZGViYXIgbGkgYSB7XG4gIGNvbG9yOiAjNTA1MDUwO1xufVxuLm5ld3MtYXJ0aWNsZSAubmV3cy1zaWRlYmFyIGxpIGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuLmJsb2cgLnBhZ2UtaGVhZGVyLCAubmV3cyAucGFnZS1oZWFkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogNDAwcHg7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAucGFnZS1oZWFkZXIsIC5uZXdzIC5wYWdlLWhlYWRlciB7XG4gICAgaGVpZ2h0OiA0MDBweDtcbiAgfVxuICAuYmxvZyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudCwgLmJsb2cgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCwgLm5ld3MgLnBhZ2UtaGVhZGVyIC5zZWN0aW9uLWNvbnRlbnQsIC5uZXdzIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LWJhY2tncm91bmQge1xuICAgIGhlaWdodDogNDAwcHg7XG4gIH1cbiAgLmJsb2cgLnBhZ2UtaGVhZGVyLCAubmV3cyAucGFnZS1oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDZyZW07XG4gIH1cbn1cbi5ibG9nIC5wYWdlLWhlYWRlciBoMSwgLmJsb2cgLnBhZ2UtaGVhZGVyIGg0LCAubmV3cyAucGFnZS1oZWFkZXIgaDEsIC5uZXdzIC5wYWdlLWhlYWRlciBoNCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJsb2cgLnBhZ2UtaGVhZGVyIGgxLCAubmV3cyAucGFnZS1oZWFkZXIgaDEge1xuICBmb250LXdlaWdodDogOTAwO1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAucGFnZS1oZWFkZXIgaDEsIC5uZXdzIC5wYWdlLWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiA1LjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtO1xuICB9XG59XG4uYmxvZyAucGFnZS1oZWFkZXIgaDQsIC5uZXdzIC5wYWdlLWhlYWRlciBoNCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nIC5wYWdlLWhlYWRlciBoNCwgLm5ld3MgLnBhZ2UtaGVhZGVyIGg0IHtcbiAgICBmb250LXNpemU6IDEuNDVyZW07XG4gIH1cbn1cbi5ibG9nIC5wYWdlLWhlYWRlciAuc2VjdGlvbi1jb250ZW50LCAubmV3cyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNCk7XG4gIGhlaWdodDogNDAwcHg7XG59XG4uYmxvZyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kLCAubmV3cyAucGFnZS1oZWFkZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGhlaWdodDogNDAwcHg7XG59XG4uYmxvZyAuYmxvZy1lbnRyeSwgLmJsb2cgLm5ld3MtZW50cnksIC5uZXdzIC5ibG9nLWVudHJ5LCAubmV3cyAubmV3cy1lbnRyeSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAuYmxvZy1lbnRyeSwgLmJsb2cgLm5ld3MtZW50cnksIC5uZXdzIC5ibG9nLWVudHJ5LCAubmV3cyAubmV3cy1lbnRyeSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNnJlbTtcbiAgfVxufVxuLmJsb2cgLmJsb2ctZW50cnkgLmJsb2ctaW1nLCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1pbWcsIC5ibG9nIC5uZXdzLWVudHJ5IC5ibG9nLWltZywgLmJsb2cgLm5ld3MtZW50cnkgLm5ld3MtaW1nLCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1pbWcsIC5uZXdzIC5ibG9nLWVudHJ5IC5uZXdzLWltZywgLm5ld3MgLm5ld3MtZW50cnkgLmJsb2ctaW1nLCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1pbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nIC5ibG9nLWVudHJ5IC5ibG9nLWltZywgLmJsb2cgLmJsb2ctZW50cnkgLm5ld3MtaW1nLCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1pbWcsIC5ibG9nIC5uZXdzLWVudHJ5IC5uZXdzLWltZywgLm5ld3MgLmJsb2ctZW50cnkgLmJsb2ctaW1nLCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1pbWcsIC5uZXdzIC5uZXdzLWVudHJ5IC5ibG9nLWltZywgLm5ld3MgLm5ld3MtZW50cnkgLm5ld3MtaW1nIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50LCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50LCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50LCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50LCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50LCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50LCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50LCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50LCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50LCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50LCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50LCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50LCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50LCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50LCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDE0JTtcbiAgfVxufVxuLmJsb2cgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCBoMywgLmJsb2cgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCBoMywgLmJsb2cgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCBoMywgLmJsb2cgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCBoMywgLm5ld3MgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCBoMywgLm5ld3MgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCBoMywgLm5ld3MgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCBoMywgLm5ld3MgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCBoMyB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LXNpemU6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IGgzLCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IGgzLCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IGgzLCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IGgzLCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IGgzLCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IGgzLCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IGgzLCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cbi5ibG9nIC5ibG9nLWVudHJ5IC5ibG9nLWNvbnRlbnQgYSwgLmJsb2cgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCBhLCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IGEsIC5ibG9nIC5uZXdzLWVudHJ5IC5uZXdzLWNvbnRlbnQgYSwgLm5ld3MgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCBhLCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IGEsIC5uZXdzIC5uZXdzLWVudHJ5IC5ibG9nLWNvbnRlbnQgYSwgLm5ld3MgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IGE6aG92ZXIsIC5ibG9nIC5ibG9nLWVudHJ5IC5uZXdzLWNvbnRlbnQgYTpob3ZlciwgLmJsb2cgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCBhOmhvdmVyLCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IGE6aG92ZXIsIC5uZXdzIC5ibG9nLWVudHJ5IC5ibG9nLWNvbnRlbnQgYTpob3ZlciwgLm5ld3MgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCBhOmhvdmVyLCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IGE6aG92ZXIsIC5uZXdzIC5uZXdzLWVudHJ5IC5uZXdzLWNvbnRlbnQgYTpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuLmJsb2cgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLmJsb2cgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLmJsb2cgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLmJsb2cgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLmJsb2cgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLmJsb2cgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLmJsb2cgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLmJsb2cgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLm5ld3MgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLm5ld3MgLmJsb2ctZW50cnkgLmJsb2ctY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLm5ld3MgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLm5ld3MgLmJsb2ctZW50cnkgLm5ld3MtY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLm5ld3MgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLm5ld3MgLm5ld3MtZW50cnkgLmJsb2ctY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiwgLm5ld3MgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCAuYmxvZy1kZXNjcmlwdGlvbiwgLm5ld3MgLm5ld3MtZW50cnkgLm5ld3MtY29udGVudCAubmV3cy1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAuYmxvZyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAuYmxvZyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAuYmxvZyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAuYmxvZyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAubmV3cyAuYmxvZy1lbnRyeSAuYmxvZy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAubmV3cyAuYmxvZy1lbnRyeSAubmV3cy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAubmV3cyAubmV3cy1lbnRyeSAuYmxvZy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uLCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IC5ibG9nLWRlc2NyaXB0aW9uLCAubmV3cyAubmV3cy1lbnRyeSAubmV3cy1jb250ZW50IC5uZXdzLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZyAuYmxvZy1jb250ZW50LWxlZnQgLmJsb2ctY29udGVudCwgLmJsb2cgLmJsb2ctY29udGVudC1sZWZ0IC5uZXdzLWNvbnRlbnQsIC5ibG9nIC5uZXdzLWNvbnRlbnQtbGVmdCAuYmxvZy1jb250ZW50LCAuYmxvZyAubmV3cy1jb250ZW50LWxlZnQgLm5ld3MtY29udGVudCwgLm5ld3MgLmJsb2ctY29udGVudC1sZWZ0IC5ibG9nLWNvbnRlbnQsIC5uZXdzIC5ibG9nLWNvbnRlbnQtbGVmdCAubmV3cy1jb250ZW50LCAubmV3cyAubmV3cy1jb250ZW50LWxlZnQgLmJsb2ctY29udGVudCwgLm5ld3MgLm5ld3MtY29udGVudC1sZWZ0IC5uZXdzLWNvbnRlbnQge1xuICAgIHBhZGRpbmctbGVmdDogMTAlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDUlO1xuICB9XG59XG4uYmxvZyAucGFnaW5hdGlvbiwgLm5ld3MgLnBhZ2luYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uYmxvZyAucGFnaW5hdGlvbiAuY3VycmVudCwgLm5ld3MgLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuXG4uYmxvZy1kZXRhaWxzICNhcnRpY2xlLWdhbC1tYWluLWltYWdlLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC1tYWluLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuLmJsb2ctZGV0YWlscyAjYXJ0aWNsZS1nYWwtbWFpbi1pbWFnZSAuc2xpY2stc2xpZGUgaW1nLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC1tYWluLWltYWdlIC5zbGljay1zbGlkZSBpbWcge1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5ibG9nLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icywgLm5ld3MtZGV0YWlscyAjYXJ0aWNsZS1nYWwtdGh1bWJzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmJsb2ctZGV0YWlscyAuZ2FsLXRodW1icy1hcnJvdywgLm5ld3MtZGV0YWlscyAuZ2FsLXRodW1icy1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0NSU7XG59XG4uYmxvZy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93LmdhbC10aHVtYnMtcHJldiwgLm5ld3MtZGV0YWlscyAuZ2FsLXRodW1icy1hcnJvdy5nYWwtdGh1bWJzLXByZXYge1xuICBsZWZ0OiAtMjBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nLWRldGFpbHMgLmdhbC10aHVtYnMtYXJyb3cuZ2FsLXRodW1icy1wcmV2LCAubmV3cy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93LmdhbC10aHVtYnMtcHJldiB7XG4gICAgbGVmdDogLTcwcHg7XG4gIH1cbn1cbi5ibG9nLWRldGFpbHMgLmdhbC10aHVtYnMtYXJyb3cuZ2FsLXRodW1icy1uZXh0LCAubmV3cy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93LmdhbC10aHVtYnMtbmV4dCB7XG4gIHJpZ2h0OiAtMzBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ibG9nLWRldGFpbHMgLmdhbC10aHVtYnMtYXJyb3cuZ2FsLXRodW1icy1uZXh0LCAubmV3cy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93LmdhbC10aHVtYnMtbmV4dCB7XG4gICAgcmlnaHQ6IC03MHB4O1xuICB9XG59XG4uYmxvZy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93IC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkLCAubmV3cy1kZXRhaWxzIC5nYWwtdGh1bWJzLWFycm93IC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2ctZGV0YWlscyAuZ2FsLXRodW1icy1hcnJvdyAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCwgLm5ld3MtZGV0YWlscyAuZ2FsLXRodW1icy1hcnJvdyAubWF0ZXJpYWwtc3ltYm9scy1vdXRsaW5lZCB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG4uYmxvZy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMsIC5uZXdzLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icyB7XG4gIHdpZHRoOiA4NSU7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2ctZGV0YWlscyAjYXJ0aWNsZS1nYWwtdGh1bWJzLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uYmxvZy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgLnNsaWNrLXNsaWRlLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgLnNsaWNrLXNsaWRlIHtcbiAgbWF4LWhlaWdodDogMTYwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYmxvZy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgLnNsaWNrLXNsaWRlLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgLnNsaWNrLXNsaWRlIHtcbiAgICBtYXgtaGVpZ2h0OiAxODBweDtcbiAgfVxufVxuLmJsb2ctZGV0YWlscyAjYXJ0aWNsZS1nYWwtdGh1bWJzIC5pdGVtLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgLml0ZW0ge1xuICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuLmJsb2ctZGV0YWlscyAjYXJ0aWNsZS1nYWwtdGh1bWJzIGEsIC5uZXdzLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGhlaWdodDogMTgwcHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cbi5ibG9nLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icyBhOmFmdGVyLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5ibG9nLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icyBhOmhvdmVyOmFmdGVyLCAubmV3cy1kZXRhaWxzICNhcnRpY2xlLWdhbC10aHVtYnMgYTpob3ZlcjphZnRlciB7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5ibG9nLWRldGFpbHMgI2FydGljbGUtZ2FsLXRodW1icyBhIGltZywgLm5ld3MtZGV0YWlscyAjYXJ0aWNsZS1nYWwtdGh1bWJzIGEgaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5ibG9nLWRldGFpbHMgLmFydGljbGUtbmF2LCAubmV3cy1kZXRhaWxzIC5hcnRpY2xlLW5hdiB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmJsb2ctZGV0YWlscyAuYXJ0aWNsZS1uYXYsIC5uZXdzLWRldGFpbHMgLmFydGljbGUtbmF2IHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgfVxufVxuLmJsb2ctZGV0YWlscyAuYXJ0aWNsZS1uYXYgYSwgLm5ld3MtZGV0YWlscyAuYXJ0aWNsZS1uYXYgYSB7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYmxvZy1kZXRhaWxzIC5hcnRpY2xlLW5hdiBhLCAubmV3cy1kZXRhaWxzIC5hcnRpY2xlLW5hdiBhIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmJsb2ctZGV0YWlscyAuYXJ0aWNsZS1uYXYgYTpob3ZlciwgLm5ld3MtZGV0YWlscyAuYXJ0aWNsZS1uYXYgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLmJsb2ctZGV0YWlscyAuYXJ0aWNsZS1uYXYgYS5ub3QtZm91bmQsIC5uZXdzLWRldGFpbHMgLmFydGljbGUtbmF2IGEubm90LWZvdW5kIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbiAgY29sb3I6ICNjY2NjY2M7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBib3JkZXItY29sb3I6ICM5OTk5OTk7XG59XG4uYmxvZy1kZXRhaWxzIC5hcnRpY2xlLW5hdiAudGV4dC1jZW50ZXIgYSwgLm5ld3MtZGV0YWlscyAuYXJ0aWNsZS1uYXYgLnRleHQtY2VudGVyIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xufVxuLmJsb2ctZGV0YWlscyAuYXJ0aWNsZS1uYXYgLnRleHQtY2VudGVyIGE6aG92ZXIsIC5uZXdzLWRldGFpbHMgLmFydGljbGUtbmF2IC50ZXh0LWNlbnRlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbn1cblxuI2Fib3V0IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jYWJvdXQgaDIge1xuICBmb250LXNpemU6IDNyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYWJvdXQgaDIge1xuICAgIGZvbnQtc2l6ZTogNHJlbTtcbiAgfVxufVxuI2Fib3V0IHAge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbiNhYm91dCAucGFnZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jYWJvdXQgLnBhZ2UtY29udGVudCAuYWJvdXQtY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYWJvdXQgLnBhZ2UtY29udGVudCAuYWJvdXQtY29udGVudCB7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgfVxufVxuI2Fib3V0IC5hbmltYXRlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuI2RlYWxlcnMgaDEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2RlYWxlcnMgaDEge1xuICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgfVxufVxuI2RlYWxlcnMgaDIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNkZWFsZXJzLW1pZGRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4jZGVhbGVycyAucGFnZS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbiNkZWFsZXJzIC5wYWdlLWNvbnRlbnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG4jZGVhbGVycyAucGFnZS1jb250ZW50IC5yb3cgLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4jZGVhbGVycyAuaW5wdXQtZ3JvdXAge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiNkZWFsZXJzIC5pbnB1dC1ncm91cCBpbnB1dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNkZWFsZXJzIGhyIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbiNkZWFsZXJzIC5sZWZ0IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjY2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkZWFsZXJzIC5sZWZ0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICB9XG59XG4jZGVhbGVycyAucmlnaHQge1xuICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICBjbGVhcjogYm90aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkZWFsZXJzIC5yaWdodCB7XG4gICAgcGFkZGluZy1sZWZ0OiA0cmVtO1xuICB9XG59XG4jZGVhbGVycy5iZWNvbWUtZGVhbGVyIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2RlYWxlcnMucm1hLWZvcm0tcGFnZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNkZWFsZXJzLnJtYS1mb3JtLXBhZ2UgLnBhZ2UtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiNkZWFsZXJzLnJtYS1mb3JtLXBhZ2UgaDEge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2RlYWxlcnMucm1hLWZvcm0tcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbiNkZWFsZXJzLnJtYS1mb3JtLXBhZ2UgLnBhZ2UtaGVhZGVyIC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jZGVhbGVycy5ybWEtZm9ybS1wYWdlIC5wYWdlLWhlYWRlciBwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2RlYWxlcnMucm1hLWZvcm0tcGFnZSAucGFnZS1oZWFkZXIgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG4jZGVhbGVycy5ybWEtZm9ybS1wYWdlIGxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4jZGVhbGVycy5ybWEtZm9ybS1wYWdlIHNlbGVjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBoZWlnaHQ6IDNyZW07XG59XG4jZGVhbGVycy5ybWEtZm9ybS1wYWdlIGlucHV0Om5vdCguYnV0dG9uKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuI2RlYWxlcnMucm1hLWZvcm0tcGFnZSBpbnB1dDpub3QoLmJ1dHRvbikubWVkaWEtZmllbGQge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG4jZGVhbGVycy5ybWEtZm9ybS1wYWdlIC5kaXZpZGVyIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbiNkZWFsZXJzLnJtYS1mb3JtLXBhZ2UgLnBvbGljeSBwIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjZGVhbGVycy5kZWFsZXItbG9jYXRvciAubG9jYXRpb24taGVhZGVyID4gLnJvdyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgI2ljbV9sb2NhdGlvbnMgLmRlYWxlci1sb2NhdG9yLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpY21fbG9jYXRpb25zIC5ob3VycyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyBoMyB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgI2ljbV9sb2NhdGlvbnMgaDMgYSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyAuZ20tc3R5bGUtaXcuZ20tc3R5bGUtaXctYyB7XG4gIG1heC13aWR0aDogMzAwcHg7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyAuZ20tc3R5bGUtaXctZCBzcGFuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyAubG9jYXRvci1jdGEtYnV0dG9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgI2ljbV9sb2NhdGlvbnMgLnNlYXJjaC1maWVsZCB7XG4gICAgcGFkZGluZzogMC41cmVtIDAuNzVyZW07XG4gIH1cbn1cbiNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpY21fbG9jYXRpb25zIC5zZWFyY2gtZmllbGQgaW5wdXQge1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaWNtX2xvY2F0aW9ucyAuc2VhcmNoLWZpZWxkIC5pbnB1dC1maWVsZCB7XG4gICAgbWFyZ2luOiAwLjI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpY21fbG9jYXRpb25zIC5sb2NhdG9yLWxpc3Rpbmcge1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpY21fbG9jYXRpb25zIC5sb2NhdGlvbiB7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgfVxufVxuXG4jZml0bWVudC1ndWlkZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2ZpdG1lbnQtZ3VpZGUgaDIge1xuICBmb250LXNpemU6IDNyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZml0bWVudC1ndWlkZSBoMiB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG4jZml0bWVudC1ndWlkZSBwIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4jZml0bWVudC1ndWlkZSAucGFnZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jZml0bWVudC1ndWlkZSAucGFnZS1jb250ZW50IC5hYm91dC1jb250ZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDFyZW07XG4gIGhlaWdodDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNmaXRtZW50LWd1aWRlIC5wYWdlLWNvbnRlbnQgLmFib3V0LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDNyZW07XG4gIH1cbn1cbiNmaXRtZW50LWd1aWRlIC5hbmltYXRlZCB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG4gIH1cbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaW5uZXItY29udGFpbmVyLCAjZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmhlYWQsICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuY29udGVudCwgI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyICNhcHAge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5pbm5lci1jb250YWluZXIge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5oZWFkLCAjZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmluZm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmhlYWQgcCwgI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5pbmZvIHAge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4jZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmhlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICBwYWRkaW5nLXRvcDogMS42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxLjYyNXJlbTtcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaGVhZCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuY29udGVudCAjYXBwLCAjZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmNvbnRlbnQgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3Qge1xuICBtYXgtd2lkdGg6IDM2MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuY29udGVudCAuaW5mbyB7XG4gIHBhZGRpbmc6IDEuNXJlbTtcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuZm9vdCBwIHtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG59XG5cbiNlcnJvci1wYWdlIC5wYWdlLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL3V0aWxpdHkvZXJyb3ItYmcgKDIpLnBuZ1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDUlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDYwJTtcbiAgcGFkZGluZzogNzVweDtcbiAgbWFyZ2luLXRvcDogNzVweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNlcnJvci1wYWdlIC5wYWdlLWNvbnRlbnQge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbn1cbiNlcnJvci1wYWdlIC5wYWdlLWNvbnRlbnQge1xuICBoZWlnaHQ6IDQ0MHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcbn1cbiNlcnJvci1wYWdlIC5wYWdlLWNvbnRlbnQgaDMge1xuICBmb250LXNpemU6IDNyZW07XG4gIGZvbnQtd2VpZ2h0OiAxMDAwO1xuICBjb2xvcjogI2U4MmMzOTtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbn1cbiNlcnJvci1wYWdlIC5wYWdlLWNvbnRlbnQgcCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbi1ib3R0b206IC02cmVtO1xuICBjb2xvcjogYmxhY2s7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xufVxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCBwIGEge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCAjcmV0dXJuLWhvbWUge1xuICBtYXJnaW4tdG9wOiA5cmVtO1xuICBwYWRkaW5nLXRvcDogMTFyZW07XG59XG4jZXJyb3ItcGFnZS5jb21pbmctc29vbiAucGFnZS1jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbiNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uIHtcbiAgcGFkZGluZzogMnJlbSAwIDRyZW07XG59XG4jZG93bmxvYWRzIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMC41cmVtIDEuMjVyZW07XG4gIHdpZHRoOiBhdXRvO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4jZG93bmxvYWRzIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWIyMTJlO1xufVxuI2Rvd25sb2FkcyAuYnV0dG9uIHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1icmFuZHMgLmNvbnRlbnQtbGlzdCAuYnJhbmQtaXRlbSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWJyYW5kcyAuY29udGVudC1saXN0IC5icmFuZC1pdGVtIHtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbiNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWJyYW5kcyAuY29udGVudC1saXN0IC5icmFuZC1pdGVtIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI2Rvd25sb2FkcyAuZG93bmxvYWRzLXNlY3Rpb24tYnJhbmRzIC5jb250ZW50LWxpc3QgLmJyYW5kLWl0ZW0gLmxvZ28sICNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWJyYW5kcyAuY29udGVudC1saXN0IC5icmFuZC1pdGVtIC5leGNlcnB0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWJyYW5kcyAuY29udGVudC1saXN0IC5icmFuZC1pdGVtIC5icmVhayB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgbWFyZ2luOiAxcmVtIDA7XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLnJldHVybiBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLnJldHVybiBzcGFuIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuI2Rvd25sb2FkcyAuZG93bmxvYWRzLXNlY3Rpb24tYXNzZXRzIC5jb250ZW50LWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1oZWFkZXIgLmltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1oZWFkZXIgaW1nIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkb3dubG9hZHMgLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1saXN0LWFzc2V0cyBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jZG93bmxvYWRzIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMgLndoZWVsLW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI2Rvd25sb2FkcyAuZG93bmxvYWRzLXNlY3Rpb24tYXNzZXRzIC5jb250ZW50LWxpc3QtYXNzZXRzIC53aGVlbC1maW5pc2gge1xuICBmb250LXNpemU6IDAuODI1cmVtO1xufVxuXG4ucGFja2FnaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogODAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG59XG4ucGFja2FnaW5nIC5wb3B1cF9oZWFkZXIge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5wYWNrYWdpbmcgLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLnBhY2thZ2luZyAucmV0dXJuVHh0IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5hY2Nlc3NvcnktY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2Nlc3NvcnktY29udGFpbmVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgfVxufVxuLmFjY2Vzc29yeS1jb250YWluZXJfX2xlZnQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uYWNjZXNzb3J5LXBvcHVwIHtcbiAgbWF4LXdpZHRoOiA0MjVweDtcbiAgcGFkZGluZzogMCAwIDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hY2Nlc3NvcnktcG9wdXAtLXdpZGUge1xuICBtYXgtd2lkdGg6IDg1MHB4O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSB7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCBhdXRvIDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbS0tYm9yZGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2Nlc3NvcnktcG9wdXBfX2l0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwX19pdGVtIC5pbnB1dCB7XG4gIG1hcmdpbjogMCAyMHB4O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSAuaW5wdXQtLXJpZ2h0IHtcbiAgbWFyZ2luOiAwO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSAuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2Nlc3NvcnktcG9wdXBfX2l0ZW0gLmltZyB7XG4gICAgbWF4LXdpZHRoOiA5MHB4O1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwX19pdGVtIC5pbWctLWxyZyB7XG4gIG1heC13aWR0aDogNTAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjY2Vzc29yeS1wb3B1cCAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwIC50aXRsZS0tcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9fbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYWNjZXNzb3J5LXBvcHVwLS1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmFjY2Vzc29yeS1wb3B1cC0tcmlnaHQgLmlucHV0IHtcbiAgbWFyZ2luOiAwO1xufVxuLmFjY2Vzc29yeS1wb3B1cC0tcmlnaHQgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwIDJyZW07XG59XG4uYWNjZXNzb3J5LXBvcHVwLS1yaWdodCAuc3VidGV4dCB7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xufVxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX3R4dCB7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdhbGxlcnktcXVvdGUtcG9wdXBfX3R4dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX25vdGUge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5nYWxsZXJ5LXF1b3RlLXBvcHVwIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmdhbGxlcnktcXVvdGUtcG9wdXAgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmZvcm0tbmFtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mb3JtLW5hbWUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5mb3JtLW5hbWUgaW5wdXQge1xuICB3aWR0aDogMTkuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mb3JtLW5hbWUgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9ybS1uYW1lIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmdhbGxlcnktcHJvZHVjdC1pbmZvIHNwYW4ge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZml0bWVudENoZWNrX190eHQge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmZpdG1lbnRDaGVja19fYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG4jZmMgI2ZjLWNhcnQgaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4jZmMgLm5vdGljZSB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jZmMgLm5vdGljZSBwIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4vKiBjYXJ0IHN1bW1hcnkgKi9cbi5zbmlwY2FydC1pdGVtLWN1c3RvbS1maWVsZHNfX2ZpZWxkLnNuaXBjYXJ0LWl0ZW0tY3VzdG9tLWZpZWxkcy0tdGV4dGJveCB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi5zbmlwY2FydC1pbnB1dF9faW5wdXQuc25pcGNhcnRfX2ZvbnQtLXNlY29uZGFyeS5zbmlwY2FydF9fZm9udC0tYm9sZCB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmltLWN1c3RvbS1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4uaW52ZW50b3J5LWxheW91dC1oZWFkZXIgLnRvcC1iYXIgLm5hdi1tZW51LXJpZ2h0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYTpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmludmVudG9yeS1sYXlvdXQtaGVhZGVyIC50b3AtYmFyIC5uYXYtbWVudS1yaWdodCB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgdWwgPiBsaSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhci10aXRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmludmVudG9yeS1sYXlvdXQtaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLXRpdGxlIHtcbiAgICB3aWR0aDogMzAlO1xuICB9XG59XG5cbi5pbnZlbnRvcnktaGVhZCB7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjN2Y4MjgzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xufVxuLmludmVudG9yeS1oZWFkLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDtcbn1cbi5pbnZlbnRvcnktaGVhZC5maXhlZCAjbGVmdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udXNlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnVzZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLnVzZXItbmFtZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnVzZXItbmFtZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3Nzc3Nzc7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuLnVzZXItY29kZSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuLnVzZXItb3B0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudXNlci1vcHRpb25zIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIH1cbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYge1xuICBmb250LXdlaWdodDogOTAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC51c2VyLW9wdGlvbnMgPiBkaXYge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxufVxuLnVzZXItb3B0aW9ucyA+IGRpdiBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnVzZXItb3B0aW9ucyA+IGRpdiBhIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG4udXNlci1vcHRpb25zID4gZGl2IGE6aG92ZXIge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYgYTpob3ZlciBpIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4udXNlci1vcHRpb25zID4gZGl2IGkge1xuICBjb2xvcjogIzdmODI4MztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG59XG5cbi5sb2FkaW5nLXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiA5OTk5O1xufVxuLmxvYWRpbmctc2NyZWVuIGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiA0NXB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICBhbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xufVxuQC1tb3ota2V5ZnJhbWVzIHNwaW4ge1xuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzcGluIHtcbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuXG4uaW52ZW50b3J5LWxheW91dC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLmludmVudG9yeS1sYXlvdXQtZm9vdGVyIC5mb290ZXItYm90dG9tX19jb3B5IHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbiNpbnZlbnRvcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJSb2JvdG9cIiwgc2Fucy1zZXJpZjtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1pdGVtIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LWl0ZW0gLnNsYXNob3V0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktcGFydC1udW1iZXIge1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zdG9jayB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2ludmVudG9yeSAuaW52ZW50b3J5LXN0b2NrIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zdG9jay1ieS1sb2NhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LWRlYWxlciwgI2ludmVudG9yeSAuaW52ZW50b3J5LW1zcnAge1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogI2NhY2FjYTtcbiAgZm9udC1zaXplOiAwLjgzNzVyZW07XG4gIHdpZHRoOiA1MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5pbnZlbnRvcnktZGVhbGVyLCAjaW52ZW50b3J5IC5pbnZlbnRvcnktbXNycCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1tc3JwIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLmludmVudG9yeS1tc3JwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktZGVhbGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktc2FsZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zYWxlLXByaWNlIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5pbnZlbnRvcnktcHVyY2hhc2Uge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LXB1cmNoYXNlID4gYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgZm9udC1mYW1pbHk6IFwiUm9ib3RvXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAuaW52ZW50b3J5LXB1cmNoYXNlID4gYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbiAgfVxufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LXB1cmNoYXNlID4gYnV0dG9uLmJhY2tvcmRlci1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU1NTU1NTtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1wdXJjaGFzZSA+IGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZjgyODM7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuI2ludmVudG9yeSAubm8tbWF0Y2hlcywgI2ludmVudG9yeSAucmVzdWx0LWNvdW50LWVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWl0ZW0ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2Y4MjgzO1xuICB3aWR0aDogMTAwJTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gIHdpZHRoOiAxMiU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktdGh1bWJuYWlsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktdGh1bWJuYWlsIGltZyB7XG4gIG1heC13aWR0aDogNzBweDtcbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1pbmZvIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgfVxufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktbG9jYXRpb24ge1xuICB3aWR0aDogNDAlO1xufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24ge1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogODglO1xuICB9XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1kZXNjcmlwdGlvbi10b3Age1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20gLmludmVudG9yeS1kZXNjcmlwdGlvbi1sZWZ0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LXRodW1ibmFpbCBpbWcge1xuICBtYXgtd2lkdGg6IDIwMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LW1zcnAsICNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LWRlYWxlciB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI2ludmVudG9yeSAudmlldy1nYWxsZXJ5IC5pbnZlbnRvcnktbG9jYXRpb24ge1xuICB3aWR0aDogMzMlO1xufVxuI2ludmVudG9yeSAudmlldy1nYWxsZXJ5IC5pbnZlbnRvcnktcHVyY2hhc2Uge1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG5cbiN3YXJlLWJveCwgI3dhcmUtYm94MiwgI3dhcmUtYm94MyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLml0ZW0tcG9wdXAge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHdpZHRoOiA2MDBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgLypAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMTEwMHB4KSB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9Ki9cbn1cbi5pdGVtLXBvcHVwIGgzIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLml0ZW0tcG9wdXAgLml0ZW0tcG9wdXAtdGl0bGUgaDMge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuLml0ZW0tcG9wdXAgbGFiZWwge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogODBweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5pdGVtLXBvcHVwIGlucHV0IHtcbiAgd2lkdGg6IDUwcHg7XG59XG4uaXRlbS1wb3B1cCBpbnB1dFtuYW1lPXZlaGljbGVdIHtcbiAgd2lkdGg6IDcwJTtcbn1cbi5pdGVtLXBvcHVwIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi5pdGVtLXBvcHVwID4gZGl2IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaXRlbS1wb3B1cCAuZmllbGQge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogYXV0bztcbn1cbi5pdGVtLXBvcHVwIC5maWVsZC12ZWhpY2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5pdGVtLXBvcHVwIC5maWVsZCA+IGRpdiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuLml0ZW0tcG9wdXAgLmZpZWxkLnVwc2VsbCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4uaXRlbS1wb3B1cCAuYnV0dG9uIHtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG59XG4uaXRlbS1wb3B1cCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbi5pdGVtLXBvcHVwIC5pdGVtLXBvcHVwLWN0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaXRlbS1wb3B1cCAuaXRlbS1wb3B1cC1jdGEge1xuICAgIHBhZGRpbmctbGVmdDogODBweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLml0ZW0tcG9wdXAgLml0ZW0tcG9wdXAtY3RhIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLml0ZW0tcG9wdXAgLml0ZW0tcG9wdXAtY3RhIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuLml0ZW0tcG9wdXAgLnVwc2VsbCB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVyZW07XG59XG4uaXRlbS1wb3B1cCAudXBzZWxsIGxhYmVsIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG4uaXRlbS1wb3B1cCAudXBzZWxsIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IGF1dG87XG59XG4uaXRlbS1wb3B1cCAudXBzZWxsIHRhYmxlIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuLml0ZW0tcG9wdXAgLnVwc2VsbCB0YWJsZSB0ciB0ZCB7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC43NXJlbTtcbn1cbi5pdGVtLXBvcHVwIC51cHNlbGwgdGFibGUgc3BhbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbiN3YXJlLWJveDIgLml0ZW0tcG9wdXAtbXNnIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbiN3YXJlLWJveDIgI21lc3NhZ2Uge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG4jd2FyZS1ib3gyICNtZXNzYWdlIC5mYS1jaGVjay1jaXJjbGUsICN3YXJlLWJveDIgI21lc3NhZ2UgLmZhLW1pbnVzLWNpcmNsZSwgI3dhcmUtYm94MiAjbWVzc2FnZSAuZmEtdGltZXMtY2lyY2xlLCAjd2FyZS1ib3gyICNtZXNzYWdlIC5mYS1leGNsYW1hdGlvbi10cmlhbmdsZSB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3YXJlLWJveDIgI21lc3NhZ2UgLmZhLWNoZWNrLWNpcmNsZSB7XG4gIGNvbG9yOiAjMzNjYzMzO1xufVxuI3dhcmUtYm94MiAjbWVzc2FnZSAuZmEtbWludXMtY2lyY2xlLCAjd2FyZS1ib3gyICNtZXNzYWdlIC5mYS10aW1lcy1jaXJjbGUsICN3YXJlLWJveDIgI21lc3NhZ2UgLmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlIHtcbiAgY29sb3I6ICNmNGE4MjY7XG59XG4jd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSBhLmJ1dHRvbjpsaW5rOmZpcnN0LWNoaWxkLCAjd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSBhLmJ1dHRvbjp2aXNpdGVkOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbn1cbiN3YXJlLWJveDIgLml0ZW0tcG9wdXAtY3RhIGEuYnV0dG9uOmxpbms6bGFzdC1jaGlsZCwgI3dhcmUtYm94MiAuaXRlbS1wb3B1cC1jdGEgYS5idXR0b246dmlzaXRlZDpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbiN3YXJlLWJveDIgLml0ZW0tcG9wdXAtY3RhIGEuYnV0dG9uOmxpbms6aG92ZXIsICN3YXJlLWJveDIgLml0ZW0tcG9wdXAtY3RhIGEuYnV0dG9uOnZpc2l0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuXG4jd2FyZS1ib3gzIC5jYXJ0LXJlc3VsdHMgdGgsICN3YXJlLWJveDMgLmNhcnQtcmVzdWx0cyB0ZCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiN3YXJlLWJveDMgLmNhcnQtdG9wIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbiN3YXJlLWJveDMgLmNhcnQtdG9wIGgxIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjN2Y4MjgzO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzdmODI4MztcbiAgcGFkZGluZzogMXJlbSAwLjc1cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktdGl0bGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS1pY29uIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktdG90YWwge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDZcIjtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS10aHVtYm5haWwge1xuICB3aWR0aDogMTIlO1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktdGh1bWJuYWlsIHtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS10aHVtYm5haWwgaW1nIHtcbiAgbWF4LXdpZHRoOiA3MHB4O1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1pbmZvIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgfVxufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDg4JTtcbiAgfVxufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi10b3Age1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQge1xuICB3aWR0aDogMTAwJTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhLCAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24sICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jaGVja291dC1jdGEgLmJ1dHRvbi5lZGl0LWNhcnQsICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEgLmJ1dHRvbi5lZGl0LWNhcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xuICBtYXJnaW4tbGVmdDogMC43NXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uLCAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzY2MzMztcbiAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LXRvdGFsLCAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtdG90YWwge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0LXRhYmxlLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzdmODI4MztcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzdmODI4Mztcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1pdGVtIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbS1ib3R0b20gaSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEge1xuICBwYWRkaW5nOiAxLjI1cmVtIDAuNzVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtdG90YWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNpbnZlbnRvcnkgLnBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuICBtYXJnaW46IDNyZW0gMDtcbn1cbiNpbnZlbnRvcnkgLm5hdmlnYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuI2ludmVudG9yeSAubmF2aWdhdGlvbiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbn1cbiNpbnZlbnRvcnkgLm5hdmlnYXRpb24gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG59XG5cbiNpbnZlbnRvcnkgI2JveCB7XG4gIGJhY2tncm91bmQtY29sb3I6IG9yYW5nZTtcbiAgYm9yZGVyOiA0cHggc29saWQgcGluaztcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAxcywgYm9yZGVyIDFzO1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuI2ludmVudG9yeSAudmVydGljYWwge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQ6IDMycHggXCJBcmlhbFwiO1xufVxuI2ludmVudG9yeSAuZXh0cmEge1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGJvcmRlcjogNHB4IHNvbGlkIGJsdWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuLmxvZ2luIGxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5sb2dpbiBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiA0MCU7XG4gIH1cbn1cbi5sb2dpbiAuaW52LWxvZ2luLCAubG9naW4gLmludi1tc2csIC5sb2dpbiAjbG9naW5fZm9ybSwgLmxvZ2luIC5pbnYtbGlua3Mge1xuICBwYWRkaW5nOiAwIDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubG9naW4gLmludi1sb2dpbiwgLmxvZ2luIC5pbnYtbXNnLCAubG9naW4gI2xvZ2luX2Zvcm0sIC5sb2dpbiAuaW52LWxpbmtzIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4ubG9naW4gLmludi1saW5rcyB1bCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5sb2dpbiAuaW52LWxpbmtzIHVsIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi5sb2dpbiAuaW52LWRpc2NsYWltZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubG9naW4gLnRpdGxlIGgzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuLmxvZ2luICNsb2dpbl9mb3JtIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5sb2dpbiAuaW52LW1zZyA+IHAge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ViMjEyZTtcbn1cblxuI2ludmVudG9yeS5odWIge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbnZlbnRvcnkuaHViIHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbiAgfVxufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEge1xuICBtYXgtd2lkdGg6IDcwcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2ludmVudG9yeS5odWIgLmh1Yi1jdGEge1xuICAgIG1hcmdpbi1ib3R0b206IDVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkuaHViIC5odWItY3RhIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIC50aXRsZSwgI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgLnJvdyA+IC5jb2x1bW46bnRoLWNoaWxkKDIpIC5pbWFnZSwgI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgyKSAuaW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IC0yLjVyZW07XG4gICAgbWFyZ2luLXRvcDogLTFyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIC5pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgaW1nIHtcbiAgbWF4LXdpZHRoOiA3NSU7XG59XG4jaW52ZW50b3J5Lmh1YiAuaHViLWN0YSBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjaW52ZW50b3J5Lmh1YiAuaHViLWN0YSAudGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIGE6aG92ZXIgaDMge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIGE6aG92ZXIgLmltYWdlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm9yZGVycyAucGFnZS1jb250ZW50IC5hY2NvcmRpb24sIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIH1cbiAgLm9yZGVycyAucGFnZS1jb250ZW50IC5hY2NvcmRpb24gI2ludmVudG9yeS1maWx0ZXItc2VhcmNoLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuYWNjb3JkaW9uICNpbnZlbnRvcnktZmlsdGVyLXNlYXJjaCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0sIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBwYWRkaW5nOiAycmVtO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgbGFiZWwsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgbGFiZWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmb250LXdlaWdodDogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciBsYWJlbCwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciBsYWJlbCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgaW5wdXQsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgaW5wdXQge1xuICB3aWR0aDogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIGlucHV0LCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIGlucHV0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyID4gZGl2LCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyID4gZGl2IHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyID4gZGl2LnBvLW51bWJlciwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciA+IGRpdi5wby1udW1iZXIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgPiBkaXYsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgPiBkaXYge1xuICAgIC8qXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICB3aWR0aDozNyU7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIHdpZHRoOjUlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIHdpZHRoOjIwJTtcbiAgICB9Ki9cbiAgfVxufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgLmRpdmlkZXIsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgLmRpdmlkZXIge1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyIC5idXR0b24sIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6IDAuN3JlbSAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciAuYnV0dG9uLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyIC5idXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuZGF0ZXMgPiBsYWJlbCwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuZGF0ZXMgPiBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuZGF0ZXMgPiBsYWJlbDpudGgtY2hpbGQoMiksIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLmRhdGVzID4gbGFiZWw6bnRoLWNoaWxkKDIpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLm9yZGVycyAucGFnZS1jb250ZW50IHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5vcmRlcnMgLm9yZGVyLXF1ZXJ5IHtcbiAgcGFkZGluZzogMXJlbSAycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjZWIyMTJlO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLm9yZGVycyAub3JkZXItcXVlcnkge1xuICAgIHBhZGRpbmc6IDFyZW07XG4gIH1cbn1cbi5vcmRlcnMgLm9yZGVyLXRhYmxlIHtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAub3JkZXJzIC5vcmRlci10YWJsZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxufVxuLm9yZGVycyAub3JkZXItdGFibGUgdGFibGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLm9yZGVycyAub3JkZXItdGFibGUgdGhlYWQsIC5vcmRlcnMgLm9yZGVyLXRhYmxlIHRib2R5IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMwYTBhMGE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm9yZGVycyAub3JkZXItdGFibGUgdHIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSB0ZCB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xufVxuLm9yZGVycyAub3JkZXItdGFibGUgLmJ1dHRvbi50cmFja2luZy1vcmRlci1idXR0b24ge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ub3JkZXJzIC5kaXNjbGFpbWVyIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vcmRlcnMgLmRpc2NsYWltZXIge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscywgI2ludi1vcmRlci1wcmludCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5pdGVtLXBvcHVwLCAjaW52LW9yZGVyLXByaW50IC5pdGVtLXBvcHVwIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5pdGVtLXBvcHVwLCAjaW52LW9yZGVyLXByaW50IC5pdGVtLXBvcHVwIHtcbiAgICBwYWRkaW5nOiAycmVtO1xuICAgIHdpZHRoOiA5MDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5pdGVtLXBvcHVwLCAjaW52LW9yZGVyLXByaW50IC5pdGVtLXBvcHVwIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIH1cbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyLCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciwgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciA+IGRpdiwgI2ludi1vcmRlci1wcmludCAuaGVhZGVyID4gZGl2IHtcbiAgd2lkdGg6IDM1JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyID4gZGl2LCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIgPiBkaXYge1xuICAgIHdpZHRoOiA0NSU7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIgLmFkZHJlc3MsICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciAuYWRkcmVzcyB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIgLmFkZHJlc3MsICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciAuYWRkcmVzcyB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyIC5hZGRyZXNzID4gZGl2LCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIgLmFkZHJlc3MgPiBkaXYge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciAuYWRkcmVzcyA+IGRpdjpmaXJzdC1jaGlsZCwgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIC5hZGRyZXNzID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIgLm9yZGVyLWluZm8sICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciAub3JkZXItaW5mbyB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciAub3JkZXItaW5mbywgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIC5vcmRlci1pbmZvIHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5wcm9kdWN0LWxpc3QsICNpbnYtb3JkZXItcHJpbnQgLnByb2R1Y3QtbGlzdCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLnByb2R1Y3QtbGlzdCwgI2ludi1vcmRlci1wcmludCAucHJvZHVjdC1saXN0IHtcbiAgICBsaW5lLWhlaWdodDogMS4yNTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIHRhYmxlLCAjaW52LW9yZGVyLXByaW50IHRhYmxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyB0YWJsZSB0aGVhZCwgI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIHRhYmxlIHRib2R5LCAjaW52LW9yZGVyLXByaW50IHRhYmxlIHRoZWFkLCAjaW52LW9yZGVyLXByaW50IHRhYmxlIHRib2R5IHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMTBweCBzb2xpZCAjMGEwYTBhO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIHRhYmxlIHRkLCAjaW52LW9yZGVyLXByaW50IHRhYmxlIHRkIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuY3RhLCAjaW52LW9yZGVyLXByaW50IC5jdGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5jdGEgPiBkaXYsICNpbnYtb3JkZXItcHJpbnQgLmN0YSA+IGRpdiB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5jdGEgLmJ1dHRvbiwgI2ludi1vcmRlci1wcmludCAuY3RhIC5idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4udXNlci1vcHRpb25zID4gZGl2LnVzZXItb3B0aW9ucy1pbnZlbnRvcnkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnVzZXItb3B0aW9ucyA+IGRpdi51c2VyLW9wdGlvbnMtaW52ZW50b3J5IGEsIC51c2VyLW9wdGlvbnMgPiBkaXYudXNlci1vcHRpb25zLWludmVudG9yeSBpIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG4udXNlci1vcHRpb25zID4gZGl2LnVzZXItb3B0aW9ucy1pbnZlbnRvcnkgYTpob3ZlciB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLnVzZXItb3B0aW9ucyA+IGRpdi51c2VyLW9wdGlvbnMtaW52ZW50b3J5IGE6aG92ZXIgaSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4udXNlci1vcHRpb25zLWludmVudG9yeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5wcmludC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG4jaW52LW9yZGVyLXByaW50IC5pdGVtLXBvcHVwIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuI2ludi1vcmRlci1wcmludCAub3JkZXItaW5mbywgI2ludi1vcmRlci1wcmludCB0YWJsZSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuXG4uY2FydCAjbG9naW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmNhcnQgLmNhcnQtdGl0bGUge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5jYXJ0IC5wYWdlLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5jYXJ0IC5wYWdlLWNvbnRlbnQuY2FydC10YWJsZS1jb250YWluZXIgZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNhcnQgLnBhZ2UtY29udGVudCAuY2FydC1saXN0aW5nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJvcmRlci10b3A6IDVweCBzb2xpZCAjZWIyMTJlO1xufVxuLmNhcnQgLnBhZ2UtY29udGVudCAuY2FydC1saXN0aW5nIC52ZWhpY2xlLW1lc3NhZ2Uge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBsaW5lLWhlaWdodDogMjtcbn1cbi5jYXJ0IHRoIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uY2FydCB0ZCB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uY2FydC1idXR0b25zLCAuY2FydC10b3RhbCB7XG4gIHBhZGRpbmc6IDJyZW07XG59XG4uY2FydC1idXR0b25zIC5idXR0b24ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY2FydC1idXR0b25zIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLmNhcnQgLnVwZGF0ZS1tZXNzYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhcnQgLnVwZGF0ZS1tZXNzYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uY2FydCAudXBkYXRlLW1lc3NhZ2Ugc3BhbiB7XG4gIGNvbG9yOiAjMzNjYzMzO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmNhcnQgLnVwZGF0ZS1jaGVja291dCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmNhcnQgLnVwZGF0ZS1jaGVja291dCAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbi5jYXJ0IC51cGRhdGUtY2hlY2tvdXQgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzY2MzMztcbn1cbi5jYXJ0IC51cGRhdGUtY2hlY2tvdXQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IGJsYWNrO1xufVxuLmNhcnQgLmVkaXQtY2FydCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmNhcnQgLmVkaXQtY2FydCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbi5jYXJ0IC5lZGl0LWNhcnQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uY2FydC1xdHkge1xuICB3aWR0aDogNjBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG4uY2FydC10b3RhbCB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uY2FydC10b3RhbC10aXRsZSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLmNhcnQgLmRpc2NsYWltZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICM4YThhOGE7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jYXJ0IC5kaXNjbGFpbWVyIHtcbiAgICBtYXJnaW4tdG9wOiA1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2FydCAuaW52LWJ0bi1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4uY2FydCAuY2hlY2tvdXQtZXJyb3Ige1xuICBjb2xvcjogI2VkMDAxYTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5wYWdlLWNvbnRlbnQgLmNoZWNrb3V0LWZvcm0ge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLWNvbnRlbnQgLmNoZWNrb3V0LWZvcm0gLmJ1dHRvbnMge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuXG4jY2hlY2tvdXQgaDEsICNjaGVja291dCBoMiwgI2NhcnQgaDEsICNjYXJ0IGgyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNjaGVja291dCAucGFnZS1jb250ZW50IGgxLCAjY2FydCAucGFnZS1jb250ZW50IGgxIHtcbiAgY29sb3I6ICNlYjIxMmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjY2hlY2tvdXQgLmNoZWNrb3V0LXRpdGxlLCAjY2hlY2tvdXQgLmNhcnQtdGl0bGUsICNjYXJ0IC5jaGVja291dC10aXRsZSwgI2NhcnQgLmNhcnQtdGl0bGUge1xuICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjY2hlY2tvdXQgLmNoZWNrb3V0LXRpdGxlIGgxLCAjY2hlY2tvdXQgLmNhcnQtdGl0bGUgaDEsICNjYXJ0IC5jaGVja291dC10aXRsZSBoMSwgI2NhcnQgLmNhcnQtdGl0bGUgaDEge1xuICAgIHBhZGRpbmc6IDAgMC43NXJlbTtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNjaGVja291dCAuY2hlY2tvdXQtZm9ybSBoMiwgI2NhcnQgLmNoZWNrb3V0LWZvcm0gaDIge1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICB9XG59XG5cbi5jaGVja291dC10b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4uY2hlY2tvdXQtZm9ybSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yaWdodC1jb2xvcjogIzdmODI4Mztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jaGVja291dC1mb3JtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICAgIHBhZGRpbmc6IDJyZW07XG4gIH1cbn1cbi5jaGVja291dC1mb3JtIC5idXR0b25zIC5idXR0b24ge1xuICBtYXgtd2lkdGg6IDE1MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5jaGVja291dC1mb3JtIC5idXR0b25zIC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNjYzMzO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuLmNoZWNrb3V0LWZvcm0gLmJ1dHRvbnMgLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbi5jaGVja291dC1mb3JtIC5idXR0b25zIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuLmNoZWNrb3V0LWZvcm0gLmludmFsaWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWQwMDFhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5jaGVja291dCBsYWJlbCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXdlaWdodDogNzAwO1xuICAvKmZvbnQtc2l6ZToxcmVtOyovXG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNoZWNrb3V0IC5maWVsZCBpbnB1dCwgLmNoZWNrb3V0IC5maWVsZCBzZWxlY3Qge1xuICAgIG1heC13aWR0aDogMzUwcHg7XG4gIH1cbn1cbi5jaGVja291dCAuZmllbGQgdGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xuICBtaW4taGVpZ2h0OiAxNTBweDtcbn1cbi5jaGVja291dCAuY3VzdG9tZXItYWRkcmVzcyB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuI2NoZWNrb3V0IC5zdW1tYXJ5IHtcbiAgcGFkZGluZzogMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiNjaGVja291dCAuc3VtbWFyeSAuY2FydC1saXN0aW5nIHtcbiAgbWFyZ2luLXRvcDogMi41cmVtO1xufVxuI2NoZWNrb3V0IC5zdW1tYXJ5IHRhYmxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4jY2hlY2tvdXQgLnN1bW1hcnkgdGg6bnRoLWNoaWxkKDMpIHtcbiAgbWluLXdpZHRoOiAxMDBweDtcbn1cblxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUsICNjYXJ0IC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3ZjgyODM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2Y4MjgzO1xuICBwYWRkaW5nOiAxcmVtIDAuNzVyZW07XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlLCAjY2FydCAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktdGl0bGUsICNjYXJ0IC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktdGl0bGUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS1pY29uLCAjY2FydCAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LWljb24ge1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS10b3RhbCwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS10b3RhbCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuZmEtYW5nbGUtZG93bjpiZWZvcmUsICNjYXJ0IC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA2XCI7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWl0ZW0sICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2Y4MjgzO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC43NXJlbTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktdGh1bWJuYWlsLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS10aHVtYm5haWwge1xuICB3aWR0aDogMTIlO1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktdGh1bWJuYWlsLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS10aHVtYm5haWwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LXRodW1ibmFpbCBpbWcsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LXRodW1ibmFpbCBpbWcge1xuICBtYXgtd2lkdGg6IDcwcHg7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWluZm8sICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWluZm8sICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWluZm8ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICB9XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbiwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24ge1xuICAgIHdpZHRoOiA4OCU7XG4gIH1cbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tdG9wLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi10b3Age1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSA+IGRpdiwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tID4gZGl2IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQge1xuICB3aWR0aDogMTAwJTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24gLmludmVudG9yeS1xdWFudGl0eSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24gLmludmVudG9yeS1xdWFudGl0eSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIC5pbnZlbnRvcnktcXVhbnRpdHkgLmNhcnQtcXR5LCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiAuaW52ZW50b3J5LXF1YW50aXR5IC5jYXJ0LXF0eSB7XG4gIG1hcmdpbjogMDtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24gLmludmVudG9yeS12ZWhpY2xlLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiAuaW52ZW50b3J5LXZlaGljbGUge1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dC1jdGEsICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5tb2JpbGUtY2FydC1jdGEsICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dC1jdGEgLmJ1dHRvbiwgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jaGVja291dC1jdGEgLmJ1dHRvbiwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dC1jdGEgLmJ1dHRvbi5lZGl0LWNhcnQsICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5tb2JpbGUtY2FydC1jdGEgLmJ1dHRvbi5lZGl0LWNhcnQsICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLmVkaXQtY2FydCwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEgLmJ1dHRvbi5lZGl0LWNhcnQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZjgyODM7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLmNoZWNrb3V0LWJ1dHRvbiwgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLmNoZWNrb3V0LWJ1dHRvbiwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLmNoZWNrb3V0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM2NjMzM7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNoZWNrb3V0LXRvdGFsLCAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNhcnQtdG90YWwsICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LXRvdGFsLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qLy8vLy8gTW9iaWxlIC0gQ2FydCAvLy8vLyovXG4jY2FydCAubW9iaWxlLWNhcnQtdGFibGUtY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2Y4MjgzO1xufVxuXG4jY2FydCAubW9iaWxlLWNhcnQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzdmODI4Mztcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0gLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1pdGVtIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbS1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4jY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1pdGVtIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbS1ib3R0b20gaSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIHtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjc1cmVtO1xufVxuI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC10b3RhbCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuI2NhcnQgLm1vYmlsZS1jYXJ0IC5pdGVtLXVwZGF0ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS11cGRhdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlcjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMzM2NjMzM7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4vKi8vLy8vIFJlbW92ZSBJdGVtIFBvcHVwIC8vLy8vKi9cbiN3YXJlLWJveDIuY2FydCAuaXRlbS1wb3B1cC1jdGEge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNpbnZlbnRvcnkge1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICB9XG59XG5cbiNpbnZlbnRvcnkgLmZpbHRlciwgLmludmVudG9yeS1oZWFkIC5maWx0ZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zZWxlY3Rpb24sIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNlbGVjdGlvbiB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3ZjgyODM7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2VsZWN0aW9uIGg1LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zZWxlY3Rpb24gaDUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXNlbGVjdGlvbiB1bCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2VsZWN0aW9uIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXNlbGVjdGlvbiBsaSwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2VsZWN0aW9uIGxpIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2VsZWN0aW9uIGlucHV0LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zZWxlY3Rpb24gaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXNlbGVjdGlvbiBsYWJlbCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2VsZWN0aW9uIGxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYWN0aXZlLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1hY3RpdmUge1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1hY3RpdmU6YWZ0ZXIsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNzUlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xuICBoZWlnaHQ6IDFweDtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1hY3RpdmUgdWwsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZSB1bCB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZSBhLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjMzM2Njk5O1xuICBmb250LXdlaWdodDogOTAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYWN0aXZlIGEjY2xlYXIsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZSBhI2NsZWFyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZCB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6IHdoaXRlO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciBhLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQ6aG92ZXIgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWJ1dHRvbiwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYnV0dG9uIHtcbiAgY29sb3I6ICNlYjIxMmU7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1wYXJ0LW51bWJlciwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItcGFydC1udW1iZXIge1xuICBtYXgtd2lkdGg6IDgwJTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXBhcnQtbnVtYmVyIGlucHV0LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1wYXJ0LW51bWJlciBpbnB1dCB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnksIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHtcbiAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgIzdmODI4MztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBtYXgtd2lkdGg6IDgwJTtcbiAgfVxufVxuI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSBsYWJlbCwgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSBzZWxlY3QsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBsYWJlbCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IGxhYmVsLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkgbGFiZWwge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnkgbGFiZWwsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBsYWJlbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IHNlbGVjdCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSBzZWxlY3QsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IGg1LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkgaDUge1xuICBjb2xvcjogI2ViMjEyZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnkgaDUsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBoNSB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgfVxufVxuI2ludmVudG9yeSAjY2xlYXJTS1UsIC5pbnZlbnRvcnktaGVhZCAjY2xlYXJTS1Uge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jaW52ZW50b3J5IC5vcHRpb25zLWJhciB7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjN2Y4MjgzO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyIHNlbGVjdCwgI2ludmVudG9yeSAub3B0aW9ucy1iYXIgaW5wdXQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhciA+IGRpdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhciA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICM3ZjgyODM7XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhci12aWV3IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXItdmlldyBpIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAjZTRlNGU0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyLXZpZXcgaTpob3ZlciB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXItdmlldyBidXR0b24uYWN0aXZlLXZpZXcgaSB7XG4gIGNvbG9yOiAjZWIyMTJlO1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXItaW5zdG9jayBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhci1zb3J0IHNlbGVjdCB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXIgLnJlc3VsdC1jb3VudCwgI2ludmVudG9yeSAub3B0aW9ucy1iYXIgLnJlc3VsdC1jb3VudC1lbXB0eSB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuMjVyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLmZpbHRlci1zZWxlY3Rpb24sIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNlbGVjdGlvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gICAgaGVpZ2h0OiA1MHZoO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgfVxuICAjaW52ZW50b3J5IC5hY2NvcmRpb24taXRlbSwgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24taXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzdmODI4MztcbiAgfVxufVxuI2ludmVudG9yeSAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIGEsIC5pbnZlbnRvcnktaGVhZCAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIGEge1xuICBjb2xvcjogI2ViMjEyZTtcbn1cbiNpbnZlbnRvcnkgLmFjY29yZGlvbi10aXRsZSwgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24tdGl0bGUge1xuICBmb250LWZhbWlseTogXCJUZWtvXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlcjogMDtcbn1cblxuLmludi50aGFua3Mge1xuICAvKiAgLnBhZ2UtY29udGVudCB7XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIH0qL1xufVxuLmludi50aGFua3MgaDMge1xuICBjb2xvcjogIzMzY2MzMztcbiAgZm9udC1zaXplOiA0cmVtO1xufVxuLmludi50aGFua3MgLmJ1dHRvbnMgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMjEyZTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNDAwO1xufVxuLmludi50aGFua3MgLnRoYW5rcy10ZXh0IHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmludi50aGFua3MgLnRoYW5rcy10ZXh0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgfVxufSIsIi8qIFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5UYWJsZSBvZiBDb250ZW50c1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4qL1xuXG5AY2hhcnNldCAndXRmLTgnO1xuLy8gKioqKioqKioqKiBGT1VOREFUSU9OICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3NldHRpbmdzJztcbkBpbXBvcnQgJ2ZvdW5kYXRpb24nO1xuQGluY2x1ZGUgZm91bmRhdGlvbi1ldmVyeXRoaW5nKGZhbHNlKTtcbi8vICoqKioqKioqKiogTU9USU9OIFVJICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ21vdGlvbi11aSc7XG5AaW5jbHVkZSBtb3Rpb24tdWktdHJhbnNpdGlvbnM7XG5AaW5jbHVkZSBtb3Rpb24tdWktYW5pbWF0aW9ucztcbi8vICoqKioqKioqKiogU0xJQ0sgU0xJREVSICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3NsaWNrLXRoZW1lLnNjc3MnO1xuQGltcG9ydCAnb3ZlcnJpZGVzL3NsaWNrLnNjc3MnO1xuQGltcG9ydCAnc2xpY2suc2Nzcyc7XG4vLyAqKioqKioqKioqIE1BR05JRklDIFBPUFVQICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ21haW4nO1xuLy8gKioqKioqKioqKiBHRU5FUkFMICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2dlbmVyYWwnO1xuQGltcG9ydCAndXRpbGl0eSc7XG5AaW1wb3J0ICdoZWFkZXInO1xuQGltcG9ydCAnZm9vdGVyJztcbi8vICoqKioqKioqKiogSE9NRSAqKioqKioqKioqIC8vXG5AaW1wb3J0ICdob21lL3NlY3Rpb25zJztcbkBpbXBvcnQgJ2hvbWUvaGVybyc7XG5AaW1wb3J0ICdob21lL2V4cGxvcmUnO1xuQGltcG9ydCAnaG9tZS9wZW5jaWwnO1xuQGltcG9ydCAnaG9tZS93aGVlbHMnO1xuQGltcG9ydCAnaG9tZS9zZXJpZXMnO1xuQGltcG9ydCAnaG9tZS90aXJlcy1hY2Nlc3Nvcmllcyc7XG5AaW1wb3J0ICdob21lL2N0YSc7XG5AaW1wb3J0ICdob21lL2RlYWxlcnMnO1xuQGltcG9ydCAnaG9tZS9hYm91dCc7XG5AaW1wb3J0ICdob21lL2luc3RhZ3JhbSc7XG4vLyAqKioqKioqKioqIE1JU0NFTExBTkVPVVMgKioqKioqKioqKiAvL1xuQGltcG9ydCAnZmlsdGVycyc7XG5AaW1wb3J0ICd2ZWhpY2xlLWJhcic7XG5AaW1wb3J0ICduYXYtc2VhcmNoJztcbi8vICoqKioqKioqKiogV0hFRUxTICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3doZWVsL2NvbGxlY3Rpb24nO1xuQGltcG9ydCAnd2hlZWwvYnJhbmQnO1xuQGltcG9ydCAnd2hlZWwvd2hlZWxzJztcbkBpbXBvcnQgJ3doZWVsL3doZWVsJztcbkBpbXBvcnQgJ3doZWVsL3N0YWdlJztcbkBpbXBvcnQgJ3doZWVsL3NwZWNzJztcbkBpbXBvcnQgJ3doZWVsL2luZm8nO1xuQGltcG9ydCAnd2hlZWwvY3RhJztcbkBpbXBvcnQgJ3doZWVsL2RldGFpbHMtbWVkaWEnO1xuQGltcG9ydCAnd2hlZWwvdmlldy1vbi12ZWhpY2xlJztcbkBpbXBvcnQgJ3doZWVsL3ZpZXctb24tdmVoaWNsZS1wb3B1cCc7XG5AaW1wb3J0ICd3aGVlbC92ZWhpY2xlLWdhbGxlcnknO1xuQGltcG9ydCAnd2hlZWwvc3BlYy10YWJzJztcbkBpbXBvcnQgJ3doZWVsL2ZpbmlzaGVzJztcbkBpbXBvcnQgJ3doZWVsL2dhbGxlcnknO1xuQGltcG9ydCAnd2hlZWwvbmF2aWdhdGlvbic7XG5AaW1wb3J0ICd3aGVlbC90aXRsZSc7XG5AaW1wb3J0ICd3aGVlbC9jYXJ0JztcbkBpbXBvcnQgJ3doZWVsL3N1Ym1lbnUnO1xuLy8gKioqKioqKioqKiBXSEVFTFMgLSBGaXRtZW50ICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3doZWVsL2ZpdG1lbnQvZmlsdGVyJztcbkBpbXBvcnQgJ3doZWVsL2ZpdG1lbnQvaW5mbyc7XG5AaW1wb3J0ICd3aGVlbC9maXRtZW50L3NwZWNzJztcbkBpbXBvcnQgJ3doZWVsL2ZpdG1lbnQvc3RhZ2UnO1xuQGltcG9ydCAnd2hlZWwvZml0bWVudC93aGVlbHMnO1xuLy8gKioqKioqKioqKiBUSVJFUyAqKioqKioqKioqIC8vXG5AaW1wb3J0ICd0aXJlL3RpcmUnO1xuQGltcG9ydCAndGlyZS9pbmZvJztcbkBpbXBvcnQgJ3RpcmUvY3RhJztcbkBpbXBvcnQgJ3RpcmUvc3BlY3MnO1xuQGltcG9ydCAndGlyZS90aXJlcyc7XG4vLyAqKioqKioqKioqIEFDQ0VTU09SSUVTICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2FjY2Vzc29yeS9hY2Nlc3Nvcmllcyc7XG5AaW1wb3J0ICdhY2Nlc3NvcnkvYWNjZXNzb3J5JztcbkBpbXBvcnQgJ2FjY2Vzc29yeS9jdGEnO1xuQGltcG9ydCAnYWNjZXNzb3J5L2Jhcic7XG4vLyAqKioqKioqKioqIEdBTExFUlkgKioqKioqKioqKiAvL1xuQGltcG9ydCAnZ2FsbGVyeS9maWx0ZXInO1xuQGltcG9ydCAnZ2FsbGVyeS9sYW5kaW5nJztcbkBpbXBvcnQgJ2dhbGxlcnkvZGV0YWlsJztcbi8vICoqKioqKioqKiogQ09OVEVOVCAqKioqKioqKioqIC8vXG5AaW1wb3J0ICdjb250ZW50L2NvbnRhY3QnO1xuQGltcG9ydCAnY29udGVudC9wYWdlJztcbkBpbXBvcnQgJ2NvbnRlbnQvbmV3cyc7XG5AaW1wb3J0ICdjb250ZW50L2Fib3V0JztcbkBpbXBvcnQgJ2NvbnRlbnQvZGVhbGVycyc7XG5AaW1wb3J0ICdjb250ZW50L2ZpdG1lbnQnO1xuQGltcG9ydCAnY29udGVudC9lcnJvcic7XG5AaW1wb3J0ICdjb250ZW50L2Rvd25sb2Fkcyc7XG4vLyAqKioqKioqKioqIFBPUFVQUyAqKioqKioqKioqIC8vXG5AaW1wb3J0ICdwb3B1cHMvcGFja2FnZSc7XG5AaW1wb3J0ICdwb3B1cHMvYWNjZXNzb3J5JztcbkBpbXBvcnQgJ3BvcHVwcy9nYWxsZXJ5LXF1b3RlJztcbkBpbXBvcnQgJ3BvcHVwcy9maXRtZW50LWNoZWNrJztcbi8vICoqKioqKioqKiogRk9YWSBDQVJUICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3V0aWxpdHkvZm94eWNhcnQnO1xuLy8gKioqKioqKioqKiBPVkVSUklERVMgKioqKioqKioqKiAvL1xuQGltcG9ydCAnb3ZlcnJpZGVzL3NuaXBjYXJ0Jztcbi8vICoqKioqKioqKiogSU5WRU5UT1JZICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2ludmVudG9yeS9oZWFkZXInO1xuQGltcG9ydCAnaW52ZW50b3J5L2Zvb3Rlcic7XG5AaW1wb3J0ICdpbnZlbnRvcnkvaW52ZW50b3J5JztcbkBpbXBvcnQgJ2ludmVudG9yeS9sb2dpbic7XG5AaW1wb3J0ICdpbnZlbnRvcnkvb3JkZXJzJztcbkBpbXBvcnQgJ2ludmVudG9yeS9jYXJ0JztcbkBpbXBvcnQgJ2ludmVudG9yeS9maWx0ZXInO1xuQGltcG9ydCAnaW52ZW50b3J5L3RoYW5rcyc7IiwiLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjkuMFxuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cblxuLy8gLS0tIERlcGVuZGVuY2llcyAtLS1cbkBpbXBvcnQgJ3ZlbmRvci9ub3JtYWxpemUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL21pc3NpbmctZGVwZW5kZW5jaWVzJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy90cnVlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL2NvbnRhaW4nO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcHVyZ2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVtb3ZlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlcGxhY2UnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvdG8tbGlzdCc7XG5cbi8vIC0tLSBTZXR0aW5ncyAtLS1cbi8vIGltcG9ydCB5b3VyIG93biBgc2V0dGluZ3NgIGhlcmUgb3Jcbi8vIGltcG9ydCBhbmQgbW9kaWZ5IHRoZSBkZWZhdWx0IHNldHRpbmdzIHRocm91Z2hcbi8vIEBpbXBvcnQgJ3NldHRpbmdzL3NldHRpbmdzJztcblxuLy8gLS0tIENvbXBvbmVudHMgLS0tXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG4vLyBHbG9iYWwgc3R5bGVzXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZm9ybXMvZm9ybXMnO1xuQGltcG9ydCAndHlwb2dyYXBoeS90eXBvZ3JhcGh5JztcblxuLy8gR3JpZHNcbkBpbXBvcnQgJ2dyaWQvZ3JpZCc7XG5AaW1wb3J0ICd4eS1ncmlkL3h5LWdyaWQnO1xuLy8gR2VuZXJpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2J1dHRvbi1ncm91cCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Nsb3NlLWJ1dHRvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2xhYmVsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcHJvZ3Jlc3MtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc2xpZGVyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3dpdGNoJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFibGUnO1xuLy8gQmFzaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9iYWRnZSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2JyZWFkY3J1bWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FsbG91dCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhcmQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3BhZ2luYXRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy90b29sdGlwJztcblxuLy8gQ29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZWRpYS1vYmplY3QnO1xuQGltcG9ydCAnY29tcG9uZW50cy9vcmJpdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Jlc3BvbnNpdmUtZW1iZWQnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGh1bWJuYWlsJztcbi8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudS1pY29uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uLW1lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcmlsbGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9kcm9wZG93bi1tZW51JztcblxuLy8gTGF5b3V0IGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb2ZmLWNhbnZhcyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3JldmVhbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N0aWNreSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RpdGxlLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RvcC1iYXInO1xuXG4vLyBIZWxwZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2Zsb2F0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxleCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Zpc2liaWxpdHknO1xuQGltcG9ydCAncHJvdG90eXBlL3Byb3RvdHlwZSc7XG5cblxuQG1peGluIGZvdW5kYXRpb24tZXZlcnl0aGluZyhcbiAgJGZsZXg6IHRydWUsXG4gICRwcm90b3R5cGU6IGZhbHNlLFxuICAkeHktZ3JpZDogJHh5LWdyaWRcbikge1xuICBAaWYgJGZsZXgge1xuICAgICRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgQGlmICR4eS1ncmlkIHtcbiAgICAkeHktZ3JpZDogdHJ1ZSAhZ2xvYmFsO1xuICB9XG5cbiAgLy8gR2xvYmFsIHN0eWxlc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZm9ybXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdHlwb2dyYXBoeTtcblxuICAvLyBHcmlkc1xuICBAaWYgbm90ICRmbGV4IHtcbiAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWdyaWQ7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpZiAkeHktZ3JpZCB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLXh5LWdyaWQtY2xhc3NlcztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWdyaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jbG9zZS1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbGFiZWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXNsaWRlcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zd2l0Y2g7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFibGU7XG4gIC8vIEJhc2ljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1iYWRnZTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1icmVhZGNydW1icztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYWxsb3V0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhcmQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcGFnaW5hdGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b29sdGlwO1xuXG4gIC8vIENvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9yYml0O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGFicztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aHVtYm5haWw7XG4gIC8vIE1lbnUtYmFzZWQgY29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudS1pY29uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyaWxsZG93bi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnU7XG5cbiAgLy8gTGF5b3V0IGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vZmYtY2FudmFzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXJldmVhbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zdGlja3k7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGl0bGUtYmFyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvcC1iYXI7XG5cbiAgLy8gSGVscGVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXM7XG4gIEBpZiAkZmxleCB7IEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1jbGFzc2VzOyB9XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzO1xuICBAaWYgJHByb3RvdHlwZSB7IEBpbmNsdWRlIGZvdW5kYXRpb24tcHJvdG90eXBlLWNsYXNzZXM7IH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVha3BvaW50c1xuLy8vL1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJC16Zi1zaXplOiBudWxsO1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzOiAoXG4gIFwic21hbGxcIjogMCxcbiAgXCJtZWRpdW1cIjogNjQwcHgsXG4gIFwibGFyZ2VcIjogMTAyNHB4LFxuICBcInhsYXJnZVwiOiAxMjAwcHgsXG4gIFwieHhsYXJnZVwiOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBcImhpZHBpLTFcIjogMSxcbiAgXCJoaWRwaS0xLTVcIjogMS41LFxuICBcImhpZHBpLTJcIjogMixcbiAgXCJyZXRpbmFcIjogMixcbiAgXCJoaWRwaS0zXCI6IDNcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGFyZ2VzdCBuYW1lZCBicmVha3BvaW50IGluIHdoaWNoIHRvIGluY2x1ZGUgcHJpbnQgYXMgYSBtZWRpYSB0eXBlXG4vLy8gQHR5cGUgS2V5d29yZFxuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlICFkZWZhdWx0O1xuXG4kLXpmLXplcm8tYnJlYWtwb2ludDogc21hbGwgIWRlZmF1bHQ7XG5cbiQtemYtYnJlYWtwb2ludHMta2V5czogbWFwLXRvLWxpc3QoJGJyZWFrcG9pbnRzLCAna2V5cycpO1xuXG5AaWYgbnRoKG1hcC12YWx1ZXMoJGJyZWFrcG9pbnRzKSwgMSkgIT0gMCB7XG4gIEBlcnJvciAnVGhlIGZpcnN0IGtleSBpbiB0aGUgJGJyZWFrcG9pbnRzIG1hcCBtdXN0IGhhdmUgYSB2YWx1ZSBvZiBcIjBcIi4nO1xufVxuQGVsc2Uge1xuICAkLXpmLXplcm8tYnJlYWtwb2ludDogbnRoKG1hcC1rZXlzKCRicmVha3BvaW50cyksIDEpO1xufVxuXG4vLy8gQWxsIG9mIHRoZSBuYW1lcyBpbiB0aGlzIGxpc3Qgd2lsbCBiZSBvdXRwdXQgYXMgY2xhc3NlcyBpbiB5b3VyIENTUywgbGlrZSBgLnNtYWxsLTEyYCwgYC5tZWRpdW0tNmAsIGFuZCBzbyBvbi4gRWFjaCB2YWx1ZSBpbiB0aGlzIGxpc3QgbXVzdCBhbHNvIGJlIGluIHRoZSBgJGJyZWFrcG9pbnRzYCBtYXAuXG4vLy8gQHR5cGUgTGlzdFxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSkgIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgYSBtZWRpYSBxdWVyeSBzdHJpbmcgbWF0Y2hpbmcgdGhlIGlucHV0IHZhbHVlLiBSZWZlciB0byB0aGUgZG9jdW1lbnRhdGlvbiBmb3IgdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHNlZSB3aGF0IHRoZSBwb3NzaWJsZSBpbnB1dHMgYXJlLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbCBbc21hbGxdIC0gQnJlYWtwb2ludCBuYW1lLCBvciBweCwgcmVtLCBvciBlbSB2YWx1ZSB0byBwcm9jZXNzLlxuQGZ1bmN0aW9uIGJyZWFrcG9pbnQoJHZhbDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgLy8gV2ViIHN0YW5kYXJkIFBpeGVscyBwZXIgaW5jaC4gKDFkZHB4IC8gJHN0ZC13ZWItZHBpKSA9IDFkcGlcbiAgLy8gU2VlIGh0dHBzOi8vd3d3LnczLm9yZy9UUi9jc3MtdmFsdWVzLTMvI2Fic29sdXRlLWxlbmd0aHNcbiAgJHN0ZC13ZWItZHBpOiA5NjtcblxuICAvLyBTaXplIG9yIGtleXdvcmRcbiAgJGJwOiBudGgoJHZhbCwgMSk7XG4gIC8vIFZhbHVlIG9mIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludFxuICAkYnAtbmV4dDogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1heC13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1taW46IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtaW4td2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWF4OiBudWxsO1xuICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAkZGlyOiBpZihsZW5ndGgoJHZhbCkgPiAxLCBudGgoJHZhbCwgMiksIHVwKTtcbiAgLy8gSWYgbmFtZWQsIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnRcbiAgJG5hbWU6IG51bGw7XG4gIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgSGlEUEkgYnJlYWtwb2ludFxuICAkaGlkcGk6IGZhbHNlO1xuXG4gIC8vIE9yaWVudGF0aW9uIG1lZGlhIHF1ZXJpZXMgaGF2ZSBhIHVuaXF1ZSBzeW50YXhcbiAgQGlmICRicCA9PSAnbGFuZHNjYXBlJyBvciAkYnAgPT0gJ3BvcnRyYWl0JyB7XG4gICAgQHJldHVybiAnKG9yaWVudGF0aW9uOiAjeyRicH0pJztcbiAgfVxuXG4gIC8vIElmIGEgYnJlYWtwb2ludCBuYW1lIGlzIGdpdmVuLCBnZXQgaXRzIHZhbHVlIGZyb20gdGhlICRicmVha3BvaW50cy8kYnJlYWtwb2ludHMtaGlkcGkgbWFwLlxuICBAaWYgdHlwZS1vZigkYnApID09ICdzdHJpbmcnIHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgIH1cbiAgICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMtaGlkcGksICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMtaGlkcGksICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQtbnVtYmVyKCRicmVha3BvaW50cy1oaWRwaSwgJGJwKTtcbiAgICAgICRoaWRwaTogdHJ1ZTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJGJwOiAwO1xuICAgICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogXCIjeyR2YWx9XCIgaXMgbm90IGRlZmluZWQgaW4geW91ciBgJGJyZWFrcG9pbnRzYCBvciBgJGJyZWFrcG9pbnRzLWhpZHBpYCBzZXR0aW5nLic7XG4gICAgfVxuICB9XG5cbiAgQGlmIG5vdCAkbmFtZSBhbmQgJGRpciA9PSAnb25seScge1xuICAgIEB3YXJuICdicmVha3BvaW50KCk6IE9ubHkgbmFtZWQgbWVkaWEgcXVlcmllcyBjYW4gaGF2ZSBhbiBgb25seWAgcmFuZ2UuJztcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ3VwJyBoYXZlIGEgbWluIGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAndXAnIHtcbiAgICAkYnAtbWluOiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICB9XG4gIC8vIE9ubHkgJ29ubHknIGFuZCAnZG93bicgaGF2ZSBhIG1heCBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ2Rvd24nIHtcbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIHZhbHVlLCB1c2UgaXQgYXMgbWF4IGxpbWl0LlxuICAgIEBpZiBub3QgJG5hbWUge1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgICB9XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgbmFtZWQsIHRoZSBtYXggbGltaXQgaXMgdGhlIGZvbGxvd2luZyBicmVha3BvaW50IC0gMXB4LlxuICAgIEBlbHNlIGlmICRicC1uZXh0IHtcbiAgICAgIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgICAgIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAgICAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksICRicC1uZXh0IC0gZGl2aWRlKDEsICRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0LW51bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dC1udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0LW51bWJlcikge1xuICAgICAgJG5leHQtbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0LW51bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZC1rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmQta2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZC1rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGEgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWJhc2Uge1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDtcbiAgfVxuXG4gIC8vIFN0cmlwIG1hcmdpbnMgZnJvbSB0aGUgbGFzdCBpdGVtIGluIHRoZSBtb2RhbFxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGp1c3RzIHRoZSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggLSBXaWR0aCBvZiB0aGUgbW9kYWwuIEdlbmVyYWxseSBhIHBlcmNlbnRhZ2UuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXgtd2lkdGggWyRyZXZlYWwtbWF4LXdpZHRoXSAtIE1heGltdW0gd2lkdGggb2YgdGhlIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC13aWR0aChcbiAgJHdpZHRoOiAkcmV2ZWFsLXdpZHRoLFxuICAkbWF4LXdpZHRoOiAkcmV2ZWFsLW1heC13aWR0aFxuKSB7XG4gIC8vIEV4dGVuZHMgbXVzdCBiZSBtYWRlIG91dHNpZGUgb2YgYnJlYWtwb2ludHMgZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBuZXdlciBTYXNzIHZlcnNpb25zIChsaWJzYXNzIHYzLjUpXG4gIEBleHRlbmQgJXJldmVhbC1jZW50ZXJlZDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIG1heC13aWR0aDogJG1heC13aWR0aDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtc2NyZWVuIG1vZGFsLCB3aGljaCBzdHJldGNoZXMgdGhlIGZ1bGwgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgd2luZG93LlxuQG1peGluIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuXG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXZlYWwge1xuXG4gIC8vLyBEaXNhYmxlcyB0aGUgc2Nyb2xsIHdoZW4gUmV2ZWFsIGlzIHNob3duIHRvIHByZXZlbnQgdGhlIGJhY2tncm91bmQgZnJvbSBzaGlmdGluZ1xuICBodG1sLmlzLXJldmVhbC1vcGVuIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgJi56Zi1oYXMtc2Nyb2xsIHtcbiAgICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICB9XG5cbiAgICBib2R5IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgfVxuICB9XG5cbiAgLy8gT3ZlcmxheVxuICAucmV2ZWFsLW92ZXJsYXkge1xuICAgIEBpbmNsdWRlIHJldmVhbC1vdmVybGF5O1xuICB9XG5cbiAgLy8gTW9kYWwgY29udGFpbmVyXG4gIC5yZXZlYWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlO1xuICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgkcmV2ZWFsLXdpZHRoKTtcblxuICAgIC8vIFJlbW92ZSBwYWRkaW5nXG4gICAgJi5jb2xsYXBzZSB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC8vIFNpemluZyBjbGFzc2VzXG4gICAgJi50aW55ICB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCgzMCUpOyB9XG4gICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg1MCUpOyB9XG4gICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC13aWR0aCg5MCUpOyB9XG5cbiAgICAvLyBGdWxsLXNjcmVlbiBtb2RlXG4gICAgJi5mdWxsIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgJi53aXRob3V0LW92ZXJsYXkge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbkBtaXhpbiBmb3VuZGF0aW9uLW5vcm1hbGl6ZSgpIHtcbiAgLyohIG5vcm1hbGl6ZS5jc3MgdjguMC4wIHwgTUlUIExpY2Vuc2UgfCBnaXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcyAqL1xuXG4gIC8vIERvY3VtZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgbGluZSBoZWlnaHQgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBQcmV2ZW50IGFkanVzdG1lbnRzIG9mIGZvbnQgc2l6ZSBhZnRlciBvcmllbnRhdGlvbiBjaGFuZ2VzIGluIGlPUy5cblxuICBodG1sIHtcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxuICB9XG5cbiAgLy8gU2VjdGlvbnNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIG1hcmdpbiBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgZm9udCBzaXplIGFuZCBtYXJnaW4gb24gYGgxYCBlbGVtZW50cyB3aXRoaW4gYHNlY3Rpb25gIGFuZFxuICAvLyBgYXJ0aWNsZWAgY29udGV4dHMgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgU2FmYXJpLlxuXG4gIGgxIHtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBtYXJnaW46IDAuNjdlbSAwO1xuICB9XG5cbiAgLy8gR3JvdXBpbmcgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIEZpcmVmb3guXG4gIC8vIDIuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UgYW5kIElFLlxuXG4gIGhyIHtcbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDsgLy8gMVxuICAgIGhlaWdodDogMDsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlOyAvLyAyXG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgcHJlIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBvbiBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG5cbiAgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAvLyAxLiBSZW1vdmUgdGhlIGJvdHRvbSBib3JkZXIgaW4gQ2hyb21lIDU3LVxuICAvLyAyLiBBZGQgdGhlIGNvcnJlY3QgdGV4dCBkZWNvcmF0aW9uIGluIENocm9tZSwgRWRnZSwgSUUsIE9wZXJhLCBhbmQgU2FmYXJpLlxuXG4gIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAwOyAvLyAxXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIERpc2FibGUgb3V0bGluZSB3aGVuIGludGVudCBpcyBjbGVhcmx5IG1vdXNlIGFuZCB0b3VjaFxuICBbZGF0YS13aGF0aW50ZW50PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJ0b3VjaFwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwibW91c2VcIl0sXG4gIFtkYXRhLXdoYXRpbnB1dD1cInRvdWNoXCJdIHtcbiAgICAqLCAqOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZSBpT1MgY2FsbG91dHMgd2hlbiBkcmFnZ2FibGUgaXMgZmFsc2VcbiAgW2RyYWdnYWJsZT1mYWxzZV0ge1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLWNvbG9yLWxpdGVyYWxzLCBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4vLy8vXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vLyBGb250IHNpemUgYXR0cmlidXRlIGFwcGxpZWQgdG8gYDxodG1sPmAgYW5kIGA8Ym9keT5gLiBXZSB1c2UgMTAwJSBieSBkZWZhdWx0IHNvIHRoZSB2YWx1ZSBpcyBpbmhlcml0ZWQgZnJvbSB0aGUgdXNlcidzIGJyb3dzZXIgc2V0dGluZ3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWZvbnQtc2l6ZTogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB3aWR0aCBvZiB5b3VyIHNpdGUuIFVzZWQgYnkgdGhlIGdyaWQgdG8gZGV0ZXJtaW5lIHJvdyB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgYWxsIHR5cGUuIGAkZ2xvYmFsLWxpbmVoZWlnaHRgIGlzIDI0cHggd2hpbGUgYCRnbG9iYWwtZm9udC1zaXplYCBpcyAxNnB4XG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNSAhZGVmYXVsdDtcblxuLy8vIENvbG9ycyB1c2VkIGZvciBidXR0b25zLCBjYWxsb3V0cywgbGlua3MsIGV0Yy4gVGhlcmUgbXVzdCBhbHdheXMgYmUgYSBjb2xvciBjYWxsZWQgYHByaW1hcnlgLlxuLy8vIEB0eXBlIE1hcFxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBcInByaW1hcnlcIjogIzE3NzliYSxcbiAgXCJzZWNvbmRhcnlcIjogIzc2NzY3NixcbiAgXCJzdWNjZXNzXCI6ICMzYWRiNzYsXG4gIFwid2FybmluZ1wiOiAjZmZhZTAwLFxuICBcImFsZXJ0XCI6ICNjYzRiMzcsXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbGlnaHQgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTYgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBtZWRpdW0gZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJG1lZGl1bS1ncmF5OiAjY2FjYWNhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgZGFyayBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZGFyay1ncmF5OiAjOGE4YThhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgYmxhY2sgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibGFjazogIzBhMGEwYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIHdoaXRlIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kd2hpdGU6ICNmZWZlZmUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIENvbG9yXG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0YWNrIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIExpc3RcbiRib2R5LWZvbnQtZmFtaWx5OiAnSGVsdmV0aWNhIE5ldWUnLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBzYWZlIHBhZGRpbmcgb24gdGhlIGJvZHkgZm9yIG5vbi1yZWN0YW5ndWxhciBkZXZpY2VzIChpLmUuIHBob25lcyB3aXRoIG5vdGNoZXMpXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktc2FmZS1wYWRkaW5nOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBAaWYgKCRib2R5LXNhZmUtcGFkZGluZykge1xuICAgICAgLy8gdXNpbmcgZW52aXJvbm1lbnQgdmFyaWFibGVzIHRvIGFjY291bnQgZm9yIG5vbi1yZWN0YW5ndWxhciBkaXNwbGF5cyBlLmcuIHBob25lcyB3aXRoIG5vdGNoZXNcbiAgICAgIHBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcCk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiBlbnYoc2FmZS1hcmVhLWluc2V0LWJvdHRvbSk7XG4gICAgICBwYWRkaW5nLWxlZnQ6IGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCk7XG4gICAgfVxuXG4gICAgYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cbiAgICBAaWYgKCRib2R5LWFudGlhbGlhc2VkKSB7XG4gICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICAvLyBHZXQgcmlkIG9mIGdhcCB1bmRlciBpbWFnZXMgYnkgbWFraW5nIHRoZW0gZGlzcGxheTogaW5saW5lLWJsb2NrOyBieSBkZWZhdWx0XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAvLyBHcmlkIGRlZmF1bHRzIHRvIGdldCBpbWFnZXMgYW5kIGVtYmVkcyB0byB3b3JrIHByb3Blcmx5XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICAtbXMtaW50ZXJwb2xhdGlvbi1tb2RlOiBiaWN1YmljO1xuICB9XG5cbiAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gIHRleHRhcmVhIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLWhlaWdodDogNTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIGFyZSAxMDAlIHdpZHRoIGJ5IGRlZmF1bHRcbiAgc2VsZWN0IHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gU3R5bGVzIEdvb2dsZSBNYXBzIGFuZCBNYXBRdWVzdCBlbWJlZHMgcHJvcGVybHlcbiAgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1pZHNcbiAgLm1hcF9jYW52YXMsXG4gIC5tcWEtZGlzcGxheSB7XG4gICAgaW1nLFxuICAgIGVtYmVkLFxuICAgIG9iamVjdCB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCA8YnV0dG9uPiBzdHlsZXMgY3JlYXRlZCBieSBtb3N0IGJyb3dzZXJzXG4gIGJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY3Vyc29yOiAkZ2xvYmFsLWJ1dHRvbi1jdXJzb3I7XG4gIH1cblxuICAvLyBQcmV2ZW50IHRleHQgb3ZlcmZsb3cgb24gcHJlXG4gIHByZSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB9XG5cbiAgLy8gTWFrZSByZXNldCBpbmhlcml0IGZvbnQtZmFtaWx5IGluc3RlYWQgb2Ygc2V0dGluZ3Mgc2Fucy1zZXJpZlxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBJbnRlcm5hbCBjbGFzc2VzIHRvIHNob3cvaGlkZSBlbGVtZW50cyBpbiBKYXZhU2NyaXB0XG4gIC5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmlzLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIvLyAgRm91bmRhdGlvbiBmb3IgU2l0ZXMgU2V0dGluZ3NcclxuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbi8vXHJcbi8vICBUYWJsZSBvZiBDb250ZW50czpcclxuLy9cclxuLy8gICAxLiBHbG9iYWxcclxuLy8gICAyLiBCcmVha3BvaW50c1xyXG4vLyAgIDMuIFRoZSBHcmlkXHJcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XHJcbi8vICAgNS4gVHlwb2dyYXBoeSBIZWxwZXJzXHJcbi8vICAgNi4gQWJpZGVcclxuLy8gICA3LiBBY2NvcmRpb25cclxuLy8gICA4LiBBY2NvcmRpb24gTWVudVxyXG4vLyAgIDkuIEJhZGdlXHJcbi8vICAxMC4gQnJlYWRjcnVtYnNcclxuLy8gIDExLiBCdXR0b25cclxuLy8gIDEyLiBCdXR0b24gR3JvdXBcclxuLy8gIDEzLiBDYWxsb3V0XHJcbi8vICAxNC4gQ2FyZFxyXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxyXG4vLyAgMTYuIERyaWxsZG93blxyXG4vLyAgMTcuIERyb3Bkb3duXHJcbi8vICAxOC4gRHJvcGRvd24gTWVudVxyXG4vLyAgMTkuIEZvcm1zXHJcbi8vICAyMC4gTGFiZWxcclxuLy8gIDIxLiBNZWRpYSBPYmplY3RcclxuLy8gIDIyLiBNZW51XHJcbi8vICAyMy4gTWV0ZXJcclxuLy8gIDI0LiBPZmYtY2FudmFzXHJcbi8vICAyNS4gT3JiaXRcclxuLy8gIDI2LiBQYWdpbmF0aW9uXHJcbi8vICAyNy4gUHJvZ3Jlc3MgQmFyXHJcbi8vICAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAgMjkuIFJldmVhbFxyXG4vLyAgMzAuIFNsaWRlclxyXG4vLyAgMzEuIFN3aXRjaFxyXG4vLyAgMzIuIFRhYmxlXHJcbi8vICAzMy4gVGFic1xyXG4vLyAgMzQuIFRodW1ibmFpbFxyXG4vLyAgMzUuIFRpdGxlIEJhclxyXG4vLyAgMzYuIFRvb2x0aXBcclxuLy8gIDM3LiBUb3AgQmFyXHJcblxyXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xyXG5cclxuLy8gMS4gR2xvYmFsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XHJcbiRnbG9iYWwtd2lkdGg6IHJlbS1jYWxjKDEyMDApO1xyXG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcclxuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxyXG4gIHByaW1hcnk6ICMxNzc5YmEsXHJcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxyXG4gIHN1Y2Nlc3M6ICMzYWRiNzYsXHJcbiAgd2FybmluZzogI2ZmYWUwMCxcclxuICBhbGVydDogI2NjNGIzNyxcclxuKTtcclxuJGxpZ2h0LWdyYXk6ICNlNmU2ZTY7XHJcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcclxuJGRhcmstZ3JheTogIzhhOGE4YTtcclxuJGJsYWNrOiAjMGEwYTBhO1xyXG4kd2hpdGU6ICNmZWZlZmU7XHJcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrO1xyXG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xyXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZTtcclxuJGdsb2JhbC1tYXJnaW46IDFyZW07XHJcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWw7XHJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XHJcbiRnbG9iYWwtcmFkaXVzOiAwO1xyXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHI7XHJcbiRnbG9iYWwtZmxleGJveDogZmFsc2U7XHJcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcclxuXHJcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcclxuXHJcbi8vIDIuIEJyZWFrcG9pbnRzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWtwb2ludHM6IChcclxuICBzbWFsbDogMCxcclxuICBtZWRpdW06IDY0MHB4LFxyXG4gIGxhcmdlOiAxMDI0cHgsXHJcbiAgeGxhcmdlOiAxMjAwcHgsXHJcbiAgeHhsYXJnZTogMTQ0MHB4XHJcbik7XHJcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcclxuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSk7XHJcblxyXG4vLyAzLiBUaGUgR3JpZFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGdyaWQtcm93LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xyXG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXHJcbiAgc21hbGw6IDIwcHgsXHJcbiAgbWVkaXVtOiAzMHB4LFxyXG4pO1xyXG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcclxuJGJsb2NrLWdyaWQtbWF4OiA4O1xyXG5cclxuLy8gNC4gQmFzZSBUeXBvZ3JhcGh5XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XHJcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XHJcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlO1xyXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRoZWFkZXItc3R5bGVzOiAoXHJcbiAgc21hbGw6IChcclxuICAgICdoMSc6ICgnZm9udC1zaXplJzogMjQpLFxyXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXHJcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcclxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMTgpLFxyXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXHJcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcclxuICApLFxyXG4gIG1lZGl1bTogKFxyXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXHJcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDQwKSxcclxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxyXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXHJcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcclxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxyXG4gICksXHJcbik7XHJcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xyXG4kaGVhZGVyLXNtYWxsLWZvbnQtY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAxLjY7XHJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xyXG4kY29kZS1jb2xvcjogJGJsYWNrO1xyXG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xyXG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XHJcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xyXG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcclxuJGxpc3QtbGluZWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XHJcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XHJcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xyXG4kbGlzdC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcclxuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbTtcclxuJGRlZm5saXN0LXRlcm0td2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XHJcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpO1xyXG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjaXRlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJGNpdGUtcHNldWRvLWNvbnRlbnQ6ICdcXDIwMTQgXFwwMDIwJztcclxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xyXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XHJcbiRrZXlzdHJva2UtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRrZXlzdHJva2UtcGFkZGluZzogcmVtLWNhbGMoMiA0IDApO1xyXG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2s7XHJcblxyXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcclxuJGxlYWQtbGluZWhlaWdodDogMS42O1xyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcclxuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbTtcclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XHJcbiRzdGF0LWZvbnQtc2l6ZTogMi41cmVtO1xyXG5cclxuLy8gNi4gQWJpZGVcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRhYmlkZS1pbnB1dHM6IHRydWU7XHJcbiRhYmlkZS1sYWJlbHM6IHRydWU7XHJcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XHJcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1jb2xvcjogZ2V0LWNvbG9yKGFsZXJ0KTtcclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcblxyXG4vLyA3LiBBY2NvcmRpb25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XHJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xyXG5cclxuLy8gOC4gQWNjb3JkaW9uIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplOiA2cHg7XHJcblxyXG4vLyA5LiBCYWRnZVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYmFkZ2UtY29sb3I6ICR3aGl0ZTtcclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtO1xyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtO1xyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XHJcblxyXG4vLyAxMC4gQnJlYWRjcnVtYnNcclxuLy8gLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW07XHJcbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g6IHRydWU7XHJcblxyXG4vLyAxMS4gQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbTtcclxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xyXG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xyXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XHJcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcclxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kYnV0dG9uLXNpemVzOiAoXHJcbiAgdGlueTogMC42cmVtLFxyXG4gIHNtYWxsOiAwLjc1cmVtLFxyXG4gIGRlZmF1bHQ6IDAuOXJlbSxcclxuICBsYXJnZTogMS4yNXJlbSxcclxuKTtcclxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XHJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCU7XHJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcclxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dDtcclxuXHJcbi8vIDEyLiBCdXR0b24gR3JvdXBcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbTtcclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweDtcclxuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XHJcbiRidXR0b25ncm91cC1leHBhbmQtbWF4OiA2O1xyXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWU7XHJcblxyXG4vLyAxMy4gQ2FsbG91dFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JTtcclxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDA7XHJcbiRjYWxsb3V0LXBhZGRpbmc6IDFyZW07XHJcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJTtcclxuXHJcbi8vIDE0LiBDYXJkXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRjYXJkLWJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmF5O1xyXG4kY2FyZC1zaGFkb3c6IG5vbmU7XHJcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kY2FyZC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRjYXJkLW1hcmdpbjogJGdsb2JhbC1tYXJnaW47XHJcblxyXG4vLyAxNS4gQ2xvc2UgQnV0dG9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wO1xyXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcclxuICBzbWFsbDogMC42NnJlbSxcclxuICBtZWRpdW06IDFyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcclxuICBzbWFsbDogMC4zM2VtLFxyXG4gIG1lZGl1bTogMC41cmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tc2l6ZTogKFxyXG4gIHNtYWxsOiAxLjVlbSxcclxuICBtZWRpdW06IDJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XHJcbiRjbG9zZWJ1dHRvbi1jb2xvcjogJGRhcmstZ3JheTtcclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2s7XHJcblxyXG4vLyAxNi4gRHJpbGxkb3duXHJcbi8vIC0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcmlsbGRvd24tdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcclxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWU7XHJcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcclxuJGRyaWxsZG93bi1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcblxyXG4vLyAxNy4gRHJvcGRvd25cclxuLy8gLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd24tcGFkZGluZzogMXJlbTtcclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XHJcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW07XHJcbiRkcm9wZG93bi13aWR0aDogMzAwcHg7XHJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kZHJvcGRvd24tc2l6ZXM6IChcclxuICB0aW55OiAxMDBweCxcclxuICBzbWFsbDogMjAwcHgsXHJcbiAgbGFyZ2U6IDQwMHB4LFxyXG4pO1xyXG5cclxuLy8gMTguIERyb3Bkb3duIE1lbnVcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRkcm9wZG93bm1lbnUtYXJyb3dzOiB0cnVlO1xyXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yO1xyXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcclxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xyXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcblxyXG4vLyAxOS4gRm9ybXNcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpO1xyXG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XHJcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrO1xyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XHJcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XHJcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjaztcclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbTtcclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjaztcclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjg7XHJcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5O1xyXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xyXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0O1xyXG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XHJcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xyXG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XHJcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZDtcclxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xyXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyMC4gTGFiZWxcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kbGFiZWwtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xyXG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRsYWJlbC1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XHJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcclxuJGxhYmVsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyMS4gTWVkaWEgT2JqZWN0XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcclxuXHJcbi8vIDIyLiBNZW51XHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kbWVudS1tYXJnaW46IDA7XHJcbiRtZW51LW1hcmdpbi1uZXN0ZWQ6IDFyZW07XHJcbiRtZW51LWl0ZW0tcGFkZGluZzogMC43cmVtIDFyZW07XHJcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGU7XHJcbiRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KTtcclxuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xyXG4kbWVudS1ib3JkZXI6ICRsaWdodC1ncmF5O1xyXG5cclxuLy8gMjMuIE1ldGVyXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG1ldGVyLWhlaWdodDogMXJlbTtcclxuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRtZXRlci1maWxsLWdvb2Q6ICRzdWNjZXNzLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xyXG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcclxuXHJcbi8vIDI0LiBPZmYtY2FudmFzXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xyXG4kb2ZmY2FudmFzLXNpemVzOiAyNTBweDtcclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplOiAyNTBweDtcclxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogMjUwcHg7XHJcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KTtcclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTtcclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTA7XHJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTtcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcclxuJG9mZmNhbnZhcy1maXhlZC1yZXZlYWw6IHRydWU7XHJcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XHJcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XHJcblxyXG4vLyAyNS4gT3JiaXRcclxuLy8gLS0tLS0tLS0tXHJcblxyXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW07XHJcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xyXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcclxuXHJcbi8vIDI2LiBQYWdpbmF0aW9uXHJcbi8vIC0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcclxuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcclxuJHBhZ2luYXRpb24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZTtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xyXG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xyXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO1xyXG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xyXG5cclxuLy8gMjcuIFByb2dyZXNzIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kcHJvZ3Jlc3MtaGVpZ2h0OiAxcmVtO1xyXG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAyOC4gUmVzcG9uc2l2ZSBFbWJlZFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xyXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcclxuICBkZWZhdWx0OiA0IGJ5IDMsXHJcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcclxuKTtcclxuXHJcbi8vIDI5LiBSZXZlYWxcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4O1xyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XHJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xyXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpO1xyXG5cclxuLy8gMzAuIFNsaWRlclxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XHJcbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XHJcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XHJcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRzbGlkZXItZmlsbC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xyXG4kc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAzMS4gU3dpdGNoXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcclxuJHN3aXRjaC1oZWlnaHQ6IDJyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW07XHJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xyXG5cclxuLy8gMzIuIFRhYmxlXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJHRhYmxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcclxuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XHJcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XHJcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICsgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XHJcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtc3RyaXBlOiBldmVuO1xyXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XHJcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1mb290LWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xyXG5cclxuLy8gMzMuIFRhYnNcclxuLy8gLS0tLS0tLS1cclxuXHJcbiR0YWItbWFyZ2luOiAwO1xyXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHRhYi1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xyXG4kdGFiLWV4cGFuZC1tYXg6IDY7XHJcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xyXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XHJcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xyXG5cclxuLy8gMzQuIFRodW1ibmFpbFxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGh1bWJuYWlsLWJvcmRlcjogc29saWQgNHB4ICR3aGl0ZTtcclxuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcclxuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSk7XHJcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcclxuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMzUuIFRpdGxlIEJhclxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xyXG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcclxuJHRpdGxlYmFyLXBhZGRpbmc6IDAuNXJlbTtcclxuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXk7XHJcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XHJcblxyXG4vLyAzNi4gVG9vbHRpcFxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XHJcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcclxuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xyXG4kdG9vbHRpcC1jb2xvcjogJHdoaXRlO1xyXG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XHJcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XHJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcblxyXG4vLyAzNy4gVG9wIEJhclxyXG4vLyAtLS0tLS0tLS0tLVxyXG5cclxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XHJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XHJcbiR0b3BiYXItaW5wdXQtd2lkdGg6IDIwMHB4O1xyXG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xyXG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbi8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtYnAtdmFsdWU6IG51bGw7XG5cbi8vLyBDcmVhdGVzIGFuIGlubmVyIGJveC1zaGFkb3cgZm9yIG9ubHkgb25lIHNpZGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpZGUgLSBTaWRlIHRoZSBzaGFkb3cgaXMgc3VwcG9zZWQgdG8gYXBwZWFyLiBDYW4gYmUgYHRvcGAsIGBsZWZ0YCwgYHJpZ2h0YCBvciBgYm90dG9tYC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgLSBXaWR0aCBmb3IgdGhlIHRhcmdldCBzaWRlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIG9mIHRoZSBzaGFkb3cuXG5AbWl4aW4gaW5uZXItc2lkZS1zaGFkb3coXG4gICRzaWRlOiBib3R0b20sXG4gICRzaXplOiAyMHB4LFxuICAkY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KVxuKSB7XG5cbiAgJGhlbHBlcjogcm91bmQoJHNpemUgKiAwLjY1KTtcblxuICBAaWYgKCRzaWRlID09IHRvcCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgJGhlbHBlciAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSBsZWZ0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IHJpZ2h0KSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgKC0xKSokaGVscGVyIDAgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gYm90dG9tKSB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAoLTEpKiRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIENTUyB0cmlhbmdsZSwgd2hpY2ggY2FuIGJlIHVzZWQgZm9yIGRyb3Bkb3duIGFycm93cywgZHJvcGRvd24gcGlwcywgYW5kIG1vcmUuIFVzZSB0aGlzIG1peGluIGluc2lkZSBhIGAmOjpiZWZvcmVgIG9yIGAmOjphZnRlcmAgc2VsZWN0b3IsIHRvIGF0dGFjaCB0aGUgdHJpYW5nbGUgdG8gYW4gZXhpc3RpbmcgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdHJpYW5nbGUtc2l6ZSAtIFdpZHRoIG9mIHRoZSB0cmlhbmdsZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkdHJpYW5nbGUtY29sb3IgLSBDb2xvciBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHJpYW5nbGUtZGlyZWN0aW9uIC0gRGlyZWN0aW9uIHRoZSB0cmlhbmdsZSBwb2ludHMuIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC5cbkBtaXhpbiBjc3MtdHJpYW5nbGUoXG4gICR0cmlhbmdsZS1zaXplLFxuICAkdHJpYW5nbGUtY29sb3IsXG4gICR0cmlhbmdsZS1kaXJlY3Rpb25cbikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcblxuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6ICR0cmlhbmdsZS1zaXplO1xuXG4gIGNvbnRlbnQ6ICcnO1xuXG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBkb3duKSB7XG4gICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdXApIHtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gbGVmdCkge1xuICAgIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgbWVudSBpY29uIHdpdGggYSBzZXQgd2lkdGgsIGhlaWdodCwgbnVtYmVyIG9mIGJhcnMsIGFuZCBjb2xvcnMuIFRoZSBtaXhpbiB1c2VzIHRoZSBoZWlnaHQgb2YgdGhlIGljb24gYW5kIHRoZSB3ZWlnaHQgb2YgdGhlIGJhcnMgdG8gZGV0ZXJtaW5lIHNwYWNpbmcuIDxkaXYgY2xhc3M9XCJkb2NzLWV4YW1wbGUtYnVyZ2VyXCI+PC9kaXY+XG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvci1ob3ZlciBbJGRhcmstZ3JheV0gLSBDb2xvciB0byB1c2Ugd2hlbiB0aGUgaWNvbiBpcyBob3ZlcmVkIG92ZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCBbMjBweF0gLSBXaWR0aCBvZiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGhlaWdodCBbMTZweF0gLSBIZWlnaHQgb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3ZWlnaHQgWzJweF0gLSBIZWlnaHQgb2YgaW5kaXZpZHVhbCBiYXJzIGluIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFycyBbM10gLSBOdW1iZXIgb2YgYmFycyBpbiB0aGUgaWNvbi5cbkBtaXhpbiBoYW1idXJnZXIoXG4gICRjb2xvcjogJGJsYWNrLFxuICAkY29sb3ItaG92ZXI6ICRkYXJrLWdyYXksXG4gICR3aWR0aDogMjBweCxcbiAgJGhlaWdodDogMTZweCxcbiAgJHdlaWdodDogMnB4LFxuICAkYmFyczogM1xuKSB7XG4gIC8vIGJveC1zaGFkb3cgQ1NTIG91dHB1dFxuICAkc2hhZG93OiAoKTtcbiAgJGhvdmVyLXNoYWRvdzogKCk7XG5cbiAgLy8gU3BhY2luZyBiZXR3ZWVuIGJhcnMgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgdG90YWwgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIGVhY2ggYmFyXG4gICRzcGFjaW5nOiBkaXZpZGUoJGhlaWdodCAtICgkd2VpZ2h0ICogJGJhcnMpLCAkYmFycyAtIDEpO1xuXG4gIEBpZiB1bml0KCRzcGFjaW5nKSA9PSAncHgnIHtcbiAgICAkc3BhY2luZzogZmxvb3IoJHNwYWNpbmcpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAkc2hhZG93OiBhcHBlbmQoJHNoYWRvdywgMCAkb2Zmc2V0IDAgJGNvbG9yLCBjb21tYSk7XG4gIH1cblxuICAvLyBJY29uIGNvbnRhaW5lclxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gSWNvbiBiYXJzXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6ICR3ZWlnaHQ7XG5cbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVcbiAgQGlmICRjb2xvci1ob3ZlciB7XG4gICAgLy8gR2VuZXJhdGUgQ1NTXG4gICAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkYmFycyB7XG4gICAgICAkb2Zmc2V0OiAoJHdlaWdodCArICRzcGFjaW5nKSAqICgkaSAtIDEpO1xuICAgICAgJGhvdmVyLXNoYWRvdzogYXBwZW5kKCRob3Zlci1zaGFkb3csIDAgJG9mZnNldCAwICRjb2xvci1ob3ZlciwgY29tbWEpO1xuICAgIH1cblxuICAgICY6aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcbiAgICAgIGJveC1zaGFkb3c6ICRob3Zlci1zaGFkb3c7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGEgZG93bndhcmQtZmFjaW5nIHRyaWFuZ2xlIGFzIGEgYmFja2dyb3VuZCBpbWFnZSB0byBhbiBlbGVtZW50LiBUaGUgaW1hZ2UgaXMgZm9ybWF0dGVkIGFzIGFuIFNWRywgbWFraW5nIGl0IGVhc3kgdG8gY2hhbmdlIHRoZSBjb2xvci4gQmVjYXVzZSBJbnRlcm5ldCBFeHBsb3JlciBkb2Vzbid0IHN1cHBvcnQgZW5jb2RlZCBTVkdzIGFzIGJhY2tncm91bmQgaW1hZ2VzLCBhIFBORyBmYWxsYmFjayBpcyBhbHNvIGluY2x1ZGVkLlxuLy8vIFRoZXJlIGFyZSB0d28gUE5HIGZhbGxiYWNrczogYSBibGFjayB0cmlhbmdsZSBhbmQgYSB3aGl0ZSB0cmlhbmdsZS4gVGhlIG9uZSB1c2VkIGRlcGVuZHMgb24gdGhlIGxpZ2h0bmVzcyBvZiB0aGUgaW5wdXQgY29sb3IuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRibGFja10gLSBDb2xvciB0byB1c2UgZm9yIHRoZSB0cmlhbmdsZS5cbkBtaXhpbiBiYWNrZ3JvdW5kLXRyaWFuZ2xlKCRjb2xvcjogJGJsYWNrKSB7XG4gICRyZWQgICA6IHJvdW5kKGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcInJlZFwiLCAkc3BhY2U6IHJnYikpO1xuICAkZ3JlZW4gOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJncmVlblwiLCAkc3BhY2U6IHJnYikpO1xuICAkYmx1ZSAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJibHVlXCIsICRzcGFjZTogcmdiKSk7XG4gICRyZ2IgICA6ICdyZ2IlMjgjeyRyZWR9LCAjeyRncmVlbn0sICN7JGJsdWV9JTI5JztcblxuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZlcnNpb249XCIxLjFcIiB3aWR0aD1cIjMyXCIgaGVpZ2h0PVwiMjRcIiB2aWV3Qm94PVwiMCAwIDMyIDI0XCI+PHBvbHlnb24gcG9pbnRzPVwiMCwwIDMyLDAgMTYsMjRcIiBzdHlsZT1cImZpbGw6ICN7JHJnYn1cIj48L3BvbHlnb24+PC9zdmc+Jyk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMFxcMCkge1xuICAgIEBpZiBjb2xvci5jaGFubmVsKCRjb2xvciwgXCJsaWdodG5lc3NcIiwgJHNwYWNlOiBoc2wpIDwgNjAlIHtcbiAgICAgIC8vIFdoaXRlIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBSXBKUkVGVWVOckVrY2tOZ0RBTUJCZlJrRXQwT2JSQkJkc0dYVURnbVFmSzRYaEgybThjelFBQXkyN1IzdHN3NFFmZTJ4OHVPTzZvWUxiNkdsT29yM0dGK3N3VVJBT21VSitSd3RFSnM5V3ZUR0VZeEJYcUkxTVFBWmhDZlVRS1J6RE1WaitUd3JBSVY2anZTVUVrWUFyMUxTa2N5VEJiL1YrS1lmWDd4QWV1c3Ezc0xEdEdIM2tFR0FDUFdJZmxOWmZoUlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgLy8gQmxhY2sgdHJpYW5nbGVcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFNQkpSRUZVZU5yRWxsc09oQ0FNUlZzekM5SWx6VTdLQ21WSFRKc29NV1lNVXRweXY5QmdidVhRQjVaU2RnQllZWTR5Y2dCaXZrOEtZRnNRTWZNaVRUQlA0bzNuVXpDS3pPYWJMSmJMeTIvZzMxZXZHa0FnaW5SNC9aZWdLSDVxWDNiSkNzY0EzdDB4M2tnTzV0UUZ5aGhGZjUweFJxRkxieU1VTkpRemd5akdTL3dnQ3B2S3FrUkJwdVdyRTRWOWQrMUU0ZFBVWHFJZzEwN1NRT0UvMkRSUXhNd1REeWdJSW5WREVUOVQzbENvai82ai9WQ21HalpPbDJsS3BaOEFBd0RRUDd6SWltREdGUUFBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQXBwbGllcyB0aGUgbWljcm8gY2xlYXJmaXggaGFjayBwb3B1bGFyaXplZCBieSBOaWNvbGFzIEdhbGxhZ2hlci4gSW5jbHVkZSB0aGlzIG1peGluIG9uIGEgY29udGFpbmVyIGlmIGl0cyBjaGlsZHJlbiBhcmUgYWxsIGZsb2F0ZWQsIHRvIGdpdmUgdGhlIGNvbnRhaW5lciBhIHByb3BlciBoZWlnaHQuXG4vLy8gVGhlIGNsZWFyZml4IGlzIGF1Z21lbnRlZCB3aXRoIHNwZWNpZmljIHN0eWxlcyB0byBwcmV2ZW50IGJvcmRlcnMgaW4gZmxleGJveCBlbnZpcm9ubWVudHNcbi8vLyBAbGluayBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay8gTWljcm8gQ2xlYXJmaXggSGFja1xuLy8vIEBsaW5rIGh0dHA6Ly9kYW5pc2FkZXNpZ25lci5jb20vYmxvZy9mbGV4Ym94LWNsZWFyLWZpeC1wc2V1ZG8tZWxlbWVudHMvIEZsZXhib3ggZml4XG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOjpiZWZvcmUsXG4gICY6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBjb250ZW50OiAnICc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTtcbiAgICB9XG4gIH1cblxuICAmOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cblxuLy8vIEFkZHMgQ1NTIGZvciBhIFwicXVhbnRpdHkgcXVlcnlcIiBzZWxlY3RvciB0aGF0IGF1dG9tYXRpY2FsbHkgc2l6ZXMgZWxlbWVudHMgYmFzZWQgb24gaG93IG1hbnkgdGhlcmUgYXJlIGluc2lkZSBhIGNvbnRhaW5lci5cbi8vLyBAbGluayBodHRwOi8vYWxpc3RhcGFydC5jb20vYXJ0aWNsZS9xdWFudGl0eS1xdWVyaWVzLWZvci1jc3MgUXVhbnRpdHkgUXVlcmllcyBmb3IgQ1NTXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCAtIE1heGltdW0gbnVtYmVyIG9mIGl0ZW1zIHRvIGRldGVjdC4gVGhlIGhpZ2hlciB0aGlzIG51bWJlciBpcywgdGhlIG1vcmUgQ1NTIHRoYXQncyByZXF1aXJlZCB0byBjb3ZlciBlYWNoIG51bWJlciBvZiBpdGVtcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRlbGVtIFtsaV0gLSBUYWcgdG8gdXNlIGZvciBzaWJsaW5nIHNlbGVjdG9ycy5cbkBtaXhpbiBhdXRvLXdpZHRoKCRtYXgsICRlbGVtOiBsaSkge1xuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRtYXgge1xuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkLFxuICAgICY6bnRoLWxhc3QtY2hpbGQoI3skaX0pOmZpcnN0LWNoaWxkIH4gI3skZWxlbX0ge1xuICAgICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRpKSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWUgb3IgKCRtZWRpYS1xdWVyaWVzID09ICdmb3ItbGlzdHMnIGFuZCAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdCkpIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSB0aGUgYEBjb250ZW50YCBwYXNzZWQgdG8gdGhlIG1peGluIHdpdGggYSB2YWx1ZSBgJC16Zi1icC12YWx1ZWAgcmVsYXRlZCB0byBhIGJyZWFrcG9pbnQsIGRlcGVuZGluZyBvbiB0aGUgYCRuYW1lYCBwYXJhbWV0ZXI6XG4vLy8gLSBGb3IgYSBzaW5nbGUgdmFsdWUsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGlzIHZhbHVlLlxuLy8vIC0gRm9yIGEgYnJlYWtwb2ludCBuYW1lLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAuXG4vLy8gLSBGb3IgXCJhdXRvXCIsIGAkLXpmLWJwLXZhbHVlYCBpcyB0aGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlIGluIGAkbWFwYCBhbmQgaXMgcGFzc2VkIHRvIGBAY29udGVudGAsIHdoaWNoIGlzIG1hZGUgcmVzcG9uc2l2ZSBmb3IgZWFjaCBicmVha3BvaW50IG9mIGAkbWFwYC5cbi8vLyBAcGFyYW0ge051bWJlcnxBcnJheXxLZXl3b3JkfSAkbmFtZSBbYXV0b10gLSBTaW5nbGUgdmFsdWUsIGJyZWFrcG9pbnQgbmFtZSwgb3IgbGlzdCBvZiBicmVha3BvaW50IG5hbWVzIHRvIHVzZS4gXCJhdXRvXCIgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBNYXAgb2YgYnJlYWtwb2ludHMgYW5kIHZhbHVlcyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLlxuQG1peGluIC16Zi1icmVha3BvaW50LXZhbHVlKFxuICAkbmFtZTogYXV0byxcbiAgJG1hcDogbnVsbFxuKSB7XG4gIEBpZiAkbmFtZSA9PSBhdXRvIGFuZCB0eXBlLW9mKCRtYXApID09ICdtYXAnIHtcbiAgICAvLyBcImF1dG9cIlxuICAgIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGspIHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJHYsICRtYXApIHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLy8gYnJlYWtwb2ludCBuYW1lXG4gICAgQGlmIHR5cGUtb2YoJG5hbWUpID09ICdzdHJpbmcnIHtcbiAgICAgICRicC12YWx1ZTogLXpmLWdldC1icC12YWwoJG1hcCwgJG5hbWUpO1xuICAgICAgQGlmICRicC12YWx1ZSAhPSBudWxsIHtcbiAgICAgICAgJG5hbWU6ICRicC12YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBicmVha3BvaW50IHZhbHVlXG4gICAgJC16Zi1icC12YWx1ZTogJG5hbWUgIWdsb2JhbDtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBGb250IGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgcGxhY2Vob2xkZXIgdGV4dCB3aXRoaW4gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgRm9udFxuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGZvY3VzZWQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgZm9jdXNlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAqIDAuNSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgaW5zaWRlIHRleHQgaW5wdXRzIHdoZW4gbm90IGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSkgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IG91dHNpZGUgdGV4dCBpbnB1dHMgd2hlbiBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdy1mb2N1czogMCAwIDVweCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDdXJzb3IgdG8gdXNlIHdoZW4gaG92ZXJpbmcgb3ZlciBhIGRpc2FibGVkIHRleHQgaW5wdXQuXG4vLy8gQHR5cGUgQ3Vyc29yXG4kaW5wdXQtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8vIFByb3BlcnRpZXMgdG8gdHJhbnNpdGlvbiBvbiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIHRoZSB1cC9kb3duIGJ1dHRvbnMgdGhhdCBDaHJvbWUgYW5kIEZpcmVmb3ggYWRkIHRvIGA8aW5wdXQgdHlwZT0nbnVtYmVyJz5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRpbnB1dC1udW1iZXItc3Bpbm5lcnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBSYWRpdXMgZm9yIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBmb3JtIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLWVsZW1lbnQge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGlucHV0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQ7XG4gIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3c7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS10ZXh0IHtcbiAgLy8gVGV4dCBpbnB1dHNcbiAgI3t0ZXh0LWlucHV0cygpfSxcbiAgdGV4dGFyZWEge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICB9XG5cbiAgLy8gVGV4dCBhcmVhc1xuICB0ZXh0YXJlYSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuXG4gICAgJltyb3dzXSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgaW5wdXQsXG4gIHRleHRhcmVhIHtcbiAgICAvLyBEaXNhYmxlZC9yZWFkb25seSBzdGF0ZVxuICAgICY6ZGlzYWJsZWQsXG4gICAgJltyZWFkb25seV0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9uIGJ1dHRvbi1saWtlIGlucHV0c1xuICBbdHlwZT0nc3VibWl0J10sXG4gIFt0eXBlPSdidXR0b24nXSB7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAkZm9ybS1idXR0b24tcmFkaXVzO1xuICB9XG5cbiAgLy8gUmVzZXQgTm9ybWFsaXplIHNldHRpbmcgY29udGVudC1ib3ggdG8gc2VhcmNoIGVsZW1lbnRzXG4gIGlucHV0W3R5cGU9J3NlYXJjaCddIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIC8vIE51bWJlciBpbnB1dCBzdHlsZXNcbiAgW3R5cGU9J251bWJlciddIHtcbiAgICBAaWYgbm90ICRpbnB1dC1udW1iZXItc3Bpbm5lcnMge1xuICAgICAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG5cbiAgICAgICY6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gICAgICAmOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUGxhY2Vob2xkZXIgdGV4dFxuICA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1jaGVja2JveCB7XG4gIFt0eXBlPSdmaWxlJ10sXG4gIFt0eXBlPSdjaGVja2JveCddLFxuICBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXQvbGFiZWwgc2libGluZ3NcbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbCxcbiAgW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcblxuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICZbZm9yXSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLy8gU3R5bGVzIGZvciBpbnB1dHMgaW5zaWRlIGxhYmVsc1xuICBsYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxuICBsYWJlbCA+IFt0eXBlPSdyYWRpbyddIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC8vIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoXG4gIFt0eXBlPSdmaWxlJ10ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBmb3JtIGxhYmVscy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGZvcm0gbGFiZWxzLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBtb3JlIHNwYWNlIGJldHdlZW4gdGhlIGxhYmVsIGFuZCBpdHMgaW5wdXQgZmllbGQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44ICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG5cbiAgZm9udC1zaXplOiAkZm9ybS1sYWJlbC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkZm9ybS1sYWJlbC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGZvcm0tbGFiZWwtY29sb3I7XG59XG5cbkBtaXhpbiBmb3JtLWxhYmVsLW1pZGRsZSB7XG4gICRpbnB1dC1ib3JkZXItd2lkdGg6IGdldC1ib3JkZXItdmFsdWUoJGlucHV0LWJvcmRlciwgd2lkdGgpO1xuXG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4gIHBhZGRpbmc6ICgkZm9ybS1zcGFjaW5nICogMC41ICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkpIDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tbGFiZWwge1xuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybS1sYWJlbDtcblxuICAgICYubWlkZGxlIHtcbiAgICAgIEBpbmNsdWRlIGZvcm0tbGFiZWwtbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWxwdGV4dC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzdHlsZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0taGVscHRleHQge1xuICAuaGVscC10ZXh0IHtcbiAgICAkbWFyZ2luLXRvcDogKCRmb3JtLXNwYWNpbmcgKiAwLjUpICogLTE7XG5cbiAgICBtYXJnaW4tdG9wOiAkbWFyZ2luLXRvcDtcbiAgICBmb250LXNpemU6ICRoZWxwdGV4dC1mb250LXNpemU7XG4gICAgZm9udC1zdHlsZTogJGhlbHB0ZXh0LWZvbnQtc3R5bGU7XG4gICAgY29sb3I6ICRoZWxwdGV4dC1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcHJlZml4LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIExlZnQvcmlnaHQgcGFkZGluZyBvZiBhbiBwcmUvcG9zdGZpeGVkIGlucHV0IGxhYmVsXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tcHJlcG9zdGZpeCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogJGlucHV0LWxpbmUtaGVpZ2h0KSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgdGFibGUpO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIH1cblxuICAgID4gOmZpcnN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgICYsICYuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCAkaW5wdXQtcmFkaXVzIDAgMCAkaW5wdXQtcmFkaXVzLCAwICRpbnB1dC1yYWRpdXMgJGlucHV0LXJhZGl1cyAwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAlaW5wdXQtZ3JvdXAtY2hpbGQge1xuICAgIG1hcmdpbjogMDtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nOiAwICRpbnB1dC1wcmVmaXgtcGFkZGluZztcbiAgICBib3JkZXI6ICRpbnB1dC1wcmVmaXgtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDtcblxuICAgIGNvbG9yOiAkaW5wdXQtcHJlZml4LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtcHJlZml4LWJvcmRlcikge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIGEsXG4gICAgaW5wdXQsXG4gICAgYnV0dG9uLFxuICAgIGxhYmVsIHtcbiAgICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuXG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoZWlnaHQ6ICRoZWlnaHQ7XG4gICAgICB9XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNwZWNpZmljaXR5IGJ1bXAgbmVlZGVkIHRvIHByZXZlbnQgb3ZlcnJpZGUgYnkgYnV0dG9uc1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgLmlucHV0LWdyb3VwIHtcbiAgICAgIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBiZXR3ZWVuIHRoZSBsZWdlbmQgdGV4dCBhbmQgZmllbGRzZXQgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG5AbWl4aW4gZmllbGRzZXQge1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXI7XG5cbiAgbGVnZW5kIHtcbiAgICAvLyBDb3ZlcnMgdXAgdGhlIGZpZWxkc2V0J3MgYm9yZGVyIHRvIGNyZWF0ZSBhcnRpZmljaWFsIHBhZGRpbmdcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogcmVtLWNhbGMoLTMpO1xuICAgIHBhZGRpbmc6ICRsZWdlbmQtcGFkZGluZztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWZpZWxkc2V0IHtcbiAgZmllbGRzZXQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIGxlZ2VuZCB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAuZmllbGRzZXQge1xuICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZHJvcGRvd24gdHJpYW5nbGUgaW5zaWRlIHNlbGVjdCBtZW51cy4gU2V0IHRvIGB0cmFuc3BhcmVudGAgdG8gcmVtb3ZlIGl0IGVudGlyZWx5LlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXRyaWFuZ2xlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHNlbGVjdCBtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1zZWxlY3Qge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqIHVuaXRsZXNzLWNhbGMoJGlucHV0LWxpbmUtaGVpZ2h0KSkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRzZWxlY3QtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGlucHV0LWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIEBpZiAkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yICE9IHRyYW5zcGFyZW50IHtcbiAgICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogJGdsb2JhbC1yaWdodCAoLSRmb3JtLXNwYWNpbmcpIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogOXB4IDZweDtcblxuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogKCRmb3JtLXNwYWNpbmcgKiAxLjUpO1xuXG4gICAgQGluY2x1ZGUgYmFja2dyb3VuZC10cmlhbmdsZSgkc2VsZWN0LXRyaWFuZ2xlLWNvbG9yKTtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICY6bm90KFttdWx0aXBsZV0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGQtZnJvbS1oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZC1mcm9tLWhlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y29kZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIElubGluZSBDaXRhdGlvbnNcbiAgQGlmICgkZW5hYmxlLWNpdGUtYmxvY2sgPT0gdHJ1ZSkge1xuICAgIGNpdGUge1xuICAgICAgLy8gRXh0ZW5kaW5nIGEgY2xhc3MgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgICAgLy8gVE9ETzogQnJlYWsgdGhlIHR5cG9ncmFwaHktYmFzZS90eXBvZ3JhcGh5LWhlbHBlcnMgc2VwYXJhdGlvblxuICAgICAgQGV4dGVuZCAlY2l0ZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIEBpZiAoJGVuYWJsZS1jb2RlLWlubGluZSA9PSB0cnVlKSB7XG4gICAgY29kZSB7XG4gICAgICBAZXh0ZW5kICVjb2RlLWlubGluZTtcbiAgICB9XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQHVzZSBcInNhc3M6Y29sb3JcIjtcbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kcHJpbWFyeS1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzZWNvbmRhcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kd2FybmluZy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRhbGVydC1jb2xvcjogbnVsbCAhZGVmYXVsdDtcbiRzdWNjZXNzLWNvbG9yOiBudWxsICFkZWZhdWx0O1xuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciB0byBjaGVjayB0aGUgbHVtaW5hbmNlIG9mLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbkBmdW5jdGlvbiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNyZWxhdGl2ZWx1bWluYW5jZWRlZlxuICAkcmVkICAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJyZWRcIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGdyZWVuIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiZ3JlZW5cIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGJsdWUgIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiYmx1ZVwiLCAkc3BhY2U6IHJnYikpO1xuXG4gICRyZ2JhOiAkcmVkLCAkZ3JlZW4sICRibHVlO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogZGl2aWRlKCRyZ2IsIDI1NSk7XG5cbiAgICAkcmdiOiBpZigkcmdiIDwgMC4wMzkyOCwgZGl2aWRlKCRyZ2IsIDEyLjkyKSwgcG93KGRpdmlkZSgkcmdiICsgMC4wNTUsIDEuMDU1KSwgMi40KSk7XG5cbiAgICAkcmdiYTI6IGFwcGVuZCgkcmdiYTIsICRyZ2IpO1xuICB9XG5cbiAgQHJldHVybiAwLjIxMjYgKiBudGgoJHJnYmEyLCAxKSArIDAuNzE1MiAqIG50aCgkcmdiYTIsIDIpICsgMC4wNzIyICogbnRoKCRyZ2JhMiwgMyk7XG59XG5cbi8vLyBDaGVja3MgdGhlIGNvbnRyYXN0IHJhdGlvIG9mIHR3byBjb2xvcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IxIC0gRmlyc3QgY29sb3IgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IyIC0gU2Vjb25kIGNvbG9yIHRvIGNvbXBhcmUuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgY29udHJhc3QgcmF0aW8gb2YgdGhlIGNvbXBhcmVkIGNvbG9ycy5cbkBmdW5jdGlvbiBjb2xvci1jb250cmFzdCgkY29sb3IxLCAkY29sb3IyKSB7XG4gIC8vIEFkYXB0ZWQgZnJvbTogaHR0cHM6Ly9naXRodWIuY29tL0xlYVZlcm91L2NvbnRyYXN0LXJhdGlvL2Jsb2IvZ2gtcGFnZXMvY29sb3IuanNcbiAgLy8gRm9ybXVsYTogaHR0cDovL3d3dy53My5vcmcvVFIvMjAwOC9SRUMtV0NBRzIwLTIwMDgxMjExLyNjb250cmFzdC1yYXRpb2RlZlxuICAkbHVtaW5hbmNlMTogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjEpICsgMC4wNTtcbiAgJGx1bWluYW5jZTI6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IyKSArIDAuMDU7XG4gICRyYXRpbzogZGl2aWRlKCRsdW1pbmFuY2UxLCAkbHVtaW5hbmNlMik7XG5cbiAgQGlmICRsdW1pbmFuY2UyID4gJGx1bWluYW5jZTEge1xuICAgICRyYXRpbzogZGl2aWRlKDEsICRyYXRpbyk7XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAqIDAuMTtcblxuICBAcmV0dXJuICRyYXRpbztcbn1cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkYmFzZWAsIGFuZCByZXR1cm5zIHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhc2UgLSBDb2xvciB0byBjaGVjayBsdW1pbmFuY2UuXG4vLy8gQHBhcmFtIHtMaXN0fSAkY29sb3JzIFsoJHdoaXRlLCAkYmxhY2spXSAtIENvbG9ycyB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG9sZXJhbmNlIFskZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlXSAtIENvbnRyYXN0IHRvbGVyYW5jZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG5AZnVuY3Rpb24gY29sb3ItcGljay1jb250cmFzdCgkYmFzZSwgJGNvbG9yczogKCR3aGl0ZSwgJGJsYWNrKSwgJHRvbGVyYW5jZTogJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZSkge1xuICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgMSkpO1xuICAkYmVzdDogbnRoKCRjb2xvcnMsIDEpO1xuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggbGVuZ3RoKCRjb2xvcnMpIHtcbiAgICAkY3VycmVudC1jb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgIEBpZiAoJGN1cnJlbnQtY29udHJhc3QgLSAkY29udHJhc3QgPiAkdG9sZXJhbmNlKSB7XG4gICAgICAkY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICAgICRiZXN0OiBudGgoJGNvbG9ycywgJGkpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGNvbnRyYXN0LXdhcm5pbmdzIGFuZCAkY29udHJhc3QgPCAzKSB7XG4gICAgQHdhcm4gJ0NvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9JztcbiAgfVxuXG4gIEByZXR1cm4gJGJlc3Q7XG59XG5cbi8vLyBTY2FsZXMgYSBjb2xvciB0byBiZSBkYXJrZXIgaWYgaXQncyBsaWdodCwgb3IgbGlnaHRlciBpZiBpdCdzIGRhcmsuIFVzZSB0aGlzIGZ1bmN0aW9uIHRvIHRpbnQgYSBjb2xvciBhcHByb3ByaWF0ZSB0byBpdHMgbGlnaHRuZXNzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gc2NhbGUuXG4vLy8gQHBhcmFtIHtQZXJjZW50YWdlfSAkc2NhbGUgWzUlXSAtIEFtb3VudCB0byBzY2FsZSB1cCBvciBkb3duLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHRocmVzaG9sZCBbNDAlXSAtIFRocmVzaG9sZCBvZiBsaWdodG5lc3MgdG8gY2hlY2sgYWdhaW5zdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gQSBzY2FsZWQgY29sb3IuXG5AZnVuY3Rpb24gc21hcnQtc2NhbGUoJGNvbG9yLCAkc2NhbGU6IDUlLCAkdGhyZXNob2xkOiA0MCUpIHtcbiAgQGlmIGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcImxpZ2h0bmVzc1wiLCAkc3BhY2U6IGhzbCkgPiAkdGhyZXNob2xkIHtcbiAgICAkc2NhbGU6IC0kc2NhbGU7XG4gIH1cbiAgQHJldHVybiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRzY2FsZSk7XG59XG5cbi8vLyBHZXQgY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEBwYXJhbSB7a2V5fSBjb2xvciBrZXkgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbi8vL1xuLy8vIEByZXR1cm5zIHtDb2xvcn0gY29sb3IgZnJvbSBmb3VuZGF0aW9uLXBhbGV0dGVcbkBmdW5jdGlvbiBnZXQtY29sb3IoJGtleSkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSkge1xuICAgIEByZXR1cm4gbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGVycm9yICdnaXZlbiAka2V5IGlzIG5vdCBhdmFpbGFibGUgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSc7XG4gIH1cbn1cblxuLy8vIFRyYW5zZmVycyB0aGUgY29sb3JzIGluIHRoZSBgJGZvdW5kYXRpb24tcGFsZXR0ZWAgbWFwIGludG8gdmFyaWFibGVzLCBzdWNoIGFzIGAkcHJpbWFyeS1jb2xvcmAgYW5kIGAkc2Vjb25kYXJ5LWNvbG9yYC4gQ2FsbCB0aGlzIG1peGluIGJlbG93IHRoZSBHbG9iYWwgc2VjdGlvbiBvZiB5b3VyIHNldHRpbmdzIGZpbGUgdG8gcHJvcGVybHkgbWlncmF0ZSB5b3VyIGNvZGViYXNlLlxuQG1peGluIGFkZC1mb3VuZGF0aW9uLWNvbG9ycygpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkcHJpbWFyeS1jb2xvcjogIzE3NzliYSAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogIzc2NzY3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2VzcykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHN1Y2Nlc3MtY29sb3I6ICMzYWRiNzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykge1xuICAgICR3YXJuaW5nLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICR3YXJuaW5nLWNvbG9yOiAjZmZhZTAwICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSB7XG4gICAgJGFsZXJ0LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIGFsZXJ0KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkYWxlcnQtY29sb3I6ICNjYzRiMzcgIWdsb2JhbDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktaGVscGVyc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWFkLWZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemUgKiAxLjI1ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3IgbGVhZCBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxlYWQtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBsaW5lIGhlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3ViaGVhZGVyLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdG9wIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBzdWJoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3Igc3RhdGlzdGljIG51bWJlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3IgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kY2l0ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcblxuLy8vIFBzZXVkbyBjb250ZW50IGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCcgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGZhbWlseSBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNvZGUtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBhcm91bmQgdGV4dCBvZiB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRjb2RlLWJsb2NrLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gdW5kZXIgdGhlIGAuY29kZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTogMS41cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gY2l0ZS1ibG9jayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogJGNpdGUtY29sb3I7XG4gIGZvbnQtc2l6ZTogJGNpdGUtZm9udC1zaXplO1xuXG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiAkY2l0ZS1wc2V1ZG8tY29udGVudDtcbiAgfVxufVxuXG4vLy8gQWRkIGJhc2ljIHN0eWxlcyBmb3IgYSBjb2RlIGhlbHBlci5cbi8vLyBTZWUgYGNvZGUtaW5saW5lYCBhbmQgYGNvZGUtYmxvY2tgIG1peGlucy5cbkBtaXhpbiBjb2RlLXN0eWxlIHtcbiAgYm9yZGVyOiAkY29kZS1ib3JkZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJhY2tncm91bmQ7XG5cbiAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGNvZGUtZm9udC13ZWlnaHQ7XG4gIGNvbG9yOiAkY29kZS1jb2xvcjtcbn1cblxuLy8vIE1ha2UgY29kZSBoZWxwZXIgZnJvbSB0aGUgYGNvZGUtc3R5bGVgIG1peGluIGlubGluZS5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1pbmxpbmVgXG5AbWl4aW4gY29kZS1pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuXG4gIHBhZGRpbmc6ICRjb2RlLXBhZGRpbmc7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBhIGJsb2NrLlxuLy8vIFVzZWQgdG8gZ2VuZXJhdGUgYC5jb2RlLWJsb2NrYFxuQG1peGluIGNvZGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG5cbiAgcGFkZGluZzogJGNvZGUtYmxvY2stcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGNvZGUtYmxvY2stbWFyZ2luLWJvdHRvbTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1oZWxwZXJzIHtcbiAgLy8gVXNlIHRvIGNyZWF0ZSBhIHN1YmhlYWRpbmcgdW5kZXIgYSBtYWluIGhlYWRlclxuICAvLyBNYWtlIHN1cmUgeW91IHBhaXIgdGhlIHR3byBlbGVtZW50cyBpbiBhIDxoZWFkZXI+IGVsZW1lbnQsIGxpa2UgdGhpczpcbiAgLy8gPGhlYWRlcj5cbiAgLy8gICA8aDE+SGVhZGluZzwvaDE+XG4gIC8vICAgPGgyPlN1YmhlYWRpbmc8L2gyPlxuICAvLyA8L2hlYWRlcj5cbiAgLnN1YmhlYWRlciB7XG4gICAgbWFyZ2luLXRvcDogJHN1YmhlYWRlci1tYXJnaW4tdG9wO1xuICAgIG1hcmdpbi1ib3R0b206ICRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtd2VpZ2h0OiAkc3ViaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkc3ViaGVhZGVyLWxpbmVoZWlnaHQ7XG4gICAgY29sb3I6ICRzdWJoZWFkZXItY29sb3I7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYW4gaW50cm9kdWN0b3J5IGxlYWQsIGRlY2ssIGJsdXJiLCBldGMuXG4gIC5sZWFkIHtcbiAgICBmb250LXNpemU6ICRsZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxlYWQtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIFVzZSB0byBzdHlsZSBhIGxhcmdlIG51bWJlciB0byBkaXNwbGF5IGEgc3RhdGlzdGljXG4gIC5zdGF0IHtcbiAgICBmb250LXNpemU6ICRzdGF0LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcblxuICAgIHAgKyAmIHtcbiAgICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICAgIH1cbiAgfVxuXG4gIHVsLCBvbCB7XG4gICAgLy8gVXNlIHRvIHJlbW92ZSBudW1iZXJzIGZyb20gb3JkZXJlZCBsaXN0ICYgYnVsbGV0cyBmcm9tIHVub3JkZXJlZCBsaXN0XG4gICAgJi5uby1idWxsZXQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgJWNpdGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNpdGUtYmxvY2s7XG4gIH1cblxuICAuY2l0ZS1ibG9jayB7XG4gICAgQGV4dGVuZCAlY2l0ZS1ibG9jaztcbiAgfVxuXG4gICVjb2RlLWlubGluZSB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWlubGluZTtcbiAgfVxuXG4gIC5jb2RlLWlubGluZSB7XG4gICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gIH1cblxuICAuY29kZS1ibG9jayB7XG4gICAgQGluY2x1ZGUgY29kZS1zdHlsZTtcbiAgICBAaW5jbHVkZSBjb2RlLWJsb2NrO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRleHQtYWxpZ25tZW50IHtcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGFsaWduIGluIChsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5KSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LXRleHQtI3skYWxpZ259IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246ICRhbGlnbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIC50ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBJZiBgdHJ1ZWAsIGFsbCBlbGVtZW50cyB3aWxsIGhhdmUgdHJhbnNwYXJlbnQgYmFja2dyb3VuZHMgd2hlbiBwcmludGVkLCB0byBzYXZlIG9uIGluay5cbi8vLyBAdHlwZSBCb29sZWFuXG4vLy8gQGdyb3VwIGdsb2JhbFxuJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5cyBuZXh0IHRvIGFsbCBsaW5rcyB0aGVpciBcImhyZWZcIiB3aGVuIHByaW50ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC1ocmVmczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8gc2Fzcy1saW50OmRpc2FibGUtYWxsXG5cbkBtaXhpbiBmb3VuZGF0aW9uLXByaW50LXN0eWxlcyB7XG4gIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIEBtZWRpYSBwcmludCB7XG4gICAgKiB7XG4gICAgICAvLyBFbnN1cmUgYSBcImJsYWNrLW9uLXdoaXRlXCIgcHJpbnQgYnkgcmVtb3ZpbmcgYmFja2dyb3VuZHMsXG4gICAgICAvLyB1c2luZyBibGFjayB0ZXh0IGV2ZXJ5d2hlcmUgYW5kIGZvcmNpbmcgdGhlIGJyb3dzZXIgdG8gZWNvbm9taXplIGluay5cbiAgICAgIEBpZiAkcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHMge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICBjb2xvcjogYmxhY2sgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgICAgICBwcmludC1jb2xvci1hZGp1c3Q6IGVjb25vbXk7XG4gICAgICB9XG4gICAgICAvLyBPdGhlcndpc2UsIHByZXZlbnQgYW55IGVjb25vbXkgYnkgdGhlIGJyb3dzZXIuXG4gICAgICBAZWxzZSB7XG4gICAgICAgIHByaW50LWNvbG9yLWFkanVzdDogZXhhY3Q7XG4gICAgICB9XG5cbiAgICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgIHRib2R5LnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICB0aC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuXG4gICAgLy8gRGlzcGxheSB0aGUgVVJMIG9mIGEgbGluayBhZnRlciB0aGUgdGV4dFxuICAgIGEsXG4gICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgIEBpZiAkcHJpbnQtaHJlZnMge1xuICAgICAgYVtocmVmXTphZnRlciB7IGNvbnRlbnQ6ICcgKCcgYXR0cihocmVmKSAnKSc7IH1cbiAgICB9XG5cbiAgICAvLyBEb24ndCBkaXNwbGF5IHRoZSBVUkwgZm9yIGltYWdlcyBvciBKYXZhU2NyaXB0L2ludGVybmFsIGxpbmtzXG4gICAgLmlyIGE6YWZ0ZXIsXG4gICAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgICBhW2hyZWZePScjJ106YWZ0ZXIgeyBjb250ZW50OiAnJzsgfVxuXG4gICAgLy8gRGlzcGxheSB3aGF0IGFuIGFiYnJldmlhdGlvbiBzdGFuZHMgZm9yIGFmdGVyIHRoZSB0ZXh0XG4gICAgYWJiclt0aXRsZV06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIodGl0bGUpICcpJzsgfVxuXG4gICAgLy8gUHJldmVudCBwYWdlIGJyZWFrcyBpbiB0aGUgbWlkZGxlIG9mIGEgYmxvY2txdW90ZSBvciBwcmVmb3JtYXR0ZWQgdGV4dCBibG9ja1xuICAgIHByZSxcbiAgICBibG9ja3F1b3RlIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgLy8gaDVicC5jb20vdFxuICAgIHRoZWFkIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwOyB9XG5cbiAgICB0cixcbiAgICBpbWcgeyBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cblxuICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICBAcGFnZSB7IG1hcmdpbjogMC41Y207IH1cblxuICAgIHAsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgb3JwaGFuczogMztcbiAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICAvLyBBdm9pZCBwYWdlIGJyZWFrcyBhZnRlciBhIGhlYWRpbmdcbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgICAvLyBIZWxwZXIgdG8gcmUtYWxsb3cgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBjZXJ0YWluIGVsZW1lbnRzIChlLmcuIHByZSwgYmxvY2txdW90ZSwgdHIpXG4gICAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBPdXRwdXRzIENTUyBjbGFzc2VzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiBmb3VuZGF0aW9uLWdyaWQoXG4gICRyb3c6ICdyb3cnLFxuICAkY29sdW1uOiAnY29sdW1uJyxcbiAgJGNvbHVtbi1yb3c6ICdjb2x1bW4tcm93JyxcbiAgJGd1dHRlcjogJ2d1dHRlcicsXG4gICRwdXNoOiAncHVzaCcsXG4gICRwdWxsOiAncHVsbCcsXG4gICRjZW50ZXI6ICdjZW50ZXJlZCcsXG4gICR1bmNlbnRlcjogJ3VuY2VudGVyZWQnLFxuICAkY29sbGFwc2U6ICdjb2xsYXBzZScsXG4gICR1bmNvbGxhcHNlOiAndW5jb2xsYXBzZScsXG4gICRvZmZzZXQ6ICdvZmZzZXQnLFxuICAkZW5kOiAnZW5kJyxcbiAgJGV4cGFuZGVkOiAnZXhwYW5kZWQnLFxuICAkYmxvY2s6ICdibG9jaydcbikge1xuICAvLyBSb3dcbiAgLiN7JHJvd30ge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93O1xuXG4gICAgLy8gQ29sbGFwc2luZ1xuICAgICYuI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBOZXN0aW5nXG4gICAgJiAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1uZXN0KCRncmlkLWNvbHVtbi1ndXR0ZXIpO1xuXG4gICAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXhwYW5kZWQgKGZ1bGwtd2lkdGgpIHJvd1xuICAgICYuI3skZXhwYW5kZWR9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcblxuICAgICAgLiN7JHJvd30ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bm90KC4jeyRleHBhbmRlZH0pIC4jeyRyb3d9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoZXhwYW5kKTtcbiAgICB9XG5cbiAgICBAaWYgdHlwZS1vZigkZ3JpZC1jb2x1bW4tZ3V0dGVyKSA9PSAnbWFwJyB7XG4gICAgICAvLyBTdGF0aWMgKHVucmVzcG9uc2l2ZSkgcm93IGd1dHRlcnNcbiAgICAgIC8vXG4gICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRncmlkLWNvbHVtbi1ndXR0ZXIge1xuICAgICAgICAmLiN7JGd1dHRlcn0tI3skYnJlYWtwb2ludH0ge1xuICAgICAgICAgID4gLiN7JGNvbHVtbn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCR2YWx1ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uXG4gIC4jeyRjb2x1bW59IHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbDtcblxuICAgIEBpZiAkZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZSB7XG4gICAgICAmLiN7JGVuZH0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQ29sdW1uIHJvd1xuICAvLyBUaGUgZG91YmxlIC5yb3cgY2xhc3MgaXMgbmVlZGVkIHRvIGJ1bXAgdXAgdGhlIHNwZWNpZmljaXR5XG4gIC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvLyBUbyBwcm9wZXJseSBuZXN0IGEgY29sdW1uIHJvdywgcGFkZGluZyBhbmQgbWFyZ2luIGlzIHJlbW92ZWRcbiAgLiN7JHJvd30gLiN7JGNvbHVtbn0uI3skcm93fS4jeyRyb3d9IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbi1jb3VudCB7XG4gICAgICAvLyBDb2x1bW4gd2lkdGhcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbi1zaXplKCRpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU291cmNlIG9yZGVyaW5nXG4gICAgICBAaWYgJGkgPCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgICBAaWYgJHB1c2gge1xuICAgICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVzaH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKCRpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgJHB1bGwge1xuICAgICAgICAgIC4jeyQtemYtc2l6ZX0tI3skcHVsbH0tI3skaX0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKC0kaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIEBpZiAkb2Zmc2V0IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS0jeyRvZmZzZXR9LSN7JG99IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbC1vZmYoJG8pO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQmxvY2sgZ3JpZFxuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGJsb2NrLWdyaWQtbWF4IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tdXAtI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBncmlkLWxheW91dCgkaSwgJy4jeyRjb2x1bW59Jyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gUmVzcG9uc2l2ZSBjb2xsYXBzaW5nXG4gICAgLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0ge1xuICAgICAgPiAuI3skY29sdW1ufSB7IEBpbmNsdWRlIGdyaWQtY29sLWNvbGxhcHNlOyB9XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuI3skZXhwYW5kZWR9LiN7JHJvd30gLiN7JC16Zi1zaXplfS0jeyRjb2xsYXBzZX0uI3skcm93fSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LSN7JHVuY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1ndXR0ZXIoJC16Zi1zaXplKTsgfVxuICAgIH1cblxuICAgIC8vIFBvc2l0aW9uaW5nXG4gICAgQGlmICRjZW50ZXIge1xuICAgICAgLiN7JC16Zi1zaXplfS0jeyRjZW50ZXJ9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gR3V0dGVyIGFkanVzdG1lbnRcbiAgICAkLWd1dHRlci11bnBvcy1zZWxlY3RvcjogKFxuICAgICAgaWYoJHVuY2VudGVyLCAnLiN7JC16Zi1zaXplfS0jeyR1bmNlbnRlcn0nLCBudWxsKSxcbiAgICAgIGlmKCRwdXNoLCAnLiN7JC16Zi1zaXplfS0jeyRwdXNofS0wJywgbnVsbCksXG4gICAgICBpZigkcHVsbCwgJy4jeyQtemYtc2l6ZX0tI3skcHVsbH0tMCcsIG51bGwpLFxuICAgICk7XG4gICAgQGlmICgkdW5jZW50ZXIgb3IgJHB1c2ggb3IgJHB1bGwpIHtcbiAgICAgICN7JC1ndXR0ZXItdW5wb3Mtc2VsZWN0b3J9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtdW5wb3M7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2sgZ3JpZCBjb2x1bW5zXG4gIC4jeyRjb2x1bW59LSN7JGJsb2NrfSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tbWFyZ2luO1xuICB9XG5cbiAgQGlmICRjb2x1bW4gPT0gJ2NvbHVtbicgYW5kIGhhcy12YWx1ZSgkZ3JpZC1jb2x1bW4tYWxpYXMpIHtcbiAgICAuI3skZ3JpZC1jb2x1bW4tYWxpYXN9IHtcbiAgICAgIC8vIHNhc3MtbGludDpkaXNhYmxlLWJsb2NrIHBsYWNlaG9sZGVyLWluLWV4dGVuZFxuICAgICAgQGV4dGVuZCAuY29sdW1uO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIENoYW5nZSB0aGUgYmVoYXZpb3Igb2YgY29sdW1ucyBkZWZpbmVkIGluc2lkZSB0aGlzIG1peGluIHRvIHVzZSBhIGRpZmZlcmVudCBjb2x1bW4gY291bnQuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyAtIE51bWJlciBvZiBjb2x1bW5zIHRvIHVzZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRyb290IFtmYWxzZV1cbi8vLyAgIElmIGBmYWxzZWAsIHNlbGVjdG9ycyBpbnNpZGUgdGhpcyBtaXhpbiB3aWxsIG5lc3QgaW5zaWRlIHRoZSBwYXJlbnQgc2VsZWN0b3IuXG4vLy8gICBJZiBgdHJ1ZWAsIHNlbGVjdG9ycyB3aWxsIG5vdCBuZXN0LlxuQG1peGluIGdyaWQtY29udGV4dChcbiAgJGNvbHVtbnMsXG4gICRyb290OiBmYWxzZVxuKSB7XG4gIC8vIFN0b3JlIHRoZSBjdXJyZW50IGNvbHVtbiBjb3VudCBzbyBpdCBjYW4gYmUgcmUtc2V0IGxhdGVyXG4gICRvbGQtZ3JpZC1jb2x1bW4tY291bnQ6ICRncmlkLWNvbHVtbi1jb3VudDtcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkY29sdW1ucyAhZ2xvYmFsO1xuXG4gIEBpZiAkcm9vdCB7XG4gICAgQGF0LXJvb3QgeyBAY29udGVudDsgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIG9sZCBjb2x1bW4gY291bnRcbiAgJGdyaWQtY29sdW1uLWNvdW50OiAkb2xkLWdyaWQtY29sdW1uLWNvdW50ICFnbG9iYWw7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCByb3cuXG4vLy8gQGNvbnRlbnRcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkY29sdW1ucyBbbnVsbF0gLSBDb2x1bW4gY291bnQgZm9yIHRoaXMgcm93LiBgbnVsbGAgd2lsbCB1c2UgdGhlIGRlZmF1bHQgY29sdW1uIGNvdW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZHN9ICRiZWhhdmlvciBbbnVsbF1cbi8vLyAgIE1vZGlmaWNhdGlvbnMgdG8gdGhlIGRlZmF1bHQgZ3JpZCBzdHlsZXMuIGBuZXN0YCBpbmRpY2F0ZXMgdGhlIHJvdyB3aWxsIGJlIHBsYWNlZCBpbnNpZGUgYW5vdGhlciByb3cuIGBjb2xsYXBzZWAgaW5kaWNhdGVzIHRoYXQgdGhlIGNvbHVtbnMgaW5zaWRlIHRoaXMgcm93IHdpbGwgbm90IGhhdmUgcGFkZGluZy4gYG5lc3QgY29sbGFwc2VgIGNvbWJpbmVzIGJvdGggYmVoYXZpb3JzLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFskZ3JpZC1yb3ctd2lkdGhdIE1heGltdW0gc2l6ZSBvZiB0aGUgcm93LiBTZXQgdG8gYGV4cGFuZGAgdG8gbWFrZSB0aGUgcm93IHRha2luZyB0aGUgZnVsbCB3aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRjZiBbdHJ1ZV0gLSBXaGV0aGVyIG9yIG5vdCB0byBpbmNsdWRlIGEgY2xlYXJmaXguXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdyhcbiAgJGNvbHVtbnM6IG51bGwsXG4gICRiZWhhdmlvcjogbnVsbCxcbiAgJHNpemU6ICRncmlkLXJvdy13aWR0aCxcbiAgJGNmOiB0cnVlLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gICRtYXJnaW46IGF1dG87XG5cbiAgQGlmIGluZGV4KCRiZWhhdmlvciwgbmVzdCkgIT0gbnVsbCB7XG4gICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3V0dGVycyk7XG5cbiAgICBAaWYgaW5kZXgoJGJlaGF2aW9yLCBjb2xsYXBzZSkgIT0gbnVsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LXNpemUoJHNpemUpO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIEBpZiAkY2Yge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgQGlmICRjb2x1bW5zICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtY29udGV4dCgkY29sdW1ucykge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBJbnZlcnRzIHRoZSBtYXJnaW5zIG9mIGEgcm93IHRvIG5lc3QgaXQgaW5zaWRlIG9mIGEgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2Ugd2hlbiBpbnZlcnRpbmcgbWFyZ2lucy4gUmVzcG9uc2l2ZSBndXR0ZXIgc2V0dGluZ3MgYnkgZGVmYXVsdC5cbkBtaXhpbiBncmlkLXJvdy1uZXN0KCRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICRtYXJnaW46IHJlbS1jYWxjKC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkLXpmLXNpemUpKSAqIDAuNSAqIC0xO1xuXG4gICAgbWFyZ2luLXJpZ2h0OiAkbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXQgYSBncmlkIHJvdyBzaXplXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG5AbWl4aW4gZ3JpZC1yb3ctc2l6ZSgkc2l6ZTogJGdyaWQtcm93LXdpZHRoKSB7XG4gIEBpZiAkc2l6ZSA9PSBleHBhbmQge1xuICAgICRzaXplOiBub25lO1xuICB9XG5cbiAgbWF4LXdpZHRoOiAkc2l6ZTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW5cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkZ3V0dGVyIFthdXRvXVxuLy8vICAgU3BhY2luZyBiZXR3ZWVuIGNvbHVtbnMsIGFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHNpbmdsZSB2YWx1ZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGF0IGV4YWN0IHNpemUuXG4vLy8gICAtIEEgYnJlYWtwb2ludCBuYW1lIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHRoZSBjb3JyZXNwb25kaW5nIHNpemUgaW4gdGhlICRndXR0ZXJzIG1hcC5cbi8vLyAgIC0gXCJhdXRvXCIgd2lsbCBtYWtlIHRoZSBndXR0ZXIgcmVzcG9uc2l2ZSwgdXNpbmcgdGhlICRndXR0ZXJzIG1hcCB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBHdXR0ZXIgbWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCRndXR0ZXIsICRndXR0ZXJzKSB7XG4gICAgJHBhZGRpbmc6IHJlbS1jYWxjKCQtemYtYnAtdmFsdWUpICogMC41O1xuXG4gICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgfVxufVxuXG4vLy8gQ29sbGFwc2UgdGhlIGd1dHRlcnMgb24gYSBjb2x1bW4gYnkgcmVtb3ZpbmcgdGhlIHBhZGRpbmcuICoqTm90ZToqKiBvbmx5IHVzZSB0aGlzIG1peGluIHdpdGhpbiBhIGJyZWFrcG9pbnQuIFRvIGNvbGxhcHNlIGEgY29sdW1uJ3MgZ3V0dGVycyBvbiBhbGwgc2NyZWVuIHNpemVzLCB1c2UgdGhlIGAkZ3V0dGVyYCBwYXJhbWV0ZXIgb2YgdGhlIGBncmlkLWNvbHVtbigpYCBtaXhpbiBpbnN0ZWFkLlxuQG1peGluIGdyaWQtY29sdW1uLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKDApO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1ndXR0ZXJcbkBtaXhpbiBncmlkLWNvbC1ndXR0ZXIoXG4gICRndXR0ZXI6IGF1dG8sXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXIsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWNvbGxhcHNlKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1jb2xsYXBzZVxuQG1peGluIGdyaWQtY29sLWNvbGxhcHNlIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tY29sbGFwc2U7XG59XG5cbi8vLyBTZXRzIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zIHRvIG1hdGNoIGd1dHRlcnNcbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkbWFyZ2luIFthdXRvXVxuLy8vICAgVGhlIGJvdHRvbSBtYXJnaW4gb24gZ3JpZCBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIG1hcmdpbiB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkbWFyZ2lucyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkbWFyZ2lucyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcmdpbnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSB0byB1c2UuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tbWFyZ2luIChcbiAgJG1hcmdpbjogYXV0byxcbiAgJG1hcmdpbnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkbWFyZ2luLCAkbWFyZ2lucykge1xuICAgICRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKTtcbiAgICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luLWJvdHRvbTtcblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDYWxjdWxhdGVzIHRoZSB3aWR0aCBvZiBhIGNvbHVtbiBiYXNlZCBvbiBhIG51bWJlciBvZiBmYWN0b3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGNvbHVtbnNcbi8vLyAgIFdpZHRoIG9mIHRoZSBjb2x1bW4uIEFjY2VwdHMgbXVsdGlwbGUgdmFsdWVzOlxuLy8vICAgLSBBIHBlcmNlbnRhZ2UgdmFsdWUgd2lsbCBtYWtlIHRoZSBjb2x1bW4gdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIHNpbmdsZSBkaWdpdCB3aWxsIG1ha2UgdGhlIGNvbHVtbiBzcGFuIHRoYXQgbnVtYmVyIG9mIGNvbHVtbnMgd2lkZSwgdGFraW5nIGludG8gYWNjb3VudCB0aGUgY29sdW1uIGNvdW50IG9mIHRoZSBwYXJlbnQgcm93LlxuLy8vICAgLSBBIGxpc3Qgb2YgdGhlIGZvcm1hdCBcInggb2YgeVwiICh3aXRob3V0IHF1b3Rlcykgd2lsbCBtYWtlIGEgY29sdW1uIHRoYXQgaXMgKngqIGNvbHVtbnMgd2lkZSwgYXNzdW1pbmcgKnkqIHRvdGFsIGNvbHVtbnMgZm9yIHRoZSBwYXJlbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBBIGNhbGN1bGF0ZWQgcGVyY2VudGFnZSB2YWx1ZS5cbkBmdW5jdGlvbiBncmlkLWNvbHVtbigkY29sdW1ucykge1xuICBAcmV0dXJuIGZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoJGNvbHVtbnMsICRkZW5vbWluYXRvcjogJGdyaWQtY29sdW1uLWNvdW50KTtcbn1cblxuLy8vIENyZWF0ZXMgYSBncmlkIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRjb2x1bW5zIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggb2YgdGhlIGNvbHVtbi4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50LFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG5cbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG5cbiAgLy8gR3V0dGVyc1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1ndXR0ZXIoJGd1dHRlcnM6ICRndXR0ZXJzKTtcbiAgLy8gUG9zaXRpb25cbiAgQGluY2x1ZGUgZ3JpZC1jb2wtcG9zKGF1dG8pO1xuXG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4gcm93LiBUaGlzIGlzIHRoZSBlcXVpdmFsZW50IG9mIGFkZGluZyBgLnJvd2AgYW5kIGAuY29sdW1uYCB0byB0aGUgc2FtZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gV2lkdGggb2YgdGhlIGd1dHRlcnMgb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNvbHVtbiByb3cuIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4tZ3V0dGVyKClgIGZ1bmN0aW9uIHRvIHNlZSBwb3NzaWJsZSB2YWx1ZXMuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtcm93O1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkZ3V0dGVyczogJGd1dHRlcnMpO1xuXG4gICYsXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtblxuQGZ1bmN0aW9uIGdyaWQtY29sKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQHJldHVybiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBtaXhpbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcm93KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1yb3dcbkBtaXhpbiBncmlkLWNvbC1yb3coXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tcm93KCRndXR0ZXJzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTZXQgdGhlIHdpZHRoIG9mIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkd2lkdGggWyRncmlkLWNvbHVtbi1jb3VudF0gLSBXaWR0aCB0byBtYWtlIHRoZSBjb2x1bW4uIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGBncmlkLWNvbHVtbigpYCBmdW5jdGlvbiwgc3VjaCBhcyBgNmAsIGA1MCVgLCBvciBgMSBvZiAyYC5cbkBtaXhpbiBncmlkLWNvbHVtbi1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgd2lkdGg6IGdyaWQtY29sdW1uKCRjb2x1bW5zKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXNpemUoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXNpemVcbkBtaXhpbiBncmlkLWNvbC1zaXplKFxuICAkY29sdW1uczogJGdyaWQtY29sdW1uLWNvdW50XG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkY29sdW1ucyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gUmVwb3NpdGlvbiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfEtleXdvcmR9ICRwb3NpdGlvbiAtIEl0IGNhbiBiZTpcbi8vLyAgICogQSBudW1iZXI6IFRoZSBjb2x1bW4gd2lsbCBtb3ZlIGVxdWFsIHRvIHRoZSB3aWR0aCBvZiB0aGUgY29sdW1uIGNvdW50XG4vLy8gICAgIHNwZWNpZmllZC4gQSBwb3NpdGl2ZSBudW1iZXIgd2lsbCBwdXNoIHRoZSBjb2x1bW4gdG8gdGhlIHJpZ2h0LCB3aGlsZVxuLy8vICAgICBhIG5lZ2F0aXZlIG51bWJlciB3aWxsIHB1bGwgaXQgdG8gdGhlIGxlZnQuXG4vLy8gICAqIGBjZW50ZXJgOiBDb2x1bW4gd2lsbCBiZSBjZW50ZXJlZFxuLy8vICAgKiBgYXV0b2A6IENvbHVtbiB3aWxsIGJlIHB1c2hlZCB0byB0aGUgbGVmdCAob3IgdG8gdGhlIHJpZ2h0IGZvciB0aGUgbGFzdCBjb2x1bW4pLlxuQG1peGluIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbikge1xuICAvLyBBdXRvIHBvc2l0aW9uaW5nXG4gIEBpZiAkcG9zaXRpb24gPT0gYXV0byB7XG4gICAgJiwgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAvLyBMYXN0IGNvbHVtbiBhbGlnbm1lbnRcbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgZmxvYXQ6ICRnbG9iYWwtcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHVzaC9wdWxsXG4gIEBlbHNlIGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSAnbnVtYmVyJyB7XG4gICAgJG9mZnNldDogcGVyY2VudGFnZShkaXZpZGUoJHBvc2l0aW9uLCAkZ3JpZC1jb2x1bW4tY291bnQpKTtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cblxuICAvLyBDZW50ZXIgcG9zaXRpb25pbmdcbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGNlbnRlciB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuXG4gIEBlbHNlIHtcbiAgICBAd2FybiAnV3Jvbmcgc3ludGF4IGZvciBncmlkLWNvbHVtbi1wb3NpdGlvbigpLiBFbnRlciBhIHBvc2l0aXZlIG9yIG5lZ2F0aXZlIG51bWJlciwgXCJjZW50ZXJcIiBvciBcImF1dG9cIi4nO1xuICB9XG59XG5cbi8vLyBSZXNldCBhIHBvc2l0aW9uIGRlZmluaXRpb24uXG5AbWl4aW4gZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbiB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKGF1dG8pO1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQgYnkgYCRuYCBjb2x1bW5zLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gV2lkdGggdG8gb2Zmc2V0IGJ5LiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IGdyaWQtY29sdW1uKCRuKTtcbn1cblxuLy8vIERpc2FibGUgdGhlIGRlZmF1bHQgYmVoYXZpb3Igb2YgdGhlIGxhc3QgY29sdW1uIGluIGEgcm93IGFsaWduaW5nIHRvIHRoZSBvcHBvc2l0ZSBlZGdlLlxuQG1peGluIGdyaWQtY29sdW1uLWVuZCB7XG4gIC8vIFRoaXMgZXh0cmEgc3BlY2lmaWNpdHkgaXMgcmVxdWlyZWQgZm9yIHRoZSBwcm9wZXJ0eSB0byBiZSBhcHBsaWVkXG4gICY6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcG9zaXRpb25cbkBtaXhpbiBncmlkLWNvbC1wb3MoJHBvc2l0aW9uKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXBvc2l0aW9uKCRwb3NpdGlvbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi11bnBvc2l0aW9uKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi11bnBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtdW5wb3Mge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi11bnBvc2l0aW9uO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tb2Zmc2V0KClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1vZmZzZXRcbkBtaXhpbiBncmlkLWNvbC1vZmYoJG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tb2Zmc2V0KCRuKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWVuZCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZW5kXG5AbWl4aW4gZ3JpZC1jb2wtZW5kIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZW5kO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFNpemVzIGNoaWxkIGVsZW1lbnRzIHNvIHRoYXQgYCRuYCBudW1iZXIgb2YgaXRlbXMgYXBwZWFyIG9uIGVhY2ggcm93LlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRuIC0gTnVtYmVyIG9mIGVsZW1lbnRzIHRvIGRpc3BsYXkgcGVyIHJvdy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFsnLmNvbHVtbiddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZ3V0dGVyXG4vLy8gICBUaGUgZ3V0dGVyIHRvIGFwcGx5IHRvIGNoaWxkIGVsZW1lbnRzLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gJGdyaWQtY29sdW1uLWd1dHRlciB3aWxsIHVzZSB0aGUgdmFsdWVzIGluIHRoZSAkZ3JpZC1jb2x1bW4tZ3V0dGVyIG1hcCwgaW5jbHVkaW5nIGJyZWFrcG9pbnQgc2l6ZXMuXG4vLy8gICAtIEEgZml4ZWQgbnVtZXJpYyB2YWx1ZSB3aWxsIGFwcGx5IHRoaXMgZ3V0dGVyIHRvIGFsbCBicmVha3BvaW50cy5cbkBtaXhpbiBncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jb2x1bW4nLFxuICAkZ3V0dGVyOiBudWxsXG4pIHtcbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZShkaXZpZGUoMSwgJG4pKTtcblxuICAgIC8vIElmIGEgJGd1dHRlciB2YWx1ZSBpcyBwYXNzZWRcbiAgICBAaWYoJGd1dHRlcikge1xuICAgICAgLy8gR3V0dGVyc1xuICAgICAgQGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgICBAZWFjaCAkYnJlYWtwb2ludCwgJHZhbHVlIGluICRndXR0ZXIge1xuICAgICAgICAgICRwYWRkaW5nOiByZW0tY2FsYygkdmFsdWUpICogMC41O1xuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2UgaWYgdHlwZS1vZigkZ3V0dGVyKSA9PSAnbnVtYmVyJyBhbmQgc3RyaXAtdW5pdCgkZ3V0dGVyKSA+IDAge1xuICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJGd1dHRlcikgKiAwLjU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICAgIGNsZWFyOiBub25lO1xuICAgIH1cblxuICAgICY6bnRoLW9mLXR5cGUoI3skbn1uKzEpIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBleHRyYSBDU1MgdG8gYmxvY2sgZ3JpZCBjaGlsZHJlbiBzbyB0aGUgbGFzdCBpdGVtcyBpbiB0aGUgcm93IGNlbnRlciBhdXRvbWF0aWNhbGx5LiBBcHBseSB0aGlzIHRvIHRoZSBjb2x1bW5zLCBub3QgdGhlIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBpdGVtcyB0aGF0IGFwcGVhciBpbiBlYWNoIHJvdy5cbkBtaXhpbiBncmlkLWxheW91dC1jZW50ZXItbGFzdCgkbikge1xuICBAZm9yICRpIGZyb20gMSB0byAkbiB7XG4gICAgQGlmICRpID09IDEge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogKDEwMCAtIGRpdmlkZSgxMDAsICRuKSAqICRpKSAqIDAuNSAqIDElO1xuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAmOm50aC1jaGlsZCgjeyRufW4rMSk6bnRoLWxhc3QtY2hpbGQoI3skaX0pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSBkaXZpZGUoMTAwLCAkbikgKiAkaSkgKiAwLjUgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b25cbi8vLy9cblxuLy8vIEZvbnQgZmFtaWx5IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gQHR5cGUgRm9udFxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBidXR0b24gZWxlbWVudHMuXG4vLy8gSWdub3JlZCBpZiBudWxsIChkZWZhdWx0KVxuLy8vIEB0eXBlIEZvbnQtV2VpZ2h0XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiBudWxsICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYXJvdW5kIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmaWxsIGZvciBidXR0b25zLiBDYW4gZWl0aGVyIGJlIGBzb2xpZGAgb3IgYGhvbGxvd2AuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGJ1dHRvbi1maWxsOiBzb2xpZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRpdmUgZm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGJ1dHRvbnMsIHRyYW5zcGFyZW50IGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHdpZHRoIGZvciBob2xsb3cgb3V0bGluZSBidXR0b25zXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1zaXplczogKFxuICB0aW55OiAwLjZyZW0sXG4gIHNtYWxsOiAwLjc1cmVtLFxuICBkZWZhdWx0OiAwLjlyZW0sXG4gIGxhcmdlOiAxLjI1cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gb3BhY2l0eSBmb3IgYSBkaXNhYmxlZCBidXR0b24uXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBob2xsb3cgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJSAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWw6IGZsaXAgZnJvbSBtYXJnaW4tcmlnaHQgdG8gbWFyZ2luLWxlZnQgZm9yIGRlZmF1bHRzXG5AaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG59XG5cbi8vLyB0cmFuc2l0aW9ucyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLXRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gQWRkaXRpb25hbCByZXNwb25zaXZlIGNsYXNzZXMgZm9yIC5leHBhbmRlZFxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IERvY3VtZW50IGJ1dHRvbi1iYXNlKCkgbWl4aW5cbkBtaXhpbiBidXR0b24tYmFzZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgYm9yZGVyOiAkYnV0dG9uLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gIHRyYW5zaXRpb246ICRidXR0b24tdHJhbnNpdGlvbjtcbiAgZm9udC1mYW1pbHk6ICRidXR0b24tZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogbWFwLWdldCgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KTtcbiAgZm9udC13ZWlnaHQ6ICRidXR0b24tZm9udC13ZWlnaHQ7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpZiAodHlwZS1vZigkYnV0dG9uLXBhZGRpbmcpID09ICdtYXAnKSB7XG4gICAgQGVhY2ggJHNpemUsICRwYWRkaW5nIGluICRidXR0b24tcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgcGFkZGluZzogJGJ1dHRvbi1wYWRkaW5nO1xuICB9XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xufVxuXG4vLy8gRXhwYW5kcyBhIGJ1dHRvbiB0byBtYWtlIGl0IGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHRoZSBleHBhbmQgYmVoYXZpb3IuIFNldCB0byBgZmFsc2VgIHRvIHJldmVyc2UgdGhpcyBiZWhhdmlvci5cbkBtaXhpbiBidXR0b24tZXhwYW5kKCRleHBhbmQ6IHRydWUpIHtcbiAgQGlmICRleHBhbmQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgaG9sbG93IG9yIGNsZWFyIGJ1dHRvbiBmaWxsaW5nIGFjY29yZGluZyB0byBgJGZpbGxgLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWZpbGwtc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLiBgc29saWRgIGhhcyBubyBlZmZlY3RzLlxuQG1peGluIGJ1dHRvbi1maWxsKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGlmICRmaWxsID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdztcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGVzIG9mIGEgc29saWQvaG9sbG93L2NsZWFyIGJ1dHRvbiBmaWxsaW5nIGFjY29yZGluZyB0byBgJGZpbGxgLlxuLy8vIFNlZSBtaXhpbnMgYGJ1dHRvbi1zdHlsZWAsIGBidXR0b24taG9sbG93LXN0eWxlYCBhbmQgYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIGVmZmVjdHMgb2YgdmlzdWFsIHN0eWxpbmcgcGFyYW1ldGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSAtXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSAtXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIC1cbkBtaXhpbiBidXR0b24tZmlsbC1zdHlsZShcbiAgJGZpbGw6ICRidXR0b24tZmlsbCxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yXG4pIHtcbiAgQGlmICRmaWxsID09IHNvbGlkIHtcbiAgICBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGhvbGxvdyB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWhvbGxvdy1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhci1zdHlsZSgkYmFja2dyb3VuZCk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gYnV0dG9uLXN0eWxlKFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gIEBpZiAkY29sb3IgPT0gYXV0byB7XG4gICAgJGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGJ1dHRvbi1jb2xvciwgJGJ1dHRvbi1jb2xvci1hbHQpKTtcbiAgfVxuXG4gIEBpZiAkYmFja2dyb3VuZC1ob3ZlciA9PSBhdXRvIHtcbiAgICAkYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJhY2tncm91bmQsICRsaWdodG5lc3M6ICRiYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzcyk7XG4gIH1cblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgaG9sbG93IGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWhvbGxvdyB7XG4gICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgaG9sbG93IGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tYmFja2dyb3VuZF0gLSBUZXh0IGFuZCBib3JkZXIgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRib3JkZXItd2lkdGggWyRidXR0b24taG9sbG93LWJvcmRlci13aWR0aF0gLSBCb3JkZXIgd2lkdGggb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24taG9sbG93LXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogJGJvcmRlci13aWR0aCBzb2xpZCAkY29sb3I7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLWhvdmVyO1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGJhc2Ugc3R5bGVzIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1jbGVhciB7XG4gICYsICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAmLCAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tYmFja2dyb3VuZF0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbkBtaXhpbiBidXR0b24tY2xlYXItc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3Ncbikge1xuICAkY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGhvdmVyLWxpZ2h0bmVzcyk7XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIGRpc2FibGVkIHN0eWxlcyB0byBhIGJ1dHRvbiBieSBmYWRpbmcgdGhlIGVsZW1lbnQgYW5kIHJlc2V0aW5nIHRoZSBjdXJzb3IuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcGFjaXR5IFskYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRdIC0gT3BhY2l0eSBvZiB0aGUgZGlzYWJsZWQgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1kaXNhYmxlZChcbiAgJG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZFxuKSB7XG4gIG9wYWNpdHk6ICRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLy8vIEFkZHMgYSBkcm9wZG93biBhcnJvdyB0byBhIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNpemUgWzAuNGVtXSAtIFNpemUgb2YgdGhlIGFycm93LiBXZSByZWNvbW1lbmQgdXNpbmcgYW4gYGVtYCB2YWx1ZSBzbyB0aGUgdHJpYW5nbGUgc2NhbGVzIHdoZW4gdXNlZCBpbnNpZGUgZGlmZmVyZW50IHNpemVzIG9mIGJ1dHRvbnMuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFt3aGl0ZV0gLSBDb2xvciBvZiB0aGUgYXJyb3cuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvZmZzZXQgWyRidXR0b24tcGFkZGluZ10gLSBEaXN0YW5jZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHQgb2YgdGhlIGJ1dHRvbi4gRGVmYXVsdHMgdG8gd2hhdGV2ZXIgdGhlIHJpZ2h0IHBhZGRpbmcgb2YgYSBidXR0b24gaXMuXG5AbWl4aW4gYnV0dG9uLWRyb3Bkb3duKFxuICAkc2l6ZTogMC40ZW0sXG4gICRjb2xvcjogJHdoaXRlLFxuICAkb2Zmc2V0OiBnZXQtc2lkZSgkYnV0dG9uLXBhZGRpbmcsIHJpZ2h0KVxuKSB7XG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHNpemUsICRjb2xvciwgZG93bik7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMC40ZW07IC8vIEFsaWducyB0aGUgYXJyb3cgd2l0aCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uXG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1yaWdodH07XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJG9mZnNldDtcbiAgfVxufVxuXG4vLy8gQWRkcyBhbGwgc3R5bGVzIGZvciBhIGJ1dHRvbi4gRm9yIG1vcmUgZ3JhbnVsYXIgY29udHJvbCBvdmVyIHN0eWxlcywgdXNlIHRoZSBpbmRpdmlkdWFsIGJ1dHRvbiBtaXhpbnMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZXhwYW5kIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIG1ha2UgdGhlIGJ1dHRvbiBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHlsZSBbc29saWRdIC0gU2V0IHRvIGBob2xsb3dgIHRvIGNyZWF0ZSBhIGhvbGxvdyBidXR0b24uIFRoZSBjb2xvciBkZWZpbmVkIGluIGAkYmFja2dyb3VuZGAgd2lsbCBiZSB1c2VkIGFzIHRoZSBwcmltYXJ5IGNvbG9yIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uKFxuICAkZXhwYW5kOiBmYWxzZSxcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkc3R5bGU6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICBAaW5jbHVkZSBidXR0b24tZmlsbCgkc3R5bGUpO1xuICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkc3R5bGUsICRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcblxuICBAaWYgJGV4cGFuZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1idXR0b24ge1xuICAuYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBidXR0b24oJHN0eWxlOiBub25lKTtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmV4cGFuZGVkIHsgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDsgfVxuXG4gICAgQGlmICRidXR0b24tcmVzcG9uc2l2ZS1leHBhbmRlZCB7XG4gICAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBvbmx5KSB7XG4gICAgICAgICAgJi4jeyRzaXplfS1vbmx5LWV4cGFuZGVkIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSBkb3duKSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWRvd24tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNvbGlkLCBob2xsb3cgJiBjbGVhciBzdHlsZXNcbiAgICBAZWFjaCAkZmlsbGluZyBpbiAoc29saWQgaG9sbG93IGNsZWFyKSB7XG4gICAgICAkc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJy4jeyRmaWxsaW5nfScpO1xuXG4gICAgICAmI3skc2VsZWN0b3J9IHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJGZpbGxpbmcpO1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZyk7XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERpc2FibGVkIHN0YXRlXG4gICAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIGFycm93XG4gICAgJi5kcm9wZG93biB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZHJvcGRvd247XG5cbiAgICAgIEBpZiAkYnV0dG9uLWZpbGwgPT0gaG9sbG93IHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRidXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhvbGxvdywgJi5jbGVhciB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4je1wiXCIgKyAkbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvbi1ncm91cFxuLy8vL1xuXG4vLy8gTWFyZ2luIGZvciBidXR0b24gZ3JvdXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSBudW1iZXIgb2YgYnV0dG9ucyB0aGF0IGNhbiBiZSBpbiBhbiBldmVuLXdpZHRoIGJ1dHRvbiBncm91cC4gKE9ubHkgbmVlZGVkIHdoZW4gJGdsb2JhbC1mbGV4Ym94OiBmYWxzZTspXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNiAhZGVmYXVsdDtcblxuLy8vIERldGVybWluZXMgaWYgJGJ1dHRvbi1yYWRpdXMgaXMgYXBwbGllZCB0byBlYWNoIGJ1dHRvbiBvciB0aGUgYnV0dG9uIGdyb3VwIGFzIGEgd2hvbGUuIFVzZSAkZ2xvYmFsLXJhZGl1cyBpbiBfc2V0dGluZ3Muc2NzcyB0byBjaGFuZ2UgcmFkaXVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEFkZCBzdHlsZXMgZm9yIGEgYnV0dG9uIGdyb3VwIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGNoaWxkLXNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHNwYWNpbmcgWyRidXR0b25ncm91cC1zcGFjaW5nXSAtIFNwYWNpbmcgYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cChcbiAgJGNoaWxkLXNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZ1xuKSB7XG4gIG1hcmdpbi1ib3R0b206ICRidXR0b25ncm91cC1tYXJnaW47XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleC1ncm93OiAxO1xuXG4gICAgJjo6YmVmb3JlLFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IC8vIERpc2FibGUgY2xlYXJmaXhcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgfVxuXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gICN7JGNoaWxkLXNlbGVjdG9yfSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICB9XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTWFrZSBidXR0b25zIGJvbmRlZCB3aXRob3V0IGdhcCBiZXR3ZWVuIHRoZW0uIEJvcmRlcnMgYmV0d2VlbiBidXR0b25zIGFyZSBtZXJnZWRcbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtbm8tZ2FwcyhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IHJlbS1jYWxjKC0kYm9yZGVyLXdpZHRoKTtcblxuICAgICsgI3skc2VsZWN0b3J9IHtcbiAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH0tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGZ1bGwtd2lkdGggYnV0dG9uIGdyb3VwLCBtYWtpbmcgZWFjaCBidXR0b24gZXF1YWwgd2lkdGguXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtZXhwYW5kKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcixcbiAgJHNwYWNpbmc6ICRidXR0b25ncm91cC1zcGFjaW5nLFxuICAkY291bnQ6IG51bGxcbikge1xuICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IC0kc3BhY2luZztcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG5cbiAgI3skc2VsZWN0b3J9IHtcbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIE9uZSBjaGlsZFxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBUd28gb3IgbW9yZSBjaGlsZHJlZW5cbiAgICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXgge1xuICAgICAgICAmOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgICAgJiwgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkgfiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoI3twZXJjZW50YWdlKGRpdmlkZSgxLCAkaSkpfSAtICN7JHNwYWNpbmd9KTtcbiAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nICogLSRidXR0b25ncm91cC1leHBhbmQtbWF4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gU3RhY2tzIHRoZSBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIHRoZSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLXN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFVuLXN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC11bnN0YWNrKFxuICAkc2VsZWN0b3I6ICRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvclxuKSB7XG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBAaWYgbm90ICRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcC0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICBmb250LXNpemU6ICR2YWx1ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIEdyb3VwXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtZXhwYW5kO1xuICAgIH1cblxuICAgIC8vIFNvbGlkLCBob2xsb3cgJiBjbGVhciBzdHlsZXNcbiAgICBAZWFjaCAkZmlsbGluZyBpbiAoc29saWQgaG9sbG93IGNsZWFyKSB7XG4gICAgICAkYmFzZS1zZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRiYXNlLXNlbGVjdG9yfSB7XG4gICAgICAgIC8vIERvIG5vdCBnZW5lcmF0ZSBidXR0b24gYmFzZSBzdHlsZXMgZm9yIHRoZSBkZWZhdWx0IGZpbGxpbmdcbiAgICAgICAgQGlmKCRidXR0b24tZmlsbCAhPSAkZmlsbGluZykge1xuICAgICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgIEBpZigkYnV0dG9uLWZpbGwgIT0gJGZpbGxpbmcpIHtcbiAgICAgICAgICAgICRpbmRpdmlkdWFsLXNlbGVjdG9yOiAnICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfS4je1wiXCIgKyAkbmFtZX0nO1xuICAgICAgICAgICAgJi4je1wiXCIgKyAkbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9LCAmI3skaW5kaXZpZHVhbC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgJi4je1wiXCIgKyAkbmFtZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICAmLm5vLWdhcHMge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLW5vLWdhcHM7XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLFxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwsXG4gICAgJi5zdGFja2VkLWZvci1tZWRpdW0ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXN0YWNrO1xuXG4gICAgICAmLmV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLXVuc3RhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNsb3NlLWJ1dHRvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLiBUaGUgZmlyc3QgdmFsdWUgc2hvdWxkIGJlIGByaWdodGAgb3IgYGxlZnRgLCBhbmQgdGhlIHNlY29uZCB2YWx1ZSBzaG91bGQgYmUgYHRvcGAgb3IgYGJvdHRvbWAuXG4vLy8gQHR5cGUgTGlzdFxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3AgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlclxuJGNsb3NlYnV0dG9uLXotaW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIHNpemUgdG8gdXNlIGFzIGRlZmF1bHRcbi8vLyBAdHlwZSBTdHJpbmdcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1zaXplXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWxcbi8vLyBAc2VlICRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWxcbiRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemU6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIFJpZ2h0IChvciBsZWZ0KSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbDogKFxuICBzbWFsbDogMC42NnJlbSxcbiAgbWVkaXVtOiAxcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFRvcCAob3IgYm90dG9tKSBvZmZzZXQocykgZm9yIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWw6IChcbiAgc21hbGw6IDAuMzNlbSxcbiAgbWVkaXVtOiAwLjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gU2l6ZShzKSBvZiB0aGUgY2xvc2UgYnV0dG9uLiBVc2VkIHRvIGdlbmVyYXRlIHNpemluZyBtb2RpZmllcnMuXG4vLy8gQHR5cGUgTnVtYmVyfE1hcFxuJGNsb3NlYnV0dG9uLXNpemU6IChcbiAgc21hbGw6IDEuNWVtLFxuICBtZWRpdW06IDJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUaGUgbGluZS1oZWlnaHQgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gSXQgYWZmZWN0cyB0aGUgc3BhY2luZyBvZiB0aGUgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSBjbG9zZSBidXR0b24gd2hlbiBiZWluZyBob3ZlcmVkIG9uLlxuLy8vIEB0eXBlIENvbG9yXG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjayAhZGVmYXVsdDtcblxuXG4vLy8gR2V0IHRoZSBzaXplIGFuZCBwb3NpdGlvbiBmb3IgYSBjbG9zZSBidXR0b24uIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIG51bWJlciwgdGhlIG51bWJlciBpcyByZXR1cm5lZC4gSWYgdGhlIGlucHV0IHZhbHVlIGlzIGEgY29uZmlnIG1hcCBhbmQgdGhlIG1hcCBoYXMgdGhlIGtleSBgJHNpemVgLCB0aGUgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICR2YWx1ZSAtIEEgbnVtYmVyIG9yIG1hcCB0aGF0IHJlcHJlc2VudHMgdGhlIHNpemUgb3IgcG9zaXRpb24gdmFsdWUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gVGhlIHNpemUgb2YgdGhlIGNsb3NlIGJ1dHRvbiB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IFRoZSBnaXZlbiBudW1iZXIgb3IgdGhlIHZhbHVlIGZvdW5kIGluIHRoZSBtYXAuXG5AZnVuY3Rpb24gLXpmLWdldC1zaXplLXZhbCgkdmFsdWUsICRzaXplKSB7XG4gIC8vIENoZWNrIGlmIHRoZSB2YWx1ZSBpcyBhIG51bWJlclxuICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAvLyBJZiBpdCBpcywganVzdCByZXR1cm4gdGhlIG51bWJlclxuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG5cbiAgLy8gQ2hlY2sgaWYgdGhlIHNpemUgbmFtZSBleGlzdHMgaW4gdGhlIHZhbHVlIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkdmFsdWUsICRzaXplKSB7XG4gICAgLy8gSWYgaXQgZG9lcywgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkdmFsdWUsICRzaXplKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gb2YgYSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSBbbWVkaXVtXSAtIFRoZSBzaXplIHRvIHVzZS4gU2V0IHRvIGBzbWFsbGAgdG8gY3JlYXRlIGEgc21hbGwgY2xvc2UgYnV0dG9uLiBUaGUgJ21lZGl1bScgdmFsdWVzIGRlZmluZWQgaW4gYCRjbG9zZWJ1dHRvbi0qYCB2YXJpYWJsZXMgd2lsbCBiZSB1c2VkIGFzIHRoZSBkZWZhdWx0IHNpemUgYW5kIHBvc2l0aW9uIG9mIHRoZSBjbG9zZSBidXR0b24uXG5AbWl4aW4gY2xvc2UtYnV0dG9uLXNpemUoJHNpemUpIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgI3skeH06IC16Zi1nZXQtc2l6ZS12YWwoJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsLCAkc2l6ZSk7XG4gICN7JHl9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtdmVydGljYWwsICRzaXplKTtcbiAgZm9udC1zaXplOiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1zaXplLCAkc2l6ZSk7XG4gIGxpbmUtaGVpZ2h0OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0LCAkc2l6ZSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjbG9zZSBidXR0b24sIHVzaW5nIHRoZSBzdHlsZXMgaW4gdGhlIHNldHRpbmdzIHZhcmlhYmxlcy5cbkBtaXhpbiBjbG9zZS1idXR0b24ge1xuICAkeDogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMSk7XG4gICR5OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAyKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6ICRjbG9zZWJ1dHRvbi16LWluZGV4O1xuICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY2xvc2VidXR0b24tY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uIHtcbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgLy8gVXNlIGJ5IGRlZmF1bHQgdGhlIHBsYWNlaG9sZGVyIG9mIHRoZSBkZWZhdWx0IHNpemVcbiAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JGNsb3NlYnV0dG9uLWRlZmF1bHQtc2l6ZX07XG5cbiAgICBAaW5jbHVkZSBjbG9zZS1idXR0b247XG5cbiAgICAvLyBHZW5lcmF0ZSBhIHBsYWNlaG9sZGVyIGFuZCBhIGNsYXNzIGZvciBlYWNoIHNpemVcbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGNsb3NlYnV0dG9uLXNpemUge1xuICAgICAgQGF0LXJvb3Qge1xuICAgICAgICAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uLXNpemUoJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBAZXh0ZW5kICV6Zi1jbG9zZS1idXR0b24tLSN7JG5hbWV9O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGxhYmVsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGxhYmVscy5cbi8vLyBAdHlwZSBDb2xvclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIG9mIGxhYmVscy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGJhc2Ugc3R5bGVzIGZvciBhIGxhYmVsLlxuQG1peGluIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAkbGFiZWwtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiAkbGFiZWwtcmFkaXVzO1xuXG4gIGZvbnQtc2l6ZTogJGxhYmVsLWZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tbGFiZWwge1xuICAubGFiZWwge1xuICAgIEBpbmNsdWRlIGxhYmVsO1xuXG4gICAgYmFja2dyb3VuZDogJGxhYmVsLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRsYWJlbC1jb2xvcjtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGxhYmVsLXBhbGV0dGUge1xuICAgICAgJi4je1wiXCIgKyAkbmFtZX0ge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gICAgICAgIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRjb2xvciwgKCRsYWJlbC1jb2xvciwgJGxhYmVsLWNvbG9yLWFsdCkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcHJvZ3Jlc3MgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBoZWlnaHQ6ICRwcm9ncmVzcy1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1tYXJnaW4tYm90dG9tO1xuICBib3JkZXItcmFkaXVzOiAkcHJvZ3Jlc3MtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFja2dyb3VuZDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5uZXIgbWV0ZXIgb2YgYSBwcm9ncmVzcyBiYXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0ZXh0IGluIHRoZSBwcm9ncmVzcyBtZXRlci5cbkBtaXhpbiBwcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgQGluY2x1ZGUgYWJzb2x1dGUtY2VudGVyO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgQGlmIGhhcy12YWx1ZSgkcHJvZ3Jlc3MtcmFkaXVzKSB7XG4gICAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcm9ncmVzcy1iYXIge1xuICAvLyBQcm9ncmVzcyBiYXJcbiAgLnByb2dyZXNzIHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1jb250YWluZXI7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4je1wiXCIgKyAkbmFtZX0ge1xuICAgICAgICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElubmVyIG1ldGVyXG4gIC5wcm9ncmVzcy1tZXRlciB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gIH1cblxuICAvLyBJbm5lciBtZXRlciB0ZXh0XG4gIC5wcm9ncmVzcy1tZXRlci10ZXh0IHtcbiAgICBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlci10ZXh0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vIFtUT0RPXSBDaGVjayBob3cgcGx1Z2luIGNvbmZpcm1zIGRpc2FibGVkIG9yIHZlcnRpY2FsIHN0YXR1c1xuLy8gW1RPRE9dIENoZWNrIGlmIHRyYW5zaXRpb246IGFsbDsgaXMgbmVjZXNzYXJ5XG5cbi8vLy9cbi8vLyBAZ3JvdXAgc2xpZGVyXG4vLy8vXG5cbi8vLyBEZWZhdWx0IHNsaWRlciB3aWR0aCBvZiBhIHZlcnRpY2FsIHNsaWRlci4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIE51bWJlclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0aWVzIHRvIGFwcGx5IHRvIHRoZSBzbGlkZXIgaGFuZGxlIGFuZCBmaWxsLiAoRG9lc24ndCBhcHBseSB0byB0aGUgbmF0aXZlIHNsaWRlci4pXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDIuMjVyZW07XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1iYWNrZ3JvdW5kO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgYWN0aXZlIGZpbGwgZm9yIHNsaWRlcnMuXG5AbWl4aW4gc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhlaWdodDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWZpbGwtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHNsaWRlci10cmFuc2l0aW9uO1xuXG4gICYuaXMtZHJhZ2dpbmcge1xuICAgIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0aGUgc2xpZGVyIGhhbmRsZXMuXG5AbWl4aW4gc2xpZGVyLWhhbmRsZSB7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGN1cnNvcjogZ3JhYjtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHNsaWRlci1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG5cbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogc2NhbGUtY29sb3IoJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSk7XG4gIH1cblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gIH1cbn1cblxuQG1peGluIHNsaWRlci1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6ICRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuQG1peGluIHNsaWRlci12ZXJ0aWNhbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6ICRzbGlkZXItd2lkdGgtdmVydGljYWw7XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xuXG4gIC5zbGlkZXItZmlsbCB7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gIH1cblxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6ICRzbGlkZXItaGFuZGxlLWhlaWdodDtcbiAgICBoZWlnaHQ6ICRzbGlkZXItaGFuZGxlLXdpZHRoO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zbGlkZXIge1xuICAvLyBDb250YWluZXJcbiAgLnNsaWRlciB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIEZpbGwgYXJlYVxuICAuc2xpZGVyLWZpbGwge1xuICAgIEBpbmNsdWRlIHNsaWRlci1maWxsO1xuICB9XG5cbiAgLy8gRHJhZ2dhYmxlIGhhbmRsZVxuICAuc2xpZGVyLWhhbmRsZSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWhhbmRsZTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gIC5zbGlkZXIuZGlzYWJsZWQsXG4gIC5zbGlkZXJbZGlzYWJsZWRdIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBWZXJ0aWNhbCBzbGlkZXJcbiAgLnNsaWRlci52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gUlRMIHN1cHBvcnRcbiAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAuc2xpZGVyOm5vdCgudmVydGljYWwpIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoLTEsIDEpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHN3aXRjaFxuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgc3dpdGNoIG9uIGZvY3VzLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLWJhY2tncm91bmQtZm9jdXM6IHNjYWxlLWNvbG9yKCRzd2l0Y2gtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTEwJSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaC5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGFjdGl2ZSBjb2xvciBvZiBhIHN3aXRjaCBvbiBmb2N1cy5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZS1mb2N1czogc2NhbGUtY29sb3IoJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZSwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2gsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnRpbnkgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAuc21hbGwgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1zbWFsbDogMS43NXJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC5sYXJnZSBjbGFzcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtaGVpZ2h0LWxhcmdlOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIG9mIHRoZSBzd2l0Y2hcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBzd2l0Y2ggY29udGFpbmVyIGFuZCBwYWRkbGUuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBhIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBib2R5LlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gYm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoIHBhZGRsZVxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHN3aXRjaCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBhIGRpc2FibGVkIHN3aXRjaC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogMC41ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIGZvciBhIGRpc2FibGVkIHN3aXRjaC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRzd2l0Y2gtY3Vyc29yLWRpc2FibGVkOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuLy8gbWFrZSB0aGVtIHZhcmlhYmxlc1xuLy8gYXNrIGFib3V0IGFjY2Vzc2liaWxpdHkgb24gbGFiZWxcbi8vIGNoYW5nZSBjbGFzcyBuYW1lIGZvciB0ZXh0XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgY29udGFpbmVyIGNsYXNzLlxuQG1peGluIHN3aXRjaC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206ICRzd2l0Y2gtbWFyZ2luO1xuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFRoZXNlIHByb3BlcnRpZXMgY2FzY2FkZSBkb3duIHRvIHRoZSBzd2l0Y2ggdGV4dFxuICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzd2l0Y2ggaW5wdXQuIEFwcGx5IHRoaXMgdG8gYW4gYDxpbnB1dD5gIHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtaW5wdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGJhY2tncm91bmQgYW5kIHBhZGRsZSBvZiBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byBhIGA8bGFiZWw+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXBhZGRsZSB7XG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRzd2l0Y2gtcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1hY3RpdmUtb2ZmZXN0OiAkc3dpdGNoLXdpZHRoIC0gJHBhZGRsZS13aWR0aCAtICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXJhZGl1cztcbiAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuXG4gIC8vIFJlc2V0dGluZyB0aGVzZSA8bGFiZWw+IHByZXNldHMgc28gdHlwZSBzdHlsZXMgY2FzY2FkZSBkb3duXG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcblxuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gTmVlZGVkIHRvIG92ZXJyaWRlIHNwZWNpZmljaXR5XG4gIGlucHV0ICsgJiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gVGhlIHBhZGRsZSBpdHNlbGZcbiAgJjo6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRzd2l0Y2gtcGFkZGxlLW9mZnNldDtcblxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG5cbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIGJvcmRlci1yYWRpdXM6ICRzd2l0Y2gtcGFkZGxlLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kO1xuICAgIHRyYW5zaXRpb246ICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb247XG4gICAgY29udGVudDogJyc7XG4gIH1cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgYWN0aXZlXG4gIGlucHV0OmNoZWNrZWQgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gICAgfVxuICB9XG5cblxuICAvLyBDaGFuZ2UgdGhlIHZpc3VhbCBzdHlsZSB3aGVuIHRoZSBzd2l0Y2ggaXMgZm9jdXNlZFxuICBpbnB1dDpmb2N1cy12aXNpYmxlIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWZvY3VzO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICBpbnB1dDpjaGVja2VkOmZvY3VzLXZpc2libGUgfiAmIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlLWZvY3VzO1xuICB9XG5cblxuICAvLyBpbmRpY2F0ZSBhIGRpc2FibGVkIHN3aXRjaFxuICBpbnB1dDpkaXNhYmxlZCB+ICYge1xuICAgIGN1cnNvcjogJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ7XG4gICAgb3BhY2l0eTogJHN3aXRjaC1vcGFjaXR5LWRpc2FibGVkO1xuICB9XG5cbiAgaW5wdXQ6Zm9jdXMgfiAmIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gIH1cbn1cblxuLy8vIEFkZHMgYmFzZSBzdHlsZXMgZm9yIGFjdGl2ZS9pbmFjdGl2ZSB0ZXh0IGluc2lkZSBhIHN3aXRjaC4gQXBwbHkgdGhpcyB0byB0ZXh0IGVsZW1lbnRzIGluc2lkZSB0aGUgc3dpdGNoIGA8bGFiZWw+YC5cbkBtaXhpbiBzd2l0Y2gtdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWFjdGl2ZSB7XG4gICN7JGdsb2JhbC1sZWZ0fTogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgaW5hY3RpdmUgc3RhdGUgdGV4dCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLXRleHQtaW5hY3RpdmUge1xuICAjeyRnbG9iYWwtcmlnaHR9OiAxNSU7XG5cbiAgaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gJiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLy8gQ2hhbmdlcyB0aGUgc2l6ZSBvZiBhIHN3aXRjaCBieSBtb2RpZnlpbmcgdGhlIHNpemUgb2YgdGhlIGJvZHkgYW5kIHBhZGRsZS4gQXBwbHkgdGhpcyB0byBhIHN3aXRjaCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmb250LXNpemUgWzFyZW1dIC0gRm9udCBzaXplIG9mIGxhYmVsIHRleHQgd2l0aGluIHRoZSBzd2l0Y2guXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzd2l0Y2gtaGVpZ2h0IFsycmVtXSAtIEhlaWdodCBvZiB0aGUgc3dpdGNoIGJvZHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkbGUtb2Zmc2V0IFswLjI1cmVtXSAtIFNwYWNpbmcgYmV0d2VlbiB0aGUgc3dpdGNoIHBhZGRsZSBhbmQgdGhlIGVkZ2Ugb2YgdGhlIHN3aXRjaCBib2R5LlxuQG1peGluIHN3aXRjaC1zaXplKFxuICAkZm9udC1zaXplOiAxcmVtLFxuICAkc3dpdGNoLWhlaWdodDogMnJlbSxcbiAgJHBhZGRsZS1vZmZzZXQ6IDAuMjVyZW1cbikge1xuXG4gICRzd2l0Y2gtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0ICogMjtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS1oZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkcGFkZGxlLW9mZnNldDtcblxuICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuXG4gIC5zd2l0Y2gtcGFkZGxlIHtcbiAgICB3aWR0aDogJHN3aXRjaC13aWR0aDtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgfVxuXG4gIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgdG9wOiAkcGFkZGxlLW9mZnNldDtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtb2Zmc2V0O1xuICAgIHdpZHRoOiAkcGFkZGxlLXdpZHRoO1xuICAgIGhlaWdodDogJHBhZGRsZS1oZWlnaHQ7XG4gIH1cblxuICBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtbGVmdH06ICRwYWRkbGUtYWN0aXZlLW9mZmVzdDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zd2l0Y2gge1xuICAvLyBDb250YWluZXIgY2xhc3NcbiAgLnN3aXRjaCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLWNvbnRhaW5lcjtcbiAgICBoZWlnaHQ6ICRzd2l0Y2gtaGVpZ2h0O1xuICB9XG5cbiAgLy8gPGlucHV0PiBlbGVtZW50XG4gIC5zd2l0Y2gtaW5wdXQge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1pbnB1dDtcbiAgfVxuXG4gIC8vIDxsYWJlbD4gZWxlbWVudFxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXBhZGRsZTtcbiAgfVxuXG4gIC8vIEJhc2UgbGFiZWwgdGV4dCBzdHlsZXNcbiAgJXN3aXRjaC10ZXh0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtdGV4dDtcbiAgfVxuXG4gIC8vIEFjdGl2ZSBsYWJlbCB0ZXh0IHN0eWxlc1xuICAuc3dpdGNoLWFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtYWN0aXZlO1xuICB9XG5cbiAgLy8gSW5hY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1pbmFjdGl2ZSB7XG4gICAgQGV4dGVuZCAlc3dpdGNoLXRleHQ7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQtaW5hY3RpdmU7XG4gIH1cblxuICAvLyBTd2l0Y2ggc2l6ZXNcbiAgLnN3aXRjaC50aW55IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMCksICRzd2l0Y2gtaGVpZ2h0LXRpbnksICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cblxuICAuc3dpdGNoLnNtYWxsIHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtc2l6ZShyZW0tY2FsYygxMiksICRzd2l0Y2gtaGVpZ2h0LXNtYWxsLCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5sYXJnZSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTYpLCAkc3dpdGNoLWhlaWdodC1sYXJnZSwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGFibGVcbi8vLy9cblxuQHVzZSBcInNhc3M6Y29sb3JcIjtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIHRhYmxlIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSBzdHJpcGVkIHRhYmxlIHJvd3MgYW5kIHRoZSB0YWJsZSBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtY29sb3Itc2NhbGU6IDUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzdHlsZSBmb3IgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFibGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHNjYWxlIGZvciBkYXJrZW5pbmcgdGhlIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdGFuZGFyZCByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1yb3ctaG92ZXI6IGNvbG9yLmFkanVzdCgkdGFibGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHN0cmlwZWQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogY29sb3IuYWRqdXN0KCR0YWJsZS1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtKCR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSkpICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCB0YWJsZXMgYXJlIHN0cmlwZWQgYnkgZGVmYXVsdCBhbmQgYW4gLnVuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLiBJZiBgZmFsc2VgLCBhIC5zdHJpcGVkIGNsYXNzIGlzIGNyZWF0ZWQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIHN0cmlwZWQgcm93cy5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciBzaG93aW5nIHRoZSBzdHJpcGUgb24gcm93cyBvZiB0aGUgdGFibGVzLCBleGNsdWRpbmcgdGhlIGhlYWRlciBhbmQgZm9vdGVyLiBJZiBldmVuLCB0aGUgZXZlbiByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIG9kZCwgdGhlIG9kZCByb3dzIHdpbGwgaGF2ZSBhIGJhY2tncm91bmQgY29sb3IuIElmIGVtcHR5LCBvciBhbnkgb3RoZXIgdmFsdWUsIHRoZSB0YWJsZSByb3dzIHdpbGwgaGF2ZSBubyBzdHJpcGluZy5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kdGFibGUtc3RyaXBlOiBldmVuICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVhZGVyIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKiAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBoZWFkZXIgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGNvbG9yLmFkanVzdCgkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtJHRhYmxlLWhvdmVyLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGZvb3RlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBjb2xvci5hZGp1c3QoJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGhlYWRlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9vdGVyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtZm9vdC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgaGVhZGVyIHdoZW4gdXNpbmcgc3RhY2tlZCB0YWJsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggc3RhY2tlZCB0YWJsZSBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuQG1peGluIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSkge1xuICB0ciB7XG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBldmVuLCBkYXJrZW4gdGhlIGV2ZW4gcm93cy5cbiAgICBAaWYgJHN0cmlwZSA9PSBldmVuIHtcbiAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBzdHJpcGUgaXMgc2V0IHRvIG9kZCwgZGFya2VuIHRoZSBvZGQgcm93cy5cbiAgICBAZWxzZSBpZiAkc3RyaXBlID09IG9kZCB7XG4gICAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXN0cmlwZWQtYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS11bnN0cmlwZSgpIHtcbiAgdHIge1xuICAgIGJvcmRlci1ib3R0b206ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cbn1cblxuQG1peGluIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZTogJHRhYmxlLXN0cmlwZSwgJGlzLXN0cmlwZWQ6ICR0YWJsZS1pcy1zdHJpcGVkKSB7XG4gIHRoZWFkLFxuICB0Ym9keSxcbiAgdGZvb3Qge1xuICAgIGJvcmRlcjogJHRhYmxlLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENhcHRpb25cbiAgY2FwdGlvbiB7XG4gICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkXG4gIHRoZWFkIHtcbiAgICBiYWNrZ3JvdW5kOiAkdGFibGUtaGVhZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGFibGUtaGVhZC1mb250LWNvbG9yO1xuICB9XG5cbiAgLy8gVGFibGUgZm9vdFxuICB0Zm9vdCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWZvb3QtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWZvb3QtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGhlYWQgYW5kIGZvb3RcbiAgdGhlYWQsXG4gIHRmb290IHtcbiAgICAvLyBSb3dzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgLy8gQ2VsbHMgd2l0aGluIGhlYWQgYW5kIGZvb3RcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgICAgdGV4dC1hbGlnbjogI3skZ2xvYmFsLWxlZnR9O1xuICAgIH1cbiAgfVxuXG4gIC8vIFRhYmxlIHJvd3NcbiAgdGJvZHkge1xuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIH1cbiAgfVxuXG4gIC8vIElmIHRhYmxlcyBhcmUgc3RyaXBlZFxuICBAaWYgJGlzLXN0cmlwZWQgPT0gdHJ1ZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICB9XG5cbiAgICAmLnVuc3RyaXBlZCB7XG4gICAgICB0Ym9keSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIG5vdCBzdHJpcGVkXG4gIEBlbHNlIGlmICRpcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICB0Ym9keSB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtdW5zdHJpcGUoKTtcbiAgICB9XG5cbiAgICAmLnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBAaW5jbHVkZSAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIHRhYmxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdHJpcGUgWyR0YWJsZS1zdHJpcGVdIC0gVXNlcyBrZXl3b3JkcyBldmVuLCBvZGQsIG9yIG5vbmUgdG8gZGFya2VuIHJvd3Mgb2YgdGhlIHRhYmxlLiBUaGUgZGVmYXVsdCB2YWx1ZSBpcyBldmVuLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3QgW2ZhbHNlXSAtIE5lZWRlZCBpZiB5b3Ugb25seSB3YW50IHRvIGFwcGx5IHRoaXMgdG8gYSBzcGVjaWZpYyB0YWJsZS5cbkBtaXhpbiB0YWJsZShcbiAgJHN0cmlwZTogJHRhYmxlLXN0cmlwZSxcbiAgJG5lc3Q6IGZhbHNlXG4pIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuICBAaWYgJG5lc3Qge1xuICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBhdC1yb290IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1jaGlsZHJlbi1zdHlsZXMoJHN0cmlwZSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBhYmlsaXR5IHRvIGhvcml6b250YWxseSBzY3JvbGwgdGhlIHRhYmxlIHdoZW4gdGhlIGNvbnRlbnQgb3ZlcmZsb3dzIGhvcml6b250YWxseS5cbkBtaXhpbiB0YWJsZS1zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi8vLyBTbGlnaHRseSBkYXJrZW5zIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuQG1peGluIHRhYmxlLWhvdmVyIHtcbiAgdGhlYWQgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtaGVhZC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGZvb3QgdHIge1xuICAgIC8vRGFya2VucyB0aGUgdGFibGUgZm9vdGVyIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtZm9vdC1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgdGJvZHkgdHIge1xuICAgIC8vRGFya2VucyB0aGUgbm9uLXN0cmlwZWQgdGFibGUgcm93cyBvbiBob3Zlci5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctaG92ZXI7XG4gICAgfVxuICB9XG5cbiAgQGlmICR0YWJsZS1pcy1zdHJpcGVkID09IHRydWUge1xuICAgIC8vIERhcmtlbnMgdGhlIGV2ZW4gc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBpZigkdGFibGUtc3RyaXBlID09IGV2ZW4pIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJjpub3QoLnVuc3RyaXBlZCkgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBlbHNlIGlmICR0YWJsZS1pcy1zdHJpcGVkID09IGZhbHNlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUoZXZlbik6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEYXJrZW5zIHRoZSBvZGQgc3RyaXBlZCB0YWJsZSByb3dzLlxuICAgIEBlbHNlIGlmKCR0YWJsZS1zdHJpcGUgPT0gb2RkKSB7XG4gICAgICAmLnN0cmlwZWQgdHI6bnRoLW9mLXR5cGUob2RkKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhY2tlZCB0YWJsZS4gVXNlZnVsIGZvciBzbWFsbC1zY3JlZW4gbGF5b3V0cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRoZWFkZXIgWyRzaG93LWhlYWRlci1mb3Itc3RhY2tlZF0gLSBTaG93IHRoZSBmaXJzdCB0aCBvZiBoZWFkZXIgd2hlbiBzdGFja2VkLlxuQG1peGluIHRhYmxlLXN0YWNrKCRoZWFkZXI6ICRzaG93LWhlYWRlci1mb3Itc3RhY2tlZCkge1xuICBAaWYgJGhlYWRlciB7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHRoZWFkIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICB0cixcbiAgdGgsXG4gIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRhYmxlKCRuZXN0OiBmYWxzZSkge1xuICB0YWJsZSB7XG4gICAgQGluY2x1ZGUgdGFibGUoJG5lc3Q6ICRuZXN0KTtcbiAgfVxuXG4gIHRhYmxlLnN0YWNrIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0YWJsZS1zdGFjay1icmVha3BvaW50IGRvd24pIHtcbiAgICAgIEBpbmNsdWRlIHRhYmxlLXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnNjcm9sbCB7XG4gICAgQGluY2x1ZGUgdGFibGUtc2Nyb2xsO1xuICB9XG5cbiAgdGFibGUuaG92ZXIge1xuICAgIEBpbmNsdWRlIHRhYmxlLWhvdmVyO1xuICB9XG5cbiAgLnRhYmxlLXNjcm9sbCB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYmFkZ2Vcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGUgdGV4dCBjb2xvciBmb3IgYmFkZ2VzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRiYWRnZS1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtcGFkZGluZzogMC4zZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGEgYmFkZ2UuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtbWlud2lkdGg6IDIuMWVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRiYWRnZS1mb250LXNpemU6IDAuNnJlbSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyB0aGUgYmFzZSBzdHlsZXMgZm9yIGEgYmFkZ2UuXG5AbWl4aW4gYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogJGJhZGdlLW1pbndpZHRoO1xuICBwYWRkaW5nOiAkYmFkZ2UtcGFkZGluZztcblxuICBib3JkZXItcmFkaXVzOiA1MCU7XG5cbiAgZm9udC1zaXplOiAkYmFkZ2UtZm9udC1zaXplO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJhZGdlIHtcbiAgLmJhZGdlIHtcbiAgICBAaW5jbHVkZSBiYWRnZTtcblxuICAgIGJhY2tncm91bmQ6ICRiYWRnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRiYWRnZS1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkYmFkZ2UtY29sb3IsICRiYWRnZS1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBicmVhZGNydW1ic1xuLy8vL1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBhY3RpdmUgYnJlYWRjcnVtYiBsaW5rLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBPcGFjaXR5IG9mIGRpc2FibGVkIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGJldHdlZW4gYnJlYWRjcnVtYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRicmVhZGNydW1icy1pdGVtLW1hcmdpbjogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgbWFrZXMgYnJlYWRjcnVtYiBsaW5rcyB1cHBlcmNhc2UuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhZGRzIGEgc2VwZXJhdG9yIGJldHdlZW4gYnJlYWRjcnVtYiBsaW5rcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2g7XG59XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtOiAnLycgIWRlZmF1bHQ7XG5cbi8vLyBVc2VkIGNoYXJhY3RlciBmb3IgdGhlIGJyZWFkY3J1bWIgc2VwYXJhdG9yIGluIHJ0bCBtb2RlLlxuLy8vIEB0eXBlIENvbnRlbnRcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgYnJlYWRjcnVtYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gSWYgaXQgZXhpc3RzICRicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yIGlzIHVzZWQgdG8gYnVpbGQgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3IpIHtcbiAgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvcjtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWJzIGNvbnRhaW5lciwgYWxvbmcgd2l0aCB0aGUgc3R5bGVzIGZvciB0aGUgYDxsaT5gIGFuZCBgPGE+YCBlbGVtZW50cyBpbnNpZGUgb2YgaXQuXG5AbWl4aW4gYnJlYWRjcnVtYnMtY29udGFpbmVyIHtcbiAgbWFyZ2luOiAkYnJlYWRjcnVtYnMtbWFyZ2luO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC8vIEl0ZW0gd3JhcHBlclxuICBsaSB7XG4gICAgZmxvYXQ6ICN7JGdsb2JhbC1sZWZ0fTtcblxuICAgIGZvbnQtc2l6ZTogJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50O1xuICAgIGN1cnNvcjogZGVmYXVsdDtcblxuICAgIEBpZiAkYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2Uge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yIHtcbiAgICAgIC8vIE5lZWQgdG8gZXNjYXBlIHRoZSBiYWNrc2xhc2hcbiAgICAgICRzZXBhcmF0b3I6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ2x0cicsICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGwpO1xuXG4gICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbjogMCAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICBjb250ZW50OiAkc2VwYXJhdG9yO1xuICAgICAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRicmVhZGNydW1icy1pdGVtLW1hcmdpbjtcbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjtcblxuICAgICY6aG92ZXIge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzIHtcbiAgLmJyZWFkY3J1bWJzIHtcbiAgICBAaW5jbHVkZSBicmVhZGNydW1icy1jb250YWluZXI7XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgY29sb3I6ICRicmVhZGNydW1icy1pdGVtLWNvbG9yLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYWxsb3V0XG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmFkZSB2YWx1ZSBmb3IgY2FsbG91dCBiYWNrZ3JvdW5kcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIExpc3RcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1tYXJnaW46IDAgMCAxcmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgQ2FsbG91dCBwYWRkaW5ncy5cbi8vLyBAdHlwZSBNYXBcbiRjYWxsb3V0LXNpemVzOiAoXG4gIHNtYWxsOiAwLjVyZW0sXG4gIGRlZmF1bHQ6IDFyZW0sXG4gIGxhcmdlOiAzcmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLCBpZiB0aGUgY2FsbG91dCBoYXMgYSBkYXJrIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFtb3VudCB0byB0aW50IGxpbmtzIHVzZWQgd2l0aGluIGNvbG9yZWQgcGFuZWxzLiBTZXQgdG8gYGZhbHNlYCB0byBkaXNhYmxlIHRoaXMgZmVhdHVyZS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBCb29sZWFuXG4kY2FsbG91dC1saW5rLXRpbnQ6IDMwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhIGNhbGxvdXQsIGluY2x1ZGluZyBwYWRkaW5nIGFuZCBtYXJnaW4uXG5AbWl4aW4gY2FsbG91dC1iYXNlKCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogJGNhbGxvdXQtbWFyZ2luO1xuICBwYWRkaW5nOiBtYXAtZ2V0KCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KTtcblxuICBib3JkZXI6ICRjYWxsb3V0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGNhbGxvdXQtcmFkaXVzO1xuXG4gIC8vIFJlc3BlY3QgdGhlIHBhZGRpbmcsIGZvb2wuXG4gID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG5cbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgcXVpY2sgc3R5bGVzIGZvciBhIGNhbGxvdXQgdXNpbmcgYSBzaW5nbGUgY29sb3IgYXMgYSBiYXNlbGluZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQtc3R5bGUoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gICRiYWNrZ3JvdW5kOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRjYWxsb3V0LWJhY2tncm91bmQtZmFkZSk7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYWNrZ3JvdW5kLCAoJGNhbGxvdXQtZm9udC1jb2xvciwgJGNhbGxvdXQtZm9udC1jb2xvci1hbHQpKTtcbn1cblxuQG1peGluIGNhbGxvdXQtc2l6ZSgkcGFkZGluZykge1xuICBwYWRkaW5nLXRvcDogJHBhZGRpbmc7XG4gIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICBwYWRkaW5nLWJvdHRvbTogJHBhZGRpbmc7XG4gIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGNhbGxvdXQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0KCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICBAaW5jbHVkZSBjYWxsb3V0LXN0eWxlKCRjb2xvcik7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tY2FsbG91dCB7XG4gIC5jYWxsb3V0IHtcbiAgICBAaW5jbHVkZSBjYWxsb3V0O1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiBtYXAtcmVtb3ZlKCRjYWxsb3V0LXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgY2FsbG91dC1zaXplKCRwYWRkaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjYXJkXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FyZHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZS5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY2FyZCBzaGFkb3cuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtc2hhZG93OiBub25lICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luLlxuLy8vIEB0eXBlIG51bWJlclxuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gZm9udCBjb2xvciBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiAtIEJvdHRvbSBtYXJnaW4gb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkYm9yZGVyIC0gQm9yZGVyIGFyb3VuZCB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYWRpdXMgLSBib3JkZXIgcmFkaXVzIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJHNoYWRvdyAtIGJveCBzaGFkb3cgb2YgdGhlIGNhcmQuXG5AbWl4aW4gY2FyZC1jb250YWluZXIoXG4gICRiYWNrZ3JvdW5kOiAkY2FyZC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRjYXJkLWZvbnQtY29sb3IsXG4gICRtYXJnaW46ICRjYXJkLW1hcmdpbi1ib3R0b20sXG4gICRib3JkZXI6ICRjYXJkLWJvcmRlcixcbiAgJHJhZGl1czogJGNhcmQtYm9yZGVyLXJhZGl1cyxcbiAgJHNoYWRvdzogJGNhcmQtc2hhZG93XG4pIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxuXG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW47XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuXG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkc2hhZG93O1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIGRpdmlkZXIuXG5AbWl4aW4gY2FyZC1kaXZpZGVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtZGl2aWRlci1iYWNrZ3JvdW5kLFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYXJkIHNlY3Rpb24uXG5AbWl4aW4gY2FyZC1zZWN0aW9uKFxuICAkcGFkZGluZzogJGNhcmQtcGFkZGluZ1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgJiA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhcmQge1xuICAuY2FyZCB7XG4gICAgQGluY2x1ZGUgY2FyZC1jb250YWluZXI7XG4gIH1cblxuICAuY2FyZC1kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBjYXJkLWRpdmlkZXI7XG4gIH1cblxuICAuY2FyZC1zZWN0aW9uIHtcbiAgICBAaW5jbHVkZSBjYXJkLXNlY3Rpb247XG4gIH1cblxuICAvLyBGb3IgSUUgMTEgLSBGbGV4YnVnXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9waGlsaXB3YWx0b24vZmxleGJ1Z3MvaXNzdWVzLzc1XG4gIC5jYXJkLWltYWdlIHtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93blxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTGlzdFxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGRyb3Bkb3duIHBhbmVzLiBFYWNoIHNpemUgaXMgYSBDU1MgY2xhc3MgeW91IGNhbiBhcHBseS5cbi8vLyBAdHlwZSBNYXBcbiRkcm9wZG93bi1zaXplczogKFxuICB0aW55OiAxMDBweCxcbiAgc21hbGw6IDIwMHB4LFxuICBsYXJnZTogNDAwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQXBwbGllcyBzdHlsZXMgZm9yIGEgYmFzaWMgZHJvcGRvd24uXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcblxuICBkaXNwbGF5OiBub25lO1xuXG4gIHdpZHRoOiAkZHJvcGRvd24td2lkdGg7XG4gIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuXG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYm9yZGVyOiAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkZHJvcGRvd24tcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmFja2dyb3VuZDtcblxuICBmb250LXNpemU6ICRkcm9wZG93bi1mb250LXNpemU7XG5cblxuICAvLyBBbGxvdyBhbiBpbnRlcm1pdHRlbnQgc3RhdGUgdG8gZG8gcG9zaXRpb25pbmcgYmVmb3JlIG1ha2luZyB2aXNpYmxlLlxuICAmLmlzLW9wZW5pbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJi5pcy1vcGVuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duIHtcbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcjtcbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkZHJvcGRvd24tc2l6ZXMge1xuICAgIC5kcm9wZG93bi1wYW5lIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICB3aWR0aDogJHNpemU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcGFnaW5hdGlvblxuLy8vL1xuXG4vLy8gRm9udCBzaXplIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBvZiB0aGUgcGFnaW5hdGlvbiBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgb2YgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCkgIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCBtYXJnaW4gdG8gc2VwYXJhdGUgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgcGFnaW5hdGlvbiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgcGFnaW5hdGlvbiBpdGVtIGZvciB0aGUgY3VycmVudCBwYWdlLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWN1cnJlbnQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYSBkaXNhYmxlZCBwYWdpbmF0aW9uIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBlbGxpcHNpcyBpbiBhIHBhZ2luYXRpb24gbWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIElmIGBmYWxzZWAsIGRvbid0IGRpc3BsYXkgcGFnZSBudW1iZXIgbGlua3Mgb24gbW9iaWxlLCBvbmx5IG5leHQvcHJldmlvdXMgbGlua3Ncbi8vLyBhbmQgb3B0aW9uYWxseSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGRpc3BsYXkgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgb24gbW9iaWxlIGV2ZW4gaWYgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtc2AgaXMgc2V0IHRvIGBmYWxzZWAuXG4vLy8gVGhpcyBwYXJhbWV0ZXIgd2lsbCBvbmx5IG92ZXJyaWRlIHRoZSB2aXNpYmlsaXR5IHNldHRpbmcgb2YgdGhlIGN1cnJlbnQgaXRlbSBmb3IgYCRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7YCxcbi8vLyBpdCB3aWxsIG5vdCBhZmZlY3QgdGhlIGN1cnJlbnQgcGFnZSBudW1iZXIgdmlzaWJpbGl0eSB3aGVuIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgdHJ1ZWAuXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFycm93cyBhcmUgYWRkZWQgdG8gdGhlIG5leHQgYW5kIHByZXZpb3VzIGxpbmtzIG9mIHBhZ2luYXRpb24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIHByZXZpb3VzIGFycm93IHdoZW4gYCRwYWdpbmF0aW9uLWFycm93c2AgaXMgYHRydWVgXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91czogJ1xcMDBBQicgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgbmV4dCBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogJ1xcMDBCQicgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBwYWdpbmF0aW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWNvbnRhaW5lciAoXG4gICRtYXJnaW4tYm90dG9tOiAkcGFnaW5hdGlvbi1tYXJnaW4tYm90dG9tLFxuICAkZm9udC1zaXplOiAkcGFnaW5hdGlvbi1mb250LXNpemUsXG4gICRzcGFjaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmcsXG4gICRyYWRpdXM6ICRwYWdpbmF0aW9uLXJhZGl1cyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1pdGVtLWNvbG9yLFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIC8vIExpc3QgaXRlbVxuICBsaSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuXG4gICAgQGlmICRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtcyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICY6bGFzdC1jaGlsZCxcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG5cbiAgICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtIHtcbiAgICAgICAgJi5jdXJyZW50IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBhZ2UgbGlua3NcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBjdXJyZW50IHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRiYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50LFxuICAkY29sb3ItY3VycmVudDogJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50XG4pIHtcbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWN1cnJlbnQ7XG4gIGNvbG9yOiAkY29sb3ItY3VycmVudDtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIGFuIGA8YT5gLlxuQG1peGluIHBhZ2luYXRpb24taXRlbS1kaXNhYmxlZCAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gZWxsaXBzaXMgZm9yIHVzZSBpbiBhIHBhZ2luYXRpb24gbGlzdC5cbkBtaXhpbiBwYWdpbmF0aW9uLWVsbGlwc2lzIChcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGNvbG9yOiAkcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvclxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBjb250ZW50OiAnXFwyMDI2JztcbiAgY29sb3I6ICRjb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcGFnaW5hdGlvbiB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcjtcblxuICAgIC5jdXJyZW50IHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24taXRlbS1jdXJyZW50O1xuICAgIH1cblxuICAgIC5kaXNhYmxlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLmVsbGlwc2lzOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWVsbGlwc2lzO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkcGFnaW5hdGlvbi1hcnJvd3Mge1xuICAgIC5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cy5kaXNhYmxlZDo6YmVmb3JlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1wcmV2aW91cztcbiAgICB9XG5cbiAgICAucGFnaW5hdGlvbi1uZXh0IGE6OmFmdGVyLFxuICAgIC5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRwYWdpbmF0aW9uLWFycm93LW5leHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9vbHRpcFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjdXJzb3Igb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgd2VpZ2h0IG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBib3R0b20gb2YgdGhlIGRlZmluZWQgdGVybS5cbi8vLyBAdHlwZSBMaXN0XG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGJhY2tncm91bmQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIHRvb2x0aXAgZm9udC5cbi8vLyBAdHlwZSBDb2xvclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4IHdpZHRoIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLW1heC13aWR0aDogMTByZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBvZiB0aGUgdG9vbHRpcCB0ZXh0LiBCeSBkZWZhdWx0LCB3ZSByZWNvbW1lbmQgYSBzbWFsbGVyIGZvbnQgc2l6ZSB0aGFuIHRoZSBib2R5IGNvcHkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1mb250LXNpemU6ICRzbWFsbC1mb250LXNpemUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBpcCBoZWlnaHQgZm9yIHRvb2x0aXBzLiBUaGlzIGlzIGhlbHBmdWwgZm9yIGNhbGN1bGF0aW5nIHRoZSBkaXN0YW5jZSBvZiB0aGUgdG9vbHRpcCBmcm9tIHRoZSB0b29sdGlwIHdvcmQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1waXAtaGVpZ2h0OiAkdG9vbHRpcC1waXAtd2lkdGggKiAwLjg2NiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciB0b29sdGlwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBoYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgYm9yZGVyLWJvdHRvbTogJGhhcy10aXAtYm9yZGVyLWJvdHRvbTtcbiAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvcjtcbn1cblxuQG1peGluIHRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgI3skdG9vbHRpcC1waXAtaGVpZ2h0fSk7XG4gIHotaW5kZXg6IDEyMDA7XG5cbiAgbWF4LXdpZHRoOiAkdG9vbHRpcC1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6ICR0b29sdGlwLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJHRvb2x0aXAtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yO1xuICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgJi5ib3R0b20ge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCB1cCk7XG4gICAgICBib3R0b206IDEwMCU7XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi50b3Age1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBkb3duKTtcbiAgICAgIHRvcDogMTAwJTtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGxlZnQ6IDUwJTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLmxlZnQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCByaWdodCk7XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5yaWdodCB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9vbHRpcC1waXAtd2lkdGgsICR0b29sdGlwLWJhY2tncm91bmQtY29sb3IsIGxlZnQpO1xuICAgICAgcmlnaHQ6IDEwMCU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi10b3A6OmJlZm9yZSB7XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHRvcDogMTAlO1xuICB9XG5cbiAgJi5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gICAgYm90dG9tOiAxMCU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICAgIGxlZnQ6IDEwJTtcbiAgICByaWdodDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMTAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvb2x0aXAge1xuICAuaGFzLXRpcCB7XG4gICAgQGluY2x1ZGUgaGFzLXRpcDtcbiAgfVxuXG4gIC50b29sdGlwIHtcbiAgICBAaW5jbHVkZSB0b29sdGlwO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZWRpYS1vYmplY3Rcbi8vLy9cblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IGFuZCByaWdodCBwYWRkaW5nIG9uIHNlY3Rpb25zIHdpdGhpbiBhIG1lZGlhIG9iamVjdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFdpZHRoIG9mIGltYWdlcyB3aXRoaW4gYSBtZWRpYSBvYmplY3QsIHdoZW4gdGhlIG9iamVjdCBpcyBzdGFja2VkIHZlcnRpY2FsbHkuIFNldCB0byAnYXV0bycgdG8gdXNlIHRoZSBpbWFnZSdzIG5hdHVyYWwgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1lZGlhIG9iamVjdCBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGlmKCRnbG9iYWwtZmxleGJveCwgZmxleCwgYmxvY2spO1xuICBtYXJnaW4tYm90dG9tOiAkbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTtcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgJi5zdGFjay1mb3ItI3skLXpmLXplcm8tYnJlYWtwb2ludH0ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nXSAtIFBhZGRpbmcgYmV0d2VlbiBzZWN0aW9ucy5cbkBtaXhpbiBtZWRpYS1vYmplY3Qtc2VjdGlvbigkcGFkZGluZzogJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZykge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkcGFkZGluZztcbiAgfVxuXG4gICY6bGFzdC1jaGlsZDpub3QoOm50aC1jaGlsZCgyKSkge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGluZztcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cblxuICAuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9ICYge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXN0YWNrO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYubWFpbi1zZWN0aW9uIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAmLm1pZGRsZSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgICYuYm90dG9tIHtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBzdGFjayBzZWN0aW9ucyBvZiBhIG1lZGlhIG9iamVjdC4gQXBwbHkgdGhpcyB0byB0aGUgc2VjdGlvbiBlbGVtZW50cywgbm90IHRoZSBjb250YWluZXIuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXN0YWNrIHtcbiAgcGFkZGluZzogMDtcbiAgcGFkZGluZy1ib3R0b206ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC1iYXNpczogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tbWVkaWEtb2JqZWN0IHtcbiAgLm1lZGlhLW9iamVjdCB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgbWVkaWEtb2JqZWN0LXNlY3Rpb247XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvcmJpdFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYWN0aXZlIGNvbG9yIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpYW1ldGVyIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBiZXR3ZWVuIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGRpc3RhbmNlIGZyb20gc2xpZGUgcmVnaW9uIGZvciBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmcm9tIE9yYml0J3MgYnVsbGV0cyB0byB3aGF0ZXZlciBjb250ZW50IG1heSBsdXJrIGJlbG93IGl0LlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY2FwdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jYXB0aW9uLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIE9yYml0J3MgY29udHJvbHMgd2hlbiBob3ZlcmVkLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyOiByZ2JhKCRibGFjaywgMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgT3JiaXQncyBjb250cm9scy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHotaW5kZXggZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC16aW5kZXg6IDEwICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBvdXRlciBPcmJpdCB3cmFwcGVyLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXRgIGNsYXNzLlxuQG1peGluIG9yYml0LXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIE9yYml0IHNsaWRlIGNvbnRhaW5lci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNvbnRhaW5lcmAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7IC8vIFByZXZlbnQgRk9VQyBieSBub3Qgc2hvd2luZyB1bnRpbCBKUyBzZXRzIGhlaWdodFxuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluZGl2aWR1YWwgc2xpZGVzIG9mIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXNsaWRlYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgJi5uby1tb3Rpb251aSB7XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHNsaWRlIGNvbnRhaW5pbmcgYW4gaW1hZ2UuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1pbWFnZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gb3JiaXQgc2xpZGUgY2FwdGlvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWNhcHRpb25gIGNsYXNzLlxuQG1peGluIG9yYml0LWNhcHRpb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHBhZGRpbmc6ICRvcmJpdC1jYXB0aW9uLXBhZGRpbmc7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZCk7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciB0aGUgbmV4dC9wcmV2aW91cyBidXR0b25zIGluIGFuIE9yYml0IHNsaWRlci4gVGhlc2Ugc3R5bGVzIGFyZSBzaGFyZWQgYmV0d2VlbiB0aGUgYC5vcmJpdC1uZXh0YCBhbmQgYC5vcmJpdC1wcmV2aW91c2AgY2xhc3NlcyBpbiB0aGUgZGVmYXVsdCBDU1MuXG5AbWl4aW4gb3JiaXQtY29udHJvbCB7XG4gIHotaW5kZXg6ICRvcmJpdC1jb250cm9sLXppbmRleDtcbiAgcGFkZGluZzogJG9yYml0LWNvbnRyb2wtcGFkZGluZztcbiAgY29sb3I6ICR3aGl0ZTtcbiAgQGluY2x1ZGUgdmVydGljYWwtY2VudGVyO1xuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgJjpob3ZlcixcbiAgJjphY3RpdmUsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzLlxuQG1peGluIG9yYml0LXByZXZpb3VzIHtcbiAgI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBPcmJpdCBuZXh0IGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LW5leHRgIGNsYXNzLlxuQG1peGluIG9yYml0LW5leHQge1xuICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICN7JGdsb2JhbC1yaWdodH06IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjb250YWluZXIgb2YgT3JiaXQgYnVsbGV0cy4gLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgcHJldmlvdXMgYnV0dG9uLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtYnVsbGV0c2AgY2xhc3MuXG5AbWl4aW4gb3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wO1xuICBtYXJnaW4tYm90dG9tOiAkb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b207XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIGJ1dHRvbiB7XG4gICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtZGlhbWV0ZXI7XG4gICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIG1hcmdpbjogJG9yYml0LWJ1bGxldC1tYXJnaW47XG5cbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9yYml0IHtcbiAgLm9yYml0IHtcbiAgICBAaW5jbHVkZSBvcmJpdC13cmFwcGVyO1xuICB9XG5cbiAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udGFpbmVyO1xuICB9XG5cbiAgLm9yYml0LXNsaWRlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1zbGlkZTtcbiAgfVxuXG4gIC5vcmJpdC1maWd1cmUge1xuICAgIEBpbmNsdWRlIG9yYml0LWZpZ3VyZTtcbiAgfVxuXG4gIC5vcmJpdC1pbWFnZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtaW1hZ2U7XG4gIH1cblxuICAub3JiaXQtY2FwdGlvbiB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY2FwdGlvbjtcbiAgfVxuXG4gICVvcmJpdC1jb250cm9sIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1jb250cm9sO1xuICB9XG5cbiAgLm9yYml0LXByZXZpb3VzIHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LXByZXZpb3VzO1xuICB9XG5cbiAgLm9yYml0LW5leHQge1xuICAgIEBleHRlbmQgJW9yYml0LWNvbnRyb2w7XG4gICAgQGluY2x1ZGUgb3JiaXQtbmV4dDtcbiAgfVxuXG4gIC5vcmJpdC1idWxsZXRzIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1idWxsZXRzO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmVzcG9uc2l2ZS1lbWJlZFxuLy8vL1xuXG4vLy8gTWFyZ2luIGJlbG93IGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vLyBBc3BlY3QgcmF0aW9zIHVzZWQgdG8gZGV0ZXJtaW5lIHBhZGRpbmctYm90dG9tIG9mIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVycy5cbi8vLyBAdHlwZSBNYXBcbiRyZXNwb25zaXZlLWVtYmVkLXJhdGlvczogKFxuICBkZWZhdWx0OiA0IGJ5IDMsXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXG4pICFkZWZhdWx0O1xuXG4vLy8gQ3JlYXRlcyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7U3RyaW5nfExpc3R9ICRyYXRpbyBbZGVmYXVsdF0gLSBSYXRpbyBvZiB0aGUgY29udGFpbmVyLiBDYW4gYmUgYSBrZXkgZnJvbSB0aGUgYCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvc2AgbWFwIG9yIGEgbGlzdCBmb3JtYXR0ZWQgYXMgYHggYnkgeWAuXG5AbWl4aW4gcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpIHtcbiAgQGlmIHR5cGUtb2YoJHJhdGlvKSA9PSAnc3RyaW5nJyB7XG4gICAgJHJhdGlvOiBtYXAtZ2V0KCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcywgJHJhdGlvKTtcbiAgfVxuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICBpZnJhbWUsXG4gIG9iamVjdCxcbiAgZW1iZWQsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZCB7XG4gIC5yZXNwb25zaXZlLWVtYmVkLFxuICAuZmxleC12aWRlbyB7XG4gICAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1lbWJlZCgkcmF0aW86IGRlZmF1bHQpO1xuXG4gICAgJHJhdGlvczogbWFwLXJlbW92ZSgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsIGRlZmF1bHQpO1xuXG4gICAgQGVhY2ggJG5hbWUsICRyYXRpbyBpbiAkcmF0aW9zIHtcbiAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYnNcbi8vLy9cblxuLy8vIERlZmF1bHQgbWFyZ2luIG9mIHRoZSB0YWIgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgY29sb3Igb2YgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQWN0aXZlIGJhY2tncm91bmQgY29sb3Igb2YgYSB0YWIgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBmb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgdGFiIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIG9mIGEgdGFiIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGFiLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1jb250ZW50LWJvcmRlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIGEgYDx1bD5gLlxuQG1peGluIHRhYnMtY29udGFpbmVyIChcbiAgJG1hcmdpbjogJHRhYi1tYXJnaW4sXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWJhY2tncm91bmQsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBtYXJnaW46ICRtYXJnaW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGFpbmVyIHRvIGhhdmUgdmVydGljYWwgdGFicy4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250YWluZXIoKWAuXG5AbWl4aW4gdGFicy1jb250YWluZXItdmVydGljYWwge1xuICA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBsaW5rcyB3aXRoaW4gYSB0YWIgY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBgPGxpPmAgZWxlbWVudHMgaW5zaWRlIGEgdGFiIGNvbnRhaW5lci5cbkBtaXhpbiB0YWJzLXRpdGxlIChcbiAgJHBhZGRpbmc6ICR0YWItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkdGFiLWl0ZW0tZm9udC1zaXplLFxuICAkY29sb3I6ICR0YWItY29sb3IsXG4gICRjb2xvci1hY3RpdmU6ICR0YWItYWN0aXZlLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXIsXG4gICRiYWNrZ3JvdW5kLWFjdGl2ZTogJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZVxuKSB7XG4gIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogLTE0JSk7XG4gICAgfVxuXG4gICAgJjpmb2N1cyxcbiAgICAmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGNvbG9yLWFjdGl2ZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgd3JhcHBlciB0aGF0IHN1cnJvdW5kcyBhIHRhYiBncm91cCdzIGNvbnRlbnQgcGFuZXMuXG5AbWl4aW4gdGFicy1jb250ZW50IChcbiAgJGJhY2tncm91bmQ6ICR0YWItY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICR0YWItY29udGVudC1jb2xvcixcbiAgJGJvcmRlci1jb2xvcjogJHRhYi1jb250ZW50LWJvcmRlclxuKSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogJGNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4vLy8gQXVnbWVudHMgYSB0YWIgY29udGVudCBjb250YWluZXIgdG8gaGF2ZSBhIHZlcnRpY2FsIHN0eWxlLCBieSBzaGlmdGluZyB0aGUgYm9yZGVyIGFyb3VuZC4gVXNlIHRoaXMgaW4gY29uanVuY3Rpb24gd2l0aCBgdGFicy1jb250ZW50KClgLlxuQG1peGluIHRhYnMtY29udGVudC12ZXJ0aWNhbCAoXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItI3skZ2xvYmFsLWxlZnR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGluZGl2aWR1YWwgdGFiIGNvbnRlbnQgcGFuZWwgd2l0aGluIHRoZSB0YWIgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gdGFicy1wYW5lbCAoXG4gICRwYWRkaW5nOiAkdGFiLWNvbnRlbnQtcGFkZGluZ1xuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYuaXMtYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJzIHtcbiAgLnRhYnMge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyO1xuICB9XG5cbiAgLy8gVmVydGljYWxcbiAgLnRhYnMudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsO1xuICB9XG5cbiAgLy8gU2ltcGxlXG4gIC50YWJzLnNpbXBsZSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFByaW1hcnkgY29sb3JcbiAgLnRhYnMucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG5cbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHByaW1hcnktY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC50YWJzLXRpdGxlIHtcbiAgICBAaW5jbHVkZSB0YWJzLXRpdGxlO1xuICB9XG5cbiAgLnRhYnMtY29udGVudCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50O1xuICB9XG5cbiAgLnRhYnMtY29udGVudC52ZXJ0aWNhbCB7XG4gICAgQGluY2x1ZGUgdGFicy1jb250ZW50LXZlcnRpY2FsO1xuICB9XG5cbiAgLnRhYnMtcGFuZWwge1xuICAgIEBpbmNsdWRlIHRhYnMtcGFuZWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aHVtYm5haWxcbi8vLy9cblxuLy8vIEJvcmRlciBhcm91bmQgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBCb3JkZXJcbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IHVuZGVyIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgU2hhZG93XG4kdGh1bWJuYWlsLXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoJGJsYWNrLCAwLjIpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI6IDAgMCA2cHggMXB4IHJnYmEoJHByaW1hcnktY29sb3IsIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBUcmFuc2l0aW9uIHByb3BydGllcyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgdGh1bWJuYWlsIHN0eWxlcyB0byBhbiBlbGVtZW50LlxuQG1peGluIHRodW1ibmFpbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkdGh1bWJuYWlsLW1hcmdpbi1ib3R0b207XG5cbiAgYm9yZGVyOiAkdGh1bWJuYWlsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHRodW1ibmFpbC1yYWRpdXM7XG4gIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93O1xuXG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5AbWl4aW4gdGh1bWJuYWlsLWxpbmsge1xuICB0cmFuc2l0aW9uOiAkdGh1bWJuYWlsLXRyYW5zaXRpb247XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJHRodW1ibmFpbC1zaGFkb3ctaG92ZXI7XG4gIH1cblxuICBpbWFnZSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10aHVtYm5haWwge1xuICAudGh1bWJuYWlsIHtcbiAgICBAaW5jbHVkZSB0aHVtYm5haWw7XG4gIH1cblxuICBhLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsLWxpbms7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBtZW51XG4vLy8vXG5cbi8vLyBNYXJnaW4gb2YgYSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gTGVmdC1oYW5kIG1hcmdpbiBvZiBhIG5lc3RlZCBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBpdGVtcyBpbiBhIHBpbGwgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWl0ZW1zLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gbWFyZ2luIGZvciBpdGVtcyBpbiBhIHNpbXBsZSBtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lbnUtc2ltcGxlLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIHRleHQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS4uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWx0LWFjdGl2ZTogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBhY3RpdmUgbWVudSBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYW4gaWNvbiBhbmQgdGV4dCBpbiBhIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgc3RhdGUuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGBhY3RpdmVgIHdpdGggYGlzLWFjdGl2ZWAuXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYGFjdGl2ZWAgd2lsbCBiZSByZW1vdmVkIGluIHVwY29taW5nIHZlcnNpb25zLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRtZW51LXN0YXRlLWJhY2stY29tcGF0OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja3dhcmQgY29tcGF0aWJpbGl0eSBmb3IgbWVudSBjZW50ZXJlZC4gSWYgdHJ1ZSwgdGhpcyBkdXBsaWNhdGUgYC5tZW51LWNlbnRlcmVkID4gLm1lbnVgIHdpdGggYC5tZW51LmFsaWduLWNlbnRlcmAuXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgYG1lbnUtY2VudGVyZWRgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIHVzaW5nIGBpY29uLSpgIGNsYXNzZXMgd2l0aG91dCBgLmljb25zYCBjbGFzc2VzXG4vLy8gQnV0IHBsZWFzZSBub3RlIHRoYXQgdGhpcyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1pY29ucy1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIE1lbnUuXG5AbWl4aW4gbWVudS1iYXNlIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBsaSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG5cbiAgYSxcbiAgLmJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRtZW51LWl0ZW1zLXBhZGRpbmc7XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb2YgaW5uZXIgZWxlbWVudHNcbiAgaW5wdXQsXG4gIHNlbGVjdCxcbiAgYSxcbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuXG4vLy8gRXhwYW5kcyB0aGUgaXRlbXMgb2YgYSBNZW51LCBzbyBlYWNoIGl0ZW0gaXMgdGhlIHNhbWUgd2lkdGguXG5AbWl4aW4gbWVudS1leHBhbmQge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBsaSB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gbWVudSBpdGVtcy5cbkBtaXhpbiBtZW51LWFsaWduKCRhbGlnbm1lbnQpIHtcbiAgQGlmICRhbGlnbm1lbnQgPT0gbGVmdCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG5cbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1yaWdodDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGNlbnRlciB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIGRpcmVjdGlvbiBvZiBhIE1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIFtob3Jpem9udGFsXSAtIERpcmVjdGlvbiBvZiB0aGUgTWVudS4gQ2FuIGJlIGBob3Jpem9udGFsYCBvciBgdmVydGljYWxgLlxuQG1peGluIG1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBtZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc2ltcGxlIE1lbnUsIHdoaWNoIGhhcyBubyBwYWRkaW5nIG9yIGhvdmVyIHN0YXRlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbJGdsb2JhbC1sZWZ0XSAtIERpcmVjdGlvbiBvZiB0aGUgbWVudS4gVGhpcyBlZmZlY3RzIHRoZSBzaWRlIG9mIHRoZSBgPGxpPmAgdGhhdCByZWNlaXZlcyB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWFyZ2luIFskbWVudS1zaW1wbGUtbWFyZ2luXSAtIFRoZSBtYXJnaW4gdG8gYXBwbHkgdG8gZWFjaCBgPGxpPmAuXG5AbWl4aW4gbWVudS1zaW1wbGUoJGRpcjogJGdsb2JhbC1sZWZ0LCAkbWFyZ2luOiAkbWVudS1zaW1wbGUtbWFyZ2luKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cblxuICBsaSArIGxpIHtcbiAgICBtYXJnaW4tI3skZGlyfTogJG1hcmdpbjtcbiAgfVxuXG4gIGEge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG5lc3RlZCBNZW51LCBieSBhZGRpbmcgYG1hcmdpbi1sZWZ0YCB0byB0aGUgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkbWFyZ2luIFskbWVudS1uZXN0ZWQtbWFyZ2luXSAtIExlbmd0aCBvZiB0aGUgbWFyZ2luLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJG5lc3RlZC1hbGlnbm1lbnQgW2xlZnRdIC0gQWxpZ25tZW50IG9mIHRoZSBuZXN0ZWQgY2xhc3NcbkBtaXhpbiBtZW51LW5lc3RlZChcbiAgJG1hcmdpbjogJG1lbnUtbmVzdGVkLW1hcmdpbixcbiAgJG5lc3RlZC1hbGlnbm1lbnQ6IGxlZnRcbikge1xuICBAaWYgJG5lc3RlZC1hbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkbWFyZ2luO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRtYXJnaW47XG4gIH1cblxufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGljb25zIGluIG1lbnVzLlxuQG1peGluIG1lbnUtaWNvbnMoKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGltZyxcbiAgICBpLFxuICAgIHN2ZyB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICArIHNwYW4ge1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQWxpZ24gdG9wL2JvdHRvbSBpY29ucyB3aXRoaW4gYSBtZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGFsaWdubWVudCBbY2VudGVyXSAtIEFsaWdubWVudCBvZiB0aGUgaWNvblxuQG1peGluIG1lbnUtaWNvbi1hbGlnbm1lbnQoJGFsaWdubWVudDogY2VudGVyKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuaWNvbi10b3AsXG4gICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICBsaSBhIHtcbiAgICAgICAgaW1nLFxuICAgICAgICBpLFxuICAgICAgICBzdmcge1xuICAgICAgICAgIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgcG9zaXRpb24gY2xhc3NlcyBmb3IgaWNvbnMgd2l0aGluIGEgbWVudS5cbkBtaXhpbiBtZW51LWljb24tcG9zaXRpb24oJHBvc2l0aW9uOiBsZWZ0LCAkc3BhY2luZzogJG1lbnUtaWNvbi1zcGFjaW5nKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRzcGFjaW5nO1xuXG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogY29sdW1uIG5vd3JhcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvICRzcGFjaW5nO1xuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206ICRzcGFjaW5nO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46ICRzcGFjaW5nIGF1dG8gMDtcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nO1xuXG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbkBtaXhpbiBtZW51LXN0YXRlLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQ6ICRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRtZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmUsICgkbWVudS1pdGVtLWNvbG9yLWFjdGl2ZSwgJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlKSk7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUge1xuICAubWVudSB7XG4gICAgQGluY2x1ZGUgbWVudS1iYXNlO1xuXG4gICAgLy8gRGVmYXVsdCBvcmllbnRhdGlvbjogaG9yaXpvbnRhbFxuICAgICYsICYuaG9yaXpvbnRhbCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICB9XG5cbiAgICAvLyBWZXJ0aWNhbCBvcmllbnRhdGlvbiBtb2RpZmllclxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLWFsaWdubWVudChsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBFdmVuLXdpZHRoIG1vZGlmaWVyIGZvciBob3Jpem9udGFsIG9yaWVudGF0aW9uXG4gICAgJi5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1hbGlnbm1lbnQobGVmdCk7XG4gICAgfVxuXG4gICAgLy8gU2ltcGxlXG4gICAgJi5zaW1wbGUge1xuICAgICAgQGluY2x1ZGUgbWVudS1zaW1wbGU7XG4gICAgfVxuXG4gICAgLy8gQnJlYWtwb2ludCBzcGVjaWZpYyB2ZXJzaW9uc1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoJHNtYWxsOiBmYWxzZSkge1xuICAgICAgJi4jeyQtemYtc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuICAgICAgfVxuXG4gICAgICAmLiN7JC16Zi1zaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tZXhwYW5kZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWV4cGFuZDtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tc2ltcGxlIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYubmVzdGVkIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkO1xuICAgIH1cblxuICAgIC8vIEljb24gQmFzZSBTdHlsZXNcbiAgICAmLmljb25zIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbnM7XG4gICAgfVxuXG4gICAgLy8gQmFja3dhcmQgQ29tcGF0aWJpbGl0eSBmb3IgYWN0aXZlIHN0YXRlXG4gICAgQGlmICRtZW51LWljb25zLWJhY2stY29tcGF0IHtcbiAgICAgICYuaWNvbi10b3AsXG4gICAgICAmLmljb24tcmlnaHQsXG4gICAgICAmLmljb24tYm90dG9tLFxuICAgICAgJi5pY29uLWxlZnQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE1lbnUgaWNvbiBwb3NpdGlvblxuICAgIC8vIEluY2x1ZGVzIHNwZWNpZmljaXR5IHRvIG5lc3RlZCBpY29ucyB3aXRoIGEgZGlmZmVyZW50IHBvc2l0aW9uXG4gICAgJixcbiAgICAmLm5lc3RlZCB7XG4gICAgICAvLyBJY29uIExlZnRcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKGxlZnQpO1xuICAgICAgfVxuXG4gICAgICAvLyBJY29uIFJpZ2h0XG4gICAgICAmLmljb24tcmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24ocmlnaHQpO1xuICAgICAgfVxuXG4gICAgICAvLyBJY29uIFRvcFxuICAgICAgJi5pY29uLXRvcCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbih0b3ApO1xuICAgICAgfVxuXG4gICAgICAvLyBJY29uIEJvdHRvbVxuICAgICAgJi5pY29uLWJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihib3R0b20pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFjdGl2ZSBzdGF0ZVxuICAgIC5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1zdGF0ZS1iYWNrLWNvbXBhdCB7XG4gICAgICAuYWN0aXZlID4gYSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtc3RhdGUtYWN0aXZlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGxlZnRcbiAgICAmLmFsaWduLSN7JGdsb2JhbC1sZWZ0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGxlZnQpO1xuICAgIH1cblxuICAgIC8vIEFsaWduIHJpZ2h0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24ocmlnaHQpO1xuICAgICAgQGluY2x1ZGUgbWVudS1pY29uLWFsaWdubWVudChyaWdodCk7XG5cbiAgICAgIC5uZXN0ZWQge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkbmVzdGVkLWFsaWdubWVudDogcmlnaHQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFsaWduIGNlbnRlclxuICAgICYuYWxpZ24tY2VudGVyIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICB9XG5cbiAgICAubWVudS10ZXh0IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtdGV4dDtcbiAgICB9XG4gIH1cblxuICBAaWYgJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQge1xuICAgIC5tZW51LWNlbnRlcmVkIHtcbiAgICAgID4gLm1lbnUge1xuICAgICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1lbnUtYWxpZ24oY2VudGVyKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmV2ZW50IEZPVUMgd2hlbiB1c2luZyB0aGUgUmVzcG9uc2l2ZSBNZW51IHBsdWdpblxuICAubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiQG1peGluIGZvdW5kYXRpb24tbWVudS1pY29uIHtcbiAgLm1lbnUtaWNvbiB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyKCRjb2xvcjogJHRpdGxlYmFyLWljb24tY29sb3IsICRjb2xvci1ob3ZlcjogJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXIpO1xuICB9XG5cbiAgLm1lbnUtaWNvbi5kYXJrIHtcbiAgICBAaW5jbHVkZSBoYW1idXJnZXI7XG4gIH1cbn1cbiIsIi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uLW1lbnVcbi8vLy9cblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbiAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSBwYWRkaW5nLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBhY2NvcmRpb24gbWVudXMgaGF2ZSB0aGUgZGVmYXVsdCBhcnJvdyBzdHlsZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbm1lbnUtYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIGJvcmRlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYm9yZGVyOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBMaXN0XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgdG9nZ2xlIGJhY2tncm91bmQgaGVpZ2h0LlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtYWNjb3JkaW9uLW1lbnUtbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogKCRhY2NvcmRpb25tZW51LWFycm93LXNpemUgKiAwLjUpO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cbn1cbkBtaXhpbiBmb3VuZGF0aW9uLWFjY29yZGlvbi1tZW51IHtcblxuICAuYWNjb3JkaW9uLW1lbnUge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgICBib3JkZXItdG9wOiAkYWNjb3JkaW9ubWVudS1ib3JkZXI7XG4gICAgICAgIGJvcmRlci1yaWdodDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItbGVmdDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgfVxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtaXRlbS1iYWNrZ3JvdW5kO1xuICAgICAgfVxuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gICAgICBwYWRkaW5nOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLmFsaWduLSN7JGdsb2JhbC1yaWdodH0ge1xuICAgICAgLm5lc3RlZC5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRhY2NvcmRpb25tZW51LW5lc3RlZC1tYXJnaW4sIHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzO1xuXG4gICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9J3RydWUnXSA+IGE6OmFmdGVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgbGkge1xuICAgIEBpZiAkYWNjb3JkaW9ubWVudS1ib3JkZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgYm9yZGVyLWxlZnQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLmhhcy1zdWJtZW51LXRvZ2dsZSA+IGEge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgfVxuXG4gIC8vIFN1Ym1lbnUgdG9nZ2xlXG4gIC5zdWJtZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xuXG4gICAgd2lkdGg6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuICAgIGhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtaGVpZ2h0O1xuXG4gICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI7XG5cbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZCB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFkZCB0aGUgYXJyb3cgdG8gdGhlIHRvZ2dsZVxuICAgICY6OmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplLCAkYWNjb3JkaW9ubWVudS1hcnJvdy1jb2xvciwgZG93bik7XG5cbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG4gIH1cblxuICAvLyBSb3RhdGUgdGhlIGFycm93IHdoZW4gbWVudSBpcyBvcGVuXG4gIC5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPSd0cnVlJ106OmFmdGVyIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgtMSk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbiAgfVxuXG4gIC5zdWJtZW51LXRvZ2dsZS10ZXh0IHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGRyaWxsZG93blxuLy8vL1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wZXJ0eSB0byB1c2UgZm9yIGFuaW1hdGluZyBtZW51cy5cbi8vLyBAdHlwZSBUcmFuc2l0aW9uXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXIgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGFycm93cyB0byBkcmlsbGRvd24gaXRlbXMgd2l0aCBzdWJtZW51cywgYXMgd2VsbCBhcyB0aGUgYmFjayBidXR0b24uXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyaWxsZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IGl0ZW0gcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcgaW4gdGhlIHN1Ym1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJpbGxkb3duIHN1Ym1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyaWxsZG93biBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyaWxsZG93bi1hcnJvdy1zaXplLCAkZHJpbGxkb3duLWFycm93LWNvbG9yLCAkZ2xvYmFsLXJpZ2h0KTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJpbGxkb3duLWFycm93LXNpemU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIHJpZ2h0KTtcbiAgICByaWdodDogMXJlbTtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgJi5hbGlnbi1yaWdodCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDFyZW07XG4gIH1cblxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudSB7XG4gIC8vIEFwcGxpZWQgdG8gdGhlIE1lbnUgY29udGFpbmVyXG4gIC5pcy1kcmlsbGRvd24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgbGkge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgJi5hbmltYXRlLWhlaWdodCB7XG4gICAgICB0cmFuc2l0aW9uOiBoZWlnaHQgMC41cztcbiAgICB9XG4gIH1cblxuICAvLyBUaGUgdG9wIGxldmVsIDx1bD5cbiAgLmRyaWxsZG93biB7XG4gICAgYSB7XG4gICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLWJhY2tncm91bmQ7XG4gICAgfVxuXG4gICAgLy8gQXBwbGllZCB0byBzdWJtZW51IDx1bD5zXG4gICAgLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICAgIHotaW5kZXg6IC0xO1xuXG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6ICRkcmlsbGRvd24tc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgICAgdHJhbnNpdGlvbjogJGRyaWxsZG93bi10cmFuc2l0aW9uO1xuXG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIC0xMDAlLCAxMDAlKSk7XG4gICAgICB9XG5cbiAgICAgICYuaXMtY2xvc2luZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWChpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IGx0ciwgMTAwJSwgLTEwMCUpKTtcbiAgICAgIH1cblxuICAgICAgLy8gU3VibWVudSBpdGVtIHBhZGRpbmdcbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAkZHJpbGxkb3duLXN1Ym1lbnUtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtbmVzdGVkKCRkcmlsbGRvd24tbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgLmRyaWxsZG93bi1zdWJtZW51LWNvdmVyLXByZXZpb3VzIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgQGlmICRkcmlsbGRvd24tYXJyb3dzIHtcbiAgICAgIEBpbmNsdWRlIHpmLWRyaWxsZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1sZWZ0KTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC43NXJlbTsgLy8gQ3JlYXRlcyBzcGFjZSBiZXR3ZWVuIHRoZSBhcnJvdyBhbmQgdGhlIHRleHRcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcm9wZG93bi1tZW51XG4vLy8vXG5cbi8vLyBFbmFibGVzIGFycm93cyBmb3IgaXRlbXMgd2l0aCBkcm9wZG93biBtZW51cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBjb2xvciBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWFycm93LWNvbG9yOiAkYW5jaG9yLWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTogNnB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IGFycm93IHBhZGRpbmcgZm9yIGFsaWduaW5nIHRoZSBhcnJvdyBjb3JyZWN0bHkuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc6IDEuNXJlbSAhZGVmYXVsdDtcblxuLy8vIE1pbmltdW0gd2lkdGggb2YgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LWJhY2tncm91bmQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcm9wZG93bnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bm1lbnUtc3VibWVudS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciB0b3AgbGV2ZWwgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcm9wZG93biBtZW51IG5lc3RlZCBtYXJnaW5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtbmVzdGVkLW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIHN1Yi1tZW51IGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgZHJvcGRvd24gc3ViLW1lbnVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLyBCb3JkZXIgd2lkdGggZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vIFVzZWQgdG8gYWRqdXN0IHRvcCBtYXJnaW4gb2YgYSBzdWItbWVudSBpZiBhIGJvcmRlciBpcyB1c2VkLlxuLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aDogbnRoKCRkcm9wZG93bm1lbnUtYm9yZGVyLCAxKTtcblxuLy8vIFRleHQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU6IGdldC1jb2xvcihwcmltYXJ5KSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbS4gRXhwbGljaXQgb3ZlcnJpZGUgZm9yIG1lbnUgZGVmYXVsdHNcbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cyB7XG4gID4gYTo6YWZ0ZXIge1xuICAgICN7JGdsb2JhbC1yaWdodH06IDE0cHg7XG4gIH1cblxuICAmLm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgbGVmdCk7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogNXB4O1xuICB9XG5cbiAgJi5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gIH1cbn1cblxuQG1peGluIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKCRkaXI6IGhvcml6b250YWwpIHtcbiAgQGlmICRkaXIgPT0gaG9yaXpvbnRhbCB7XG4gICAgPiBsaS5vcGVucy1sZWZ0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxpLm9wZW5zLXJpZ2h0IHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZztcbiAgICAgIH1cblxuICAgICAgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAgICN7JGdsb2JhbC1sZWZ0fTogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogLTEgKiAoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplICogMC41KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGRpciA9PSB2ZXJ0aWNhbCB7XG4gICAgPiBsaSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVucy1yaWdodCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgICAgQGluY2x1ZGUgemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAd2FybiAnVGhlIGRpcmVjdGlvbiB1c2VkIGZvciBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigpIG11c3QgYmUgaG9yaXpvbnRhbCBvciB2ZXJ0aWNhbC4nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWRyb3Bkb3duLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG5cbiAgICBhIHtcbiAgICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbVxuICAgID4gbGkgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bm1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvLyBUb3AtbGV2ZWwgaXRlbSBhY3RpdmUgc3RhdGVcbiAgICA+IGxpLmlzLWFjdGl2ZSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICAgIGNvbG9yOiAkZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAubm8tanMgJiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgICYudmVydGljYWwge1xuICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24odmVydGljYWwpO1xuICAgIH1cblxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICAgICYuI3skc2l6ZX0taG9yaXpvbnRhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLiN7JHNpemV9LXZlcnRpY2FsIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LmZpcnN0LXN1YiB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgICYuYWxpZ24tcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYTo6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiA1cHg7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZTtcbiAgICB9XG5cbiAgICAmLm9wZW5zLWlubmVyID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuXG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBAaWYgJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSAncnRsJyB7XG4gICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgICYub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICBsZWZ0OiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgICN7JGdsb2JhbC1sZWZ0fTogMTAwJTtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtaW4td2lkdGg6ICRkcm9wZG93bm1lbnUtbWluLXdpZHRoO1xuXG4gICAgYm9yZGVyOiAkZHJvcGRvd25tZW51LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDtcblxuICAgIC5kcm9wZG93biAmIGEge1xuICAgICAgcGFkZGluZzogJGRyb3Bkb3dubWVudS1zdWJtZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAodHlwZS1vZigkZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCkgPT0gJ251bWJlcicpIHtcbiAgICAgIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgbWFyZ2luLXRvcDogKC0kZHJvcGRvd25tZW51LWJvcmRlci13aWR0aCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAvLyBbVE9ET10gQ3V0IGJhY2sgc3BlY2lmaWNpdHlcbiAgICAvLyY6bm90KC5qcy1kcm9wZG93bi1ub2hvdmVyKSA+IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudDpob3ZlciA+ICYsIC8vIHdoeSBpcyB0aGlzIGxpbmUgbmVlZGVkPyBPcGVuaW5nIGlzIGhhbmRsZWQgYnkgSlMgYW5kIHRoaXMgY2F1c2VzIHNvbWUgdWdseSBmbGlja2VyaW5nIHdoZW4gdGhlIHN1YiBpcyByZS1wb3NpdGlvbmVkIGF1dG9tYXRpY2FsbHkuLi5cbiAgICAmLmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBvZmYtY2FudmFzXG4vLy8vXG5cbi8vLyBXaWR0aCBtYXAgb2YgYSBsZWZ0L3JpZ2h0IG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgTWFwXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgbWFwIG9mIGEgdG9wL2JvdHRvbSBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBmb3IgdGhlIG9mZi1jYW52YXMgb3ZlcmxhcCBwYW5lbC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRvZmZjYW52YXMtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywgMC43KSAhZGVmYXVsdDtcblxuLy8vIElubmVyIGJveCBzaGFkb3cgc2l6ZSBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemU6IDIwcHggIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IGNvbG9yIGZvciB0aGUgb2ZmLWNhbnZhcyBwdXNoIHBhbmVsLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1jb2xvcjogcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIGNvbnRlbnQgb3ZlcmxheS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBwdXNoYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgd2l0aCB0aGUgYG92ZXJsYXBgIHRyYW5zaXRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMyAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB1c2luZyB0aGUgYHJldmVhbC1mb3ItKmAgY2xhc3NlcyBvciBtaXhpbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTIgIWRlZmF1bHQ7XG5cbi8vLyBMZW5ndGggb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cyAhZGVmYXVsdDtcblxuLy8vIFRpbWluZyBmdW5jdGlvbiBvZiB0aGUgYW5pbWF0aW9uIG9uIGFuIG9mZi1jYW52YXMgcGFuZWwuXG4vLy8gQHR5cGUgS2V5d29yZFxuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYSByZXZlYWxlZCBvZmYtY2FudmFzIHdpbGwgYmUgZml4ZWQtcG9zaXRpb24sIGFuZCBzY3JvbGwgd2l0aCB0aGUgc2NyZWVuLlxuLy8vIEB0eXBlIEJvb2xcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIG92ZXJsYXkgdGhhdCBhcHBlYXJzIHdoZW4gYW4gb2ZmLWNhbnZhcyBwYW5lbCBpcyBvcGVuLlxuLy8vIEB0eXBlIENvbG9yXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gQ1NTIGNsYXNzIHVzZWQgZm9yIHRoZSBtYWluIGNvbnRlbnQgYXJlYS4gVGhlIG9mZi1jYW52YXMgbWl4aW5zIHVzZSB0aGlzIHRvIHRhcmdldCB0aGUgcGFnZSBjb250ZW50LlxuJG1haW5jb250ZW50LWNsYXNzOiAnb2ZmLWNhbnZhcy1jb250ZW50JyAhZGVmYXVsdDtcblxuLy8vIEFkZHMgYmFzZWxpbmUgc3R5bGVzIGZvciBvZmYtY2FudmFzLiBUaGlzIENTUyBpcyByZXF1aXJlZCB0byBtYWtlIHRoZSBvdGhlciBwaWVjZXMgd29yay5cbkBtaXhpbiBvZmYtY2FudmFzLWJhc2ljcyB7XG5cbiAgLy8vIFRyYW5zZm9ybSBkZXByZWNhdGVkIHNpemUgc2V0dGluZ3MgaW50byBtYXAgJiBzaG93IHdhcm5pbmdcbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy1zaXplcyBpbnN0ZWFkJztcbiAgfVxuICBAaWYgdmFyaWFibGUtZXhpc3RzKG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSB7XG4gICAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplczogKHNtYWxsOiAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUsIG1lZGl1bTogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplKSAhZ2xvYmFsO1xuICAgIEB3YXJuICckb2ZmY2FudmFzLXZlcnRpY2FsLXNpemUgaXMgZGVwcmVjYXRlZCBhbmQgbm90IHVzZWQgYW55bW9yZSEgUGxlYXNlIHVwZGF0ZSB5b3VyIHNldHRpbmdzIGFuZCB1c2UgdGhlIG1hcCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzIGluc3RlYWQnO1xuICB9XG5cbiAgLy8gQ2hlY2tzIHRoZSB6LWluZGV4ZXMgYW5kIGluY3JlYXNlIHRoZW0gZHVlIHRvIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LlxuICAvLyBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHRoZSBvdmVybGF5J3Mgei1pbmRleCBpcyBuZXcgc2luY2UgdjYuNCBhbmQgbWF5IGJlIGlkZW50aWNhbCB0byB0aGUgdXNlciBjdXN0b20gc2V0dGluZ3Mgb2YgdGhlIHB1c2ggei1pbmRleC5cbiAgQGlmICRvZmZjYW52YXMtcHVzaC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcHVzaC16aW5kZXg6ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXggPD0gJG9mZmNhbnZhcy1wdXNoLXppbmRleCB7ICRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXggKyAxICFnbG9iYWw7IH1cbiAgQGlmICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCA8PSAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4IHsgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG5cbiAgLy8gSGlkZXMgb3ZlcmZsb3cgb24gYm9keSB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbiAgLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgb3ZlcmxheSAoZ2VuZXJhdGVkIGJ5IEphdmFTY3JpcHQpXG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuXG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoICRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmcsIHZpc2liaWxpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuXG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ7XG5cbiAgICBvcGFjaXR5OiAwO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAmLmlzLXZpc2libGUge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuXG4gICAgJi5pcy1jbG9zYWJsZSB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAmLmlzLW92ZXJsYXktZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgIH1cbiAgfVxufVxuXG4vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYW4gb2ZmLWNhbnZhcyB3cmFwcGVyLlxuQG1peGluIG9mZi1jYW52YXMtd3JhcHBlcigpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNlKFxuICAkYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kLFxuICAkdHJhbnNpdGlvbjogJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLFxuICAkZml4ZWQ6IHRydWVcbikge1xuICAvLyBTZXQgdGhlIG9mZi1jYW52YXMgei1pbmRleC5cbiAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gIEBpZiAkZml4ZWQgPT0gdHJ1ZSB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cblxuICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG5cbiAgLy8gSW5jcmVhc2UgQ1NTIHNwZWNpZmljaXR5XG4gICYuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4O1xuICB9XG5cbiAgLy8gSGlkZSBpbmFjdGl2ZSBvZmYtY2FudmFzIHdpdGhpbiB0aGUgY29udGVudCB0aGF0IGhhdmUgdGhlIHNhbWUgcG9zaXRpb25cbiAgJi5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIC8vIE92ZXJsYXAgb25seSBzdHlsZXMuXG4gICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4O1xuXG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6ICRvZmZjYW52YXMtc2hhZG93O1xuICAgIH1cbiAgfVxuXG4gIC8vIFNldHMgdHJhbnNmb3JtIHRvIDAgdG8gc2hvdyBhbiBvZmYtY2FudmFzIHBhbmVsLlxuICAmLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0byBwb3NpdGlvbiBhbiBvZmYtY2FudmFzIHBhbmVsIHRvIHRoZSBsZWZ0L3JpZ2h0L3RvcC9ib3R0b20uXG5AbWl4aW4gb2ZmLWNhbnZhcy1wb3NpdGlvbihcbiAgJHBvc2l0aW9uOiBsZWZ0LFxuICAkb3JpZW50YXRpb246IGhvcml6b250YWwsXG4gICRzaXplczogaWYoJG9yaWVudGF0aW9uID09IGhvcml6b250YWwsICRvZmZjYW52YXMtc2l6ZXMsICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXMpXG4pIHtcbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuXG4gICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgkc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIGhlaWdodDogJHNpemU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIHBvc2l0aW9uIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBlbGVtZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfSAub2ZmLWNhbnZhcy5wb3NpdGlvbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIElmICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUgaXMgc2V0LCBhZGQgaW5uZXIgYm94LXNoYWRvdy5cbiAgLy8gVGhpcyBtaW1pY3MgdGhlIG9mZi1jYW52YXMgcGFuZWwgaGF2aW5nIGEgbG93ZXIgei1pbmRleCwgd2l0aG91dCBoYXZpbmcgdG8gaGF2ZSBvbmUuXG4gIEBpZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIHtcbiAgICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhyaWdodCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cobGVmdCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGJvdHRvbSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgICAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KHRvcCwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSwgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3IpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8vLyBTZXRzIHRoZSBzdHlsZXMgZm9yIHRoZSBjb250ZW50IGNvbnRhaW5lci5cbkBtaXhpbiBvZmYtY2FudmFzLWNvbnRlbnQoKSB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIC8vIEJpbmQgdG8gaGFzLXRyYW5zaXRpb24tWCBjbGFzcyB0byBwcmV2ZW50IHRyYW5zaXRpb24gZm9yIHRyYW5zZm9ybTpub25lXG4gICYuaGFzLXRyYW5zaXRpb24tb3ZlcmxhcCxcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nO1xuICB9XG5cbiAgLy8gVHJhbnNmb3JtIHNjb3BlIHVudGlsIHRoZSBlbGVtZW50IGlzIGNsb3NlZCAobWFrZXMgc3VyZSB0cmFuc2l0aW9uZW5kIGdldHMgdHJpZ2dlcmVkKVxuICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG5cbiAgLy8gQ29uc2lkZXIgZWxlbWVudCAmIGNvbnRlbnQsIG5lc3RlZCBpbiBhbm90aGVyIGNvbnRlbnRcbiAgLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIHRoYXQgcmV2ZWFsIGFuIG9mZi1jYW52YXMgcGFuZWwuXG5AbWl4aW4gb2ZmLWNhbnZhcy1yZXZlYWwoXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJHppbmRleDogJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LFxuICAkY29udGVudDogJG1haW5jb250ZW50LWNsYXNzLFxuICAkYnJlYWtwb2ludDogc21hbGxcbikge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIHotaW5kZXg6ICR6aW5kZXg7XG4gIHRyYW5zaXRpb246IG5vbmU7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG5cbiAgQGlmIG5vdCAkb2ZmY2FudmFzLWZpeGVkLXJldmVhbCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIHJldmVhbGVkIGVsZW1lbnQgaXMgbmVzdGVkIGluIGNvbnRlbnRcbiAgLiN7JG1haW5jb250ZW50LWNsYXNzfSAmIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICBAYXQtcm9vdCAuI3skY29udGVudH0uaGFzLXJldmVhbC0jeyRwb3NpdGlvbn0ge1xuICAgIG1hcmdpbi0jeyRwb3NpdGlvbn06IC16Zi1nZXQtYnAtdmFsKCRvZmZjYW52YXMtc2l6ZXMsICRicmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IChwcmlvciB0byB2Ni40KVxuICAmIH4gLiN7JGNvbnRlbnR9IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cbn1cblxuLy8vIE92ZXJyaWRlcyB0aGUgb2ZmLWNhbnZhcyBzdHlsZXNcbkBtaXhpbiBpbi1jYW52YXMoKSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIGhlaWdodDogYXV0bztcbiAgcG9zaXRpb246IHN0YXRpYztcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB0cmFuc2l0aW9uOiBub25lO1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLnBvc2l0aW9uLWxlZnQsXG4gICYucG9zaXRpb24tcmlnaHQsXG4gICYucG9zaXRpb24tdG9wLFxuICAmLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW9mZi1jYW52YXMge1xuICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2ljcztcblxuICAvLyBPZmYtY2FudmFzIHdyYXBwZXJcbiAgLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy13cmFwcGVyO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXJcbiAgLm9mZi1jYW52YXMge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtYmFzZTtcblxuICAgIC8vIEZvcmNlIHBvc2l0aW9uIGFic29sdXRlIGZvciBuZXN0ZWQgb2ZmLWNhbnZhcyBiZWNhdXNlIGZpeGVkIGRvZXNuJ3Qgd29yayBmb3IgcHVzaCB0cmFuc2l0aW9uIHdpdGhpbiB0aGUgdHJhbnNmb3JtIHNjb3BlLlxuICAgIC8vIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgLy8gICAvLyBOT1RFOiBzaW5jZSBvdmVybGFwIHRyYW5zaXRpb24gaXMgY3VycmVudGx5IGZvcmNlZCBpZiBuZXN0ZWQsIHRoZXJlJ3Mgbm8gbmVlZCB0byBmb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSB1bnRpbCBuZXN0ZWQgcHVzaCB0cmFuc2l0aW9uIGlzIHN1cHBvcnRlZC5cbiAgICAvLyAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAvLyB9XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIGNvbnRhaW5lciB3aXRoIGFic29sdXRlIHBvc2l0aW9uXG4gIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2UoJGZpeGVkOiBmYWxzZSk7XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIHBvc2l0aW9uIGNsYXNzZXNcbiAgLnBvc2l0aW9uLWxlZnQgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKGxlZnQsICAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0ICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHJpZ2h0LCAgaG9yaXpvbnRhbCk7IH1cbiAgLnBvc2l0aW9uLXRvcCAgICAgeyBAaW5jbHVkZSBvZmYtY2FudmFzLXBvc2l0aW9uKHRvcCwgICAgdmVydGljYWwpOyB9XG4gIC5wb3NpdGlvbi1ib3R0b20gIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihib3R0b20sIHZlcnRpY2FsKTsgfVxuXG4gIC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtY29udGVudDtcbiAgfVxuXG4gIC8vIFJldmVhbCBvZmYtY2FudmFzIHBhbmVsIG9uIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwobGVmdCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChyaWdodCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwodG9wLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBvZmYtY2FudmFzLXJldmVhbChib3R0b20sICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBNb3ZlIGluLWNhbnZhcyBmb3IgbGFyZ2VyIHNjcmVlbnNcbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJG5hbWUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLSN7JG5hbWV9IHtcbiAgICAgICAgICBAaW5jbHVkZSBpbi1jYW52YXM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi1zdGlja3kge1xuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgLnN0aWNreSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIC5zdGlja3kuaXMtc3R1Y2sge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB6LWluZGV4OiA1O1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgJi5pcy1hdC10b3Age1xuICAgICAgdG9wOiAwO1xuICAgIH1cblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAuc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcblxuICAgICYuaXMtYXQtYm90dG9tIHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0aXRsZS1iYXJcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBvZiB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBXZWlnaHRcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBtZW51IGljb25zIGluc2lkZSBhIHRpdGxlIGJhciBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiB0aGUgbWVudSBpY29uIGFuZCB0ZXh0IGluc2lkZSBhIHRpdGxlIGJhci5cbi8vLyBAdHlwZSBMZW5ndGhcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRpdGxlLWJhciB7XG4gIC50aXRsZS1iYXIge1xuICAgIHBhZGRpbmc6ICR0aXRsZWJhci1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICR0aXRsZWJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkdGl0bGViYXItY29sb3I7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICB9XG5cbiAgICAubWVudS1pY29uIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHRpdGxlYmFyLWljb24tc3BhY2luZztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudGl0bGUtYmFyLWxlZnQsXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudGl0bGUtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRpdGxlLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYmFyLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmb250LXdlaWdodDogJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0b3AtYmFyXG4vLy8vXG5cbi8vLyBQYWRkaW5nIGZvciB0aGUgdG9wIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXIuIFRoaXMgY29sb3IgYWxzbyBjYXNjYWRlcyB0byBtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIHN1Ym1lbnVzIHdpdGhpbiB0aGUgdG9wIGJhci4gVXNlZnVsbCBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgdHJhbnNwYXJlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGZvciB0aGUgdG9wIGJhciB0aXRsZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDAgIWRlZmF1bHQ7XG5cbi8vLyBNYXhpbXVtIHdpZHRoIG9mIGA8aW5wdXQ+YCBlbGVtZW50cyBpbnNpZGUgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJyZWFrcG9pbnQgYXQgd2hpY2ggdG9wIGJhciBzd2l0Y2hlcyBmcm9tIG1vYmlsZSB0byBkZXNrdG9wIHZpZXcuXG4vLy8gQHR5cGUgQnJlYWtwb2ludFxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHRvcCBiYXIgY29udGFpbmVyLlxuQG1peGluIHRvcC1iYXItY29udGFpbmVyIHtcbiAgcGFkZGluZzogJHRvcGJhci1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG5cbiAgJixcbiAgdWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItYmFja2dyb3VuZDtcbiAgfVxuXG4gIC8vIENoZWNrIGlmICR0b3BiYXItYmFja2dyb3VuZCBpcyBkaWZmZXJudCBmcm9tICR0b3BiYXItYmFja2dyb3VuZC1zdWJtZW51XG4gIEBpZiAoJHRvcGJhci1iYWNrZ3JvdW5kICE9ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kKSB7XG4gICAgdWwgdWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzdHJhaW4gd2lkdGggb2YgaW5wdXRzIGJ5IGRlZmF1bHQgdG8gbWFrZSB0aGVtIGVhc2llciB0byBhcnJhbmdlXG4gIGlucHV0IHtcbiAgICBtYXgtd2lkdGg6ICR0b3BiYXItaW5wdXQtd2lkdGg7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gIH1cblxuICAvLyBUaGUgYWJvdmUgc3R5bGVzIHNob3VsZG4ndCBhcHBseSB0byBpbnB1dCBncm91cCBmaWVsZHNcbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgfVxuXG4gIGlucHV0LmJ1dHRvbiB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5cbi8vLyBNYWtlcyBzZWN0aW9ucyBvZiBhIHRvcCBiYXIgc3RhY2sgb24gdG9wIG9mIGVhY2ggb3RoZXIuXG5AbWl4aW4gdG9wLWJhci1zdGFja2VkIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLy8gU3ViLXNlY3Rpb25zXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbmRvZXMgdGhlIENTUyBhcHBsaWVkIGJ5IHRoZSBgdG9wLWJhci1zdGFja2VkKClgIG1peGluLlxuQG1peGluIHRvcC1iYXItdW5zdGFjayB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdG9wLWJhciB7XG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSB0b3AtYmFyLWNvbnRhaW5lcjtcbiAgfVxuICAudG9wLWJhciB7XG4gICAgLy8gU3RhY2sgb24gc21hbGwgc2NyZWVucyBieSBkZWZhdWx0XG4gICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICB9XG4gIC8vIFRvcCBiYXIgY29udGFpbmVyXG4gIC50b3AtYmFyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCR0b3BiYXItdW5zdGFjay1icmVha3BvaW50KSB7XG4gICAgICBAaW5jbHVkZSB0b3AtYmFyLXVuc3RhY2s7XG4gICAgfVxuXG4gICAgLy8gR2VuZXJhdGUgY2xhc3NlcyBmb3Igc3RhY2tpbmcgb24gZWFjaCBzY3JlZW4gc2l6ZSAoZGVmaW5lZCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzKVxuICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgJi5zdGFja2VkLWZvci0jeyRzaXplfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3AtYmFyLXN0YWNrZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gU3ViLXNlY3Rpb25zXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgbWFyZ2luOiAkdG9wYmFyLXRpdGxlLXNwYWNpbmc7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCxcbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgcGFkZGluZzogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgYm90dG9tOiAycHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIDAuMDAxMjU7XG5cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBkb3duKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IHdpdGhpbiBhIGNlcnRhaW4gYnJlYWtwb2ludC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yLW9ubHkoJHNpemUpIHtcbiAgJGxvd2VyLWJvdW5kLXNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gICR1cHBlci1ib3VuZC1zaXplOiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG5cbiAgLy8gbW9yZSBvZnRlbiB0aGFuIG5vdCB0aGlzIHdpbGwgYmUgY29ycmVjdCwganVzdCBvbmUgdGltZSByb3VuZCB0aGUgbG9vcCBpdCB3b24ndCBzbyBzZXQgaW4gc2NvcGUgaGVyZVxuICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSkgLSAwLjAwMTI1O1xuICAvLyB0ZXN0IGFjdHVhbCBsb3dlci1ib3VuZC1zaXplLCBpZiAwIHNldCBpdCB0byAwZW1cbiAgQGlmIHN0cmlwLXVuaXQoJGxvd2VyLWJvdW5kLXNpemUpID09IDAge1xuICAgICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKTtcbiAgfVxuXG4gIEBpZiAkdXBwZXItYm91bmQtc2l6ZSA9PSBudWxsIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICR1cHBlci1ib3VuZDogLXpmLWJwLXRvLWVtKCR1cHBlci1ib3VuZC1zaXplKTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHVwcGVyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvcigkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3Itb25seSgkc2l6ZSkge1xuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIG9ubHkpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdmlzaWJpbGl0eS1jbGFzc2VzIHtcbiAgLy8gQmFzaWMgaGlkaW5nIGNsYXNzZXNcbiAgLmhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pbnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAudmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlc3BvbnNpdmUgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAuaGlkZS1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBoaWRlLWZvcigkc2l6ZSk7XG4gICAgICB9XG5cbiAgICAgIC5zaG93LWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIHNob3ctZm9yKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaGlkZS1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBoaWRlLWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG5cbiAgICAuc2hvdy1mb3ItI3skc2l6ZX0tb25seSB7XG4gICAgICBAaW5jbHVkZSBzaG93LWZvci1vbmx5KCRzaXplKTtcbiAgICB9XG4gIH1cblxuICAvLyBTY3JlZW4gcmVhZGVyIHZpc2liaWxpdHkgY2xhc3Nlc1xuICAvLyBOZWVkIGEgXCJoaWRlLWZvci1zclwiIGNsYXNzPyBBZGQgYXJpYS1oaWRkZW49J3RydWUnIHRvIHRoZSBlbGVtZW50XG4gIC5zaG93LWZvci1zcixcbiAgLnNob3ctb24tZm9jdXMge1xuICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICB9XG5cbiAgLy8gT25seSBkaXNwbGF5IHRoZSBlbGVtZW50IHdoZW4gaXQncyBmb2N1c2VkXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICAmOmFjdGl2ZSxcbiAgICAmOmZvY3VzIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBMYW5kc2NhcGUgYW5kIHBvcnRyYWl0IHZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYW5kc2NhcGUpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIERhcmsgTW9kZSBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gICAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBJRTEwKyBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICBAbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAgIC5zaG93LWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICAuaGlkZS1mb3ItaWUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0aWNreSBWaXNpYmlsaXR5XG4gIC5zaG93LWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5pcy1zdHVjayAuaGlkZS1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIvLy8gQXBwbGllcyBiYXNpYyB0cmFuc2l0aW9uIHNldHRpbmdzIHRvIGFuIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gdHJhbnNpdGlvbi1iYXNpY3MoXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgQGluY2x1ZGUgLW1vdGlvbi11aS1kZWZhdWx0cztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZztcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5O1xufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIHNldHVwIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gc2V0dXAgZm9yIHRyYW5zaXRpb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1zdGFydCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBhY3RpdmUgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBhY3RpdmF0ZSBhIHRyYW5zaXRpb24gb24uXG5AbWl4aW4gdHJhbnNpdGlvbi1lbmQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpciksIHRydWUpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzdGFnZ2VyIGFuaW1hdGlvbiwgd2hpY2ggY2FuIGJlIHVzZWQgd2l0aCBBbmd1bGFyJ3MgYG5nLXJlcGVhdGAuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5LWFtb3VudCAtIEFtb3VudCBvZiB0aW1lIGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIHRvIGFkZCBiZXR3ZWVuIGVhY2ggaXRlbSdzIGFuaW1hdGlvbi5cbkBtaXhpbiBzdGFnZ2VyKCRkZWxheS1hbW91bnQpIHtcbiAgdHJhbnNpdGlvbi1kZWxheTogJGRlbGF5LWFtb3VudDtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMDsgLy8gUHJldmVudCBhY2NpZGVudGFsIENTUyBpbmhlcml0YW5jZVxufVxuIiwiLy8gc2Nzcy1saW50OmRpc2FibGUgSW1wb3J0YW50UnVsZSwgU3BhY2VBZnRlckNvbW1hLCBTaW5nbGVMaW5lUGVyUHJvcGVydHlcblxuQG1peGluIC1tb3Rpb24tdWktZGVmYXVsdHMge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IG1hcC1nZXQoJG1vdGlvbi11aS1lYXNpbmdzLCBkZWZhdWx0KTtcbn1cblxuLy8gVHJhbnNpdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLXRyYW5zaXRpb25zIHtcbiAgLy8gU2xpZGVcbiAgLnNsaWRlLWluLWRvd24gICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBkb3duKTsgfVxuICAuc2xpZGUtaW4tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHJpZ2h0KTsgfVxuICAuc2xpZGUtaW4tdXAgICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIHVwKTsgfVxuICAuc2xpZGUtaW4tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGxlZnQpOyB9XG4gIC5zbGlkZS1vdXQtZG93biAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgZG93bik7IH1cbiAgLnNsaWRlLW91dC1yaWdodCAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCByaWdodCk7IH1cbiAgLnNsaWRlLW91dC11cCAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCB1cCk7IH1cbiAgLnNsaWRlLW91dC1sZWZ0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBsZWZ0KTsgfVxuXG4gIC8vIEZhZGVcbiAgLmZhZGUtaW4gIHsgQGluY2x1ZGUgbXVpLWZhZGUoaW4sICAwLCAxKTsgfVxuICAuZmFkZS1vdXQgeyBAaW5jbHVkZSBtdWktZmFkZShvdXQsIDEsIDApOyB9XG5cbiAgLy8gSGluZ2VcbiAgLmhpbmdlLWluLWZyb20tdG9wICAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3ApOyB9XG4gIC5oaW5nZS1pbi1mcm9tLXJpZ2h0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWJvdHRvbSAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgYm90dG9tKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1sZWZ0ICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGxlZnQpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS14ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1pbi1mcm9tLW1pZGRsZS15ICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0LCBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS10b3AgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tcmlnaHQgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tYm90dG9tICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGJvdHRvbSk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBsZWZ0KTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXggeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCwgY2VudGVyKTsgfVxuXG4gIC8vIFNjYWxlXG4gIC5zY2FsZS1pbi11cCAgICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMC41LCAxKTsgfVxuICAuc2NhbGUtaW4tZG93biAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDEuNSwgMSk7IH1cbiAgLnNjYWxlLW91dC11cCAgIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAxLjUpOyB9XG4gIC5zY2FsZS1vdXQtZG93biB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMC41KTsgfVxuXG4gIC8vIFNwaW5cbiAgLnNwaW4taW4gICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjdyk7IH1cbiAgLnNwaW4tb3V0ICAgIHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjdyk7IH1cbiAgLnNwaW4taW4tY2N3ICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY2N3KTsgfVxuICAuc3Bpbi1vdXQtY2N3IHsgQGluY2x1ZGUgbXVpLXNwaW4ob3V0LCBjY3cpOyB9XG5cbiAgLy8gVHJhbnNpdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyB0cmFuc2l0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBBbmltYXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS1hbmltYXRpb25zIHtcbiAgLnNoYWtlICAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzaGFrZSk7IH1cbiAgLnNwaW4tY3cgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKTsgfVxuICAuc3Bpbi1jY3cgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4oY2N3KSk7IH1cbiAgLndpZ2dsZSAgIHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbih3aWdnbGUpOyB9XG5cbiAgLnNoYWtlLFxuICAuc3Bpbi1jdyxcbiAgLnNwaW4tY2N3LFxuICAud2lnZ2xlIHtcbiAgICBhbmltYXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB9XG5cbiAgLy8gQW5pbWF0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuICAuaW5maW5pdGUgeyBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTsgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZGVsYXlzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0tZGVsYXkgeyBhbmltYXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBJbnRlcm5hbCBjb3VudGVyIGZvciBjcmVhdGluZyB1bmlxdWUga2V5ZnJhbWUgbmFtZXNcbiQtbXVpLWN1c3RvbTogMDtcblxuLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMuIFVzZSB0aGlzIGZ1bmN0aW9uIGluc3RlYWQgb2YgYG11aS1hbmltYXRpb25gIGlmIHlvdSB3YW50IHRvIGNyZWF0ZSBhIGtleWZyYW1lIGFuaW1hdGlvbiAqd2l0aG91dCogYXV0b21hdGljYWxseSBhc3NpZ25pbmcgaXQgdG8gdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRuYW1lIC0gTmFtZSBvZiB0aGUga2V5ZnJhbWUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWtleWZyYW1lcygkbmFtZSwgJGVmZmVjdHMuLi4pIHtcbiAgJG9iajogLW11aS1wcm9jZXNzLWFyZ3MoJGVmZmVjdHMuLi4pO1xuICAkb2JqOiBtYXAtcmVtb3ZlKCRvYmosIG5hbWUpO1xuXG4gIEBrZXlmcmFtZXMgI3skbmFtZX0ge1xuICAgIC8vIE5vdyBpdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgQGVhY2ggJHBjdCwgJHByb3BzIGluICRvYmoge1xuICAgICAgI3stbXVpLWtleWZyYW1lLXBjdCgkcGN0KX0ge1xuICAgICAgICAvLyBMYXN0bHksIGl0ZXJhdGUgdGhyb3VnaCBlYWNoIENTUyBwcm9wZXJ0eSB3aXRoaW4gYSBwZXJjZW50YWdlIGFuZCBwcmludCBpdCBvdXRcbiAgICAgICAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkcHJvcHMge1xuICAgICAgICAgICN7JHByb3B9OiAjeyR2YWx1ZX07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzdHJpbmcgZm9yIGEgQ1NTIGtleWZyYW1lLCBieSBjb252ZXJ0aW5nIGEgbGlzdCBvZiBudW1iZXJzIHRvIGEgY29tbWEtc2VwYXJhdGVkIGxpc3Qgb2YgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGlucHV0IC0gTGlzdCBvZiBudW1iZXJzIHRvIHVzZS5cbi8vLyBAcmV0dXJuIHtTdHJpbmd9IEEgc2V0IG9mIGNvbW1hLXNlcGFyYXRlZCBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXBjdCgkaW5wdXQpIHtcbiAgJG91dHB1dDogKCk7XG5cbiAgQGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbnVtYmVyJyB7XG4gICAgJG91dHB1dDogKCRpbnB1dCAqIDElKTtcbiAgfSBAZWxzZSBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ2xpc3QnIHtcbiAgICBAZWFjaCAkaSBpbiAkaW5wdXQge1xuICAgICAgJG91dHB1dDogYXBwZW5kKCRvdXRwdXQsICgkaSAqIDElKSwgY29tbWEpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gXCIjeyRvdXRwdXR9XCI7XG59XG5cbi8vLyBQcmludHMgdGhlIENTUyBwcm9wZXJ0aWVzIGZyb20gYSBzcGVjaWZpYyBrZXkgaW4gYSBrZXlmcmFtZXMgbWFwLiBVc2VkIHRvIGJvcnJvdyBDU1MgZnJvbSBrZXlmcmFtZSBmdW5jdGlvbnMgZm9yIHVzZSBpbiB0cmFuc2l0aW9ucy5cbi8vLyBAcGFyYW0ge01hcH0gJGtmIC0gS2V5ZnJhbWUgbWFwIHRvIGV4dHJhY3QgZnJvbS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGtleSAtIEtleSBpbiB0aGUgbWFwIHRvIHByaW50IHRoZSBDU1Mgb2YuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gLW11aS1rZXlmcmFtZS1nZXQoJGtmLCAka2V5KSB7XG4gICRtYXA6IG1hcC1nZXQoJGtmLCAka2V5KTtcblxuICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRtYXAgb3IgKCkge1xuICAgIC8vIFNvbWUga2V5ZnJhbWUgbWFwcyBzdG9yZSB0cmFuc2Zvcm1zIGFzIHF1b3RlZCBzdHJpbmdzXG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkdmFsdWU6IHVucXVvdGUoJHZhbHVlKTtcbiAgICB9XG4gICAgI3skcHJvcH06ICR2YWx1ZTtcbiAgfVxufVxuXG4vLy8gUmVmb3JtYXRzIGEgbWFwIGNvbnRhaW5pbmcga2V5cyB3aXRoIGEgbGlzdCBvZiB2YWx1ZXMsIHNvIHRoYXQgZWFjaCBrZXkgaXMgYSBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gc3BsaXQgdXAuXG4vLy8gQHJldHVybiB7TWFwfSBBIHJlZm9ybWF0dGVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIFNwbGl0IGtleXMgd2l0aCBtdWx0aXBsZSB2YWx1ZXMgaW50byBpbmRpdmlkdWFsIGtleXNcbiAgQGVhY2ggJGtleSwgJGl0ZW0gaW4gJG1hcCB7XG4gICAgJGtleS10eXBlOiB0eXBlLW9mKCRrZXkpO1xuXG4gICAgQGlmICRrZXktdHlwZSA9PSAnbnVtYmVyJyB7XG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJGl0ZW0pKTtcbiAgICB9IEBlbHNlIGlmICRrZXktdHlwZSA9PSAnbGlzdCcge1xuICAgICAgQGVhY2ggJGsgaW4gJGtleSB7XG4gICAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgkazogJGl0ZW0pKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgYSBzZXJpZXMgb2Yga2V5ZnJhbWUgb2JqZWN0cyBpbnRvIG9uZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRtYXBzLi4uIC0gQSBzZXJpZXMgb2YgbWFwcyB0byBtZXJnZSwgYXMgaW5kaXZpZHVhbCBwYXJhbWV0ZXJzLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBrZXlmcmFtZSBvYmplY3QuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1jb21iaW5lKCRtYXBzLi4uKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBtYXAgcGFzc2VkIGluXG4gIEBlYWNoICRtYXAgaW4gJG1hcHMge1xuICAgIEBpZiAtbXVpLWlzLWZ1bmN0aW9uKCRtYXApIHtcbiAgICAgICRtYXA6IC1tdWktc2FmZS1jYWxsKCRtYXApO1xuICAgIH1cblxuICAgICRtYXA6IC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCk7XG5cbiAgICAvLyBJdGVyYXRlIHRocm91Z2ggZWFjaCBrZXlmcmFtZSBpbiB0aGUgbWFwXG4gICAgLy8gJGtleSBpcyB0aGUga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIC8vICR2YWx1ZSBpcyBhIG1hcCBvZiBDU1MgcHJvcGVydGllc1xuICAgIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAgICRuZXctdmFsdWU6ICgpO1xuXG4gICAgICBAaWYgbWFwLWhhcy1rZXkoJG5ldy1tYXAsICRrZXkpIHtcbiAgICAgICAgLy8gSWYgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUga2V5ZnJhbWUgJSwgYXBwZW5kIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogLW11aS1tZXJnZS1wcm9wZXJ0aWVzKG1hcC1nZXQoJG5ldy1tYXAsICRrZXkpLCAkdmFsdWUpO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIE90aGVyd2lzZSwgY3JlYXRlIGEgbmV3IG1hcCB3aXRoIHRoZSBuZXcgcHJvcGVydHlcbiAgICAgICAgJG5ldy12YWx1ZTogJHZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyBGaW5hbGx5LCBtZXJnZSB0aGUgbW9kaWZpZWQga2V5ZnJhbWUgdmFsdWUgaW50byB0aGUgb3V0cHV0IG1hcFxuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRuZXctdmFsdWUpKTtcbiAgICB9XG4gIH1cblxuICAvLyBNYWtlIGEgbmFtZSBmb3IgdGhlIGtleWZyYW1lc1xuICAkLW11aS1jdXN0b206ICQtbXVpLWN1c3RvbSArIDEgIWdsb2JhbDtcbiAgJG1hcC1uYW1lOiAobmFtZTogJ2N1c3RvbS0jeyQtbXVpLWN1c3RvbX0nKTtcbiAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgJG1hcC1uYW1lKTtcblxuICBAcmV0dXJuICRuZXctbWFwO1xufVxuXG4vLy8gQ29tYmluZXMgdHdvIG1hcHMgb2YgQ1NTIHByb3BlcnRpZXMgaW50byBvbmUgbWFwLiBJZiBib3RoIG1hcHMgaGF2ZSBhIHRyYW5zZm9ybSBwcm9wZXJ0eSwgdGhlIHZhbHVlcyBmcm9tIGVhY2ggd2lsbCBiZSBjb21iaW5lZCBpbnRvIG9uZSBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge01hcH0gJG9uZSAtIEZpcnN0IG1hcCB0byBtZXJnZS5cbi8vLyBAcGFyYW0ge01hcH0gJHR3byAtIFNlY29uZCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLW1lcmdlLXByb3BlcnRpZXMoJG9uZSwgJHR3bykge1xuICBAaWYgbWFwLWhhcy1rZXkoJG9uZSwgdHJhbnNmb3JtKSBhbmQgbWFwLWhhcy1rZXkoJHR3bywgdHJhbnNmb3JtKSB7XG4gICAgJHRyYW5zZm9ybTogam9pbihtYXAtZ2V0KCRvbmUsIHRyYW5zZm9ybSksIG1hcC1nZXQoJHR3bywgdHJhbnNmb3JtKSk7XG4gICAgJG9uZTogbWFwLW1lcmdlKCRvbmUsICh0cmFuc2Zvcm06ICR0cmFuc2Zvcm0pKTtcbiAgICAkdHdvOiBtYXAtcmVtb3ZlKCR0d28sIHRyYW5zZm9ybSk7XG4gIH1cblxuICBAcmV0dXJuIG1hcC1tZXJnZSgkb25lLCAkdHdvKTtcbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2xpZGluZyB0cmFuc2l0aW9uIGJ5IHRyYW5zbGF0aW5nIHRoZSBlbGVtZW50IGhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc2xpZGUgdG8uIENhbiBiZSBgdXBgLCBgcmlnaHRgLCBgZG93bmAsIG9yIGBsZWZ0YC4gQnkgZGVmYXVsdCBgbGVmdGAgYW5kIGByaWdodGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRhbW91bnQgWzEwMCVdIC0gTGVuZ3RoIG9mIHRoZSBzbGlkZSBhcyBhIHBlcmNlbnRhZ2UgdmFsdWUuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc2xpZGUgKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBudWxsLFxuICAkYW1vdW50OiAxMDAlLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzbGlkZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiAhPSBudWxsLCAkZGlyZWN0aW9uLCBpZigkc3RhdGUgPT0gaW4sIGxlZnQsIHJpZ2h0KSk7XG4gICRzbGlkZTogc2xpZGUoJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICAvLyBDU1MgT3V0cHV0XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG5cbiAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgZmFkZSB0cmFuc2l0aW9uIGJ5IGFkanVzdGluZyB0aGUgb3BhY2l0eSBvZiB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gW251bGxdIC0gT3BhY2l0eSB0byBzdGFydCBhdC4gTXVzdCBiZSBhIG51bWJlciBiZXR3ZWVuIDAgYW5kIDEuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBPcGFjaXR5IHRvIGVuZCBvbi4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1mYWRlKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmcm9tOiBpZigkZnJvbSAhPSBudWxsLCAkZnJvbSwgaWYoJHN0YXRlID09IGluLCAwLCAxKSk7XG4gICR0bzogaWYoJHRvICE9IG51bGwsICR0bywgaWYoJHN0YXRlID09IGluLCAxLCAwKSk7XG4gICRmYWRlOiBmYWRlKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAwKTtcblxuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMTAwKTtcbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBoaW5nZSB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZyb20gW2xlZnRdIC0gRWRnZSBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgZnJvbS4gQ2FuIGJlIGB0b3BgLCBgcmlnaHRgLCBgYm90dG9tYCwgb3IgYGxlZnRgLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGF4aXMgW2VkZ2VdIC0gQXhpcyBvZiB0aGUgZWxlbWVudCB0byByb3RhdGUgb24uIENhbiBiZSBgZWRnZWAgb3IgYGNlbnRlcmAuXG4vLy8gQHBhcmFtIHtMZW5ndGh9ICRwZXJzcGVjdGl2ZSBbMjAwMHB4XSAtIFBlcmNlaXZlZCBkaXN0YW5jZSBiZXR3ZWVuIHRoZSB2aWV3ZXIgYW5kIHRoZSBlbGVtZW50LiBBIGhpZ2hlciBudW1iZXIgd2lsbCBtYWtlIHRoZSByb3RhdGlvbiBlZmZlY3QgbW9yZSBwcm9ub3VuY2VkLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHR1cm4tb3JpZ2luIFtudWxsXSAtIFNpZGUgb2YgdGhlIGVsZW1lbnQgdG8gc3RhcnQgdGhlIHJvdGF0aW9uIGZyb20uIENhbiBiZSBgZnJvbS1iYWNrYCBvciBgZnJvbS1mcm9udGAuIEJ5IGRlZmF1bHQgYGZyb20tYmFja2AgYW5kIGBmcm9tLWZyb250YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWhpbmdlIChcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IGxlZnQsXG4gICRheGlzOiBlZGdlLFxuICAkcGVyc3BlY3RpdmU6IDIwMDBweCxcbiAgJHR1cm4tb3JpZ2luOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBoaW5nZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJHR1cm4tb3JpZ2luOiBpZigkdHVybi1vcmlnaW4gIT0gbnVsbCwgJHR1cm4tb3JpZ2luLCBpZigkc3RhdGUgPT0gaW4sIGZyb20tYmFjaywgZnJvbS1mcm9udCkpO1xuICAkaGluZ2U6IGhpbmdlKCRzdGF0ZSwgJGZyb20sICRheGlzLCAkcGVyc3BlY3RpdmUsICR0dXJuLW9yaWdpbik7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzY2FsaW5nIHRyYW5zaXRpb24uIEEgc2NhbGUgb2YgYDFgIG1lYW5zIHRoZSBlbGVtZW50IGlzIHRoZSBzYW1lIHNpemUuIExhcmdlciBudW1iZXJzIG1ha2UgdGhlIGVsZW1lbnQgYmlnZ2VyLCB3aGlsZSBudW1iZXJzIGxlc3MgdGhhbiAxIG1ha2UgdGhlIGVsZW1lbnQgc21hbGxlci5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGZyb20gW251bGxdIC0gU2l6ZSB0byBzdGFydCBhdC4gQnkgZGVmYXVsdCBgMGAgYW5kIGAxYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFtudWxsXSAtIFNpemUgdG8gZW5kIGF0LiBCeSBkZWZhdWx0IGAxYCBhbmQgYDBgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktem9vbShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IG51bGwsXG4gICR0bzogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2NhbGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRmcm9tOiBpZigkZnJvbSAhPSBudWxsLCAkZnJvbSwgaWYoJHN0YXRlID09IGluLCAwLCAxKSk7XG4gICR0bzogaWYoJHRvICE9IG51bGwsICR0bywgaWYoJHN0YXRlID09IGluLCAxLCAwKSk7XG4gICRzY2FsZTogem9vbSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNwaW5uaW5nIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuIFRoZSBgdHVybmAgdW5pdCBpcyB1c2VkIHRvIHNwZWNpZnkgaG93IGZhciB0byByb3RhdGUuIGAxdHVybmAgaXMgZXF1YWwgdG8gYSAzNjAtZGVncmVlIHNwaW4uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtudWxsXSAtIERpcmVjdGlvbiB0byBzcGluLiBTaG91bGQgYmUgYGN3YCAoY2xvY2t3aXNlKSBvciBgY2N3YCAoY291bnRlcmNsb2Nrd2lzZSkuIEJ5IGRlZmF1bHQgYGN3YCBhbmQgYGNjd2AgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRhbW91bnQgWzAuNzV0dXJuXSAtIEFtb3VudCB0byBlbGVtZW50IHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNwaW4oXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IGN3LFxuICAkYW1vdW50OiAwLjc1dHVybixcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc3Bpbi1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiAhPSBudWxsLCAkZGlyZWN0aW9uLCBpZigkc3RhdGUgPT0gaW4sIGN3LCBjY3cpKTtcbiAgJHNwaW46IHNwaW4oJHN0YXRlLCAkZGlyZWN0aW9uLCAkYW1vdW50KTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc3BpbiwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBrZXlmcmFtZSBmcm9tIG9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgYW5kIGFzc2lnbnMgaXQgdG8gdGhlIGVsZW1lbnQgYnkgYWRkaW5nIHRoZSBgYW5pbWF0aW9uLW5hbWVgIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1hbmltYXRpb24oJGFyZ3MuLi4pIHtcbiAgJG5hbWU6IG1hcC1nZXQoLW11aS1wcm9jZXNzLWFyZ3MoJGFyZ3MuLi4pLCBuYW1lKTtcbiAgYW5pbWF0aW9uLW5hbWU6IHVucXVvdGUoJG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vIERlZmF1bHQgVmFyaWFibGVzXG5cbi8vIFNsaWNrIGljb24gZW50aXR5IGNvZGVzIG91dHB1dHMgdGhlIGZvbGxvd2luZ1xuLy8gXCJcXDIxOTBcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGkFwiXG4vLyBcIlxcMjE5MlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaSXCJcbi8vIFwiXFwyMDIyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLigKJcIlxuXG4kc2xpY2stZm9udC1wYXRoOiBcIi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gICAgQGlmIGZ1bmN0aW9uLWV4aXN0cyhpbWFnZS11cmwpIHtcbiAgICAgICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWxvYWRlci1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG5AZnVuY3Rpb24gc2xpY2stZm9udC11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICAgICAgQHJldHVybiBmb250LXVybCgkdXJsKTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gICAgfVxufVxuXG4vKiBTbGlkZXIgKi9cblxuLnNsaWNrLWxpc3Qge1xuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmIHNsaWNrLWltYWdlLXVybChcImFqYXgtbG9hZGVyLmdpZlwiKSBjZW50ZXIgY2VudGVyIG5vLXJlcGVhdDtcbiAgICB9XG59XG5cbi8qIEljb25zICovXG5AaWYgJHNsaWNrLWZvbnQtZmFtaWx5ID09IFwic2xpY2tcIiB7XG4gICAgQGZvbnQtZmFjZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3RcIik7XG4gICAgICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cbn1cblxuLyogQXJyb3dzICovXG5cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICBmb250LXNpemU6IDBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHRvcDogNTAlO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogJHNsaWNrLWFycm93LWNvbG9yO1xuICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4uc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IC0yNXB4O1xuICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICByaWdodDogYXV0bztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAkc2xpY2stbmV4dC1jaGFyYWN0ZXI7XG4gICAgICAgIFtkaXI9XCJydGxcIl0gJiB7XG4gICAgICAgICAgICBjb250ZW50OiAkc2xpY2stcHJldi1jaGFyYWN0ZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIERvdHMgKi9cblxuLnNsaWNrLWRvdHRlZC5zbGljay1zbGlkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMjVweDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW9uLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgY29udGVudDogJHNsaWNrLWRvdC1jaGFyYWN0ZXI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkc2xpY2stZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkc2xpY2stZG90LXNpemU7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgICAgICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuc2xpY2stbGlzdCB7XG4gIC5zbGljay1sb2FkaW5nICYge1xuICAgIGJhY2tncm91bmQ6ICNmZmYgc2xpY2staW1hZ2UtdXJsKCcuLi9pbWFnZXMvdmVuZG9ycy9hamF4LWxvYWRlci5naWYnKSBjZW50ZXJcbiAgICAgIGNlbnRlciBuby1yZXBlYXQ7XG4gIH1cbn1cbiIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIi8qIE1hZ25pZmljIFBvcHVwIENTUyAqL1xuXG5AaW1wb3J0IFwic2V0dGluZ3NcIjtcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vL1xuLy8gQ29udGVudHM6XG4vL1xuLy8gMS4gR2VuZXJhbCBzdHlsZXNcbi8vICAgIC0gVHJhbnNsdXNjZW50IG92ZXJsYXlcbi8vICAgIC0gQ29udGFpbmVycywgd3JhcHBlcnNcbi8vICAgIC0gQ3Vyc29yc1xuLy8gICAgLSBIZWxwZXIgY2xhc3Nlc1xuLy8gMi4gQXBwZWFyYW5jZVxuLy8gICAgLSBQcmVsb2FkZXIgJiB0ZXh0IHRoYXQgZGlzcGxheXMgZXJyb3IgbWVzc2FnZXNcbi8vICAgIC0gQ1NTIHJlc2V0IGZvciBidXR0b25zXG4vLyAgICAtIENsb3NlIGljb25cbi8vICAgIC0gXCIxIG9mIFhcIiBjb3VudGVyXG4vLyAgICAtIE5hdmlnYXRpb24gKGxlZnQvcmlnaHQpIGFycm93c1xuLy8gICAgLSBJZnJhbWUgY29udGVudCB0eXBlIHN0eWxlc1xuLy8gICAgLSBJbWFnZSBjb250ZW50IHR5cGUgc3R5bGVzXG4vLyAgICAtIE1lZGlhIHF1ZXJ5IHdoZXJlIHNpemUgb2YgYXJyb3dzIGlzIHJlZHVjZWRcbi8vICAgIC0gSUU3IHN1cHBvcnRcbi8vXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuLy8gMS4gR2VuZXJhbCBzdHlsZXNcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBUcmFuc2x1c2NlbnQgb3ZlcmxheVxuLm1mcC1iZyB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyAyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG5cbiAgYmFja2dyb3VuZDogJG1mcC1vdmVybGF5LWNvbG9yO1xuICBvcGFjaXR5OiAkbWZwLW92ZXJsYXktb3BhY2l0eTtcbn1cblxuLy8gV3JhcHBlciBmb3IgcG9wdXBcbi5tZnAtd3JhcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyAzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47IC8vIGZpeGVzIHdlYmtpdCBidWcgdGhhdCBjYW4gY2F1c2UgXCJmYWxzZVwiIHNjcm9sbGJhclxufVxuXG4vLyBSb290IGNvbnRhaW5lclxuLm1mcC1jb250YWluZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAwICRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vLyBWZXJ0aWNhbCBjZW50ZXJlciBoZWxwZXJcbi5tZnAtY29udGFpbmVyIHtcbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxufVxuXG4vLyBSZW1vdmUgdmVydGljYWwgY2VudGVyaW5nIHdoZW4gcG9wdXAgaGFzIGNsYXNzIGBtZnAtYWxpZ24tdG9wYFxuLm1mcC1hbGlnbi10b3Age1xuICAubWZwLWNvbnRhaW5lciB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLy8gUG9wdXAgY29udGVudCBob2xkZXJcbi5tZnAtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyA1O1xufVxuLm1mcC1pbmxpbmUtaG9sZGVyLFxuLm1mcC1hamF4LWhvbGRlciB7XG4gIC5tZnAtY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG59XG5cbi8vIEN1cnNvcnNcbi5tZnAtYWpheC1jdXIge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuLm1mcC16b29tLW91dC1jdXIge1xuICAmLCAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgICBjdXJzb3I6IC1tb3otem9vbS1vdXQ7XG4gICAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICAgIGN1cnNvcjogem9vbS1vdXQ7XG4gIH1cbn1cbi5tZnAtem9vbSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20taW47XG4gIGN1cnNvcjogLW1vei16b29tLWluO1xuICBjdXJzb3I6IHpvb20taW47XG59XG4ubWZwLWF1dG8tY3Vyc29yIHtcbiAgLm1mcC1jb250ZW50IHtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLm1mcC1jbG9zZSxcbi5tZnAtYXJyb3csXG4ubWZwLXByZWxvYWRlcixcbi5tZnAtY291bnRlciB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG5cbi8vIEhpZGUgdGhlIGltYWdlIGR1cmluZyB0aGUgbG9hZGluZ1xuLm1mcC1sb2FkaW5nIHtcbiAgJi5tZnAtZmlndXJlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIEhlbHBlciBjbGFzcyB0aGF0IGhpZGVzIHN0dWZmXG5AaWYgJG1mcC11c2UtdmlzdWFsbHloaWRkZW4ge1xuICAvLyBGcm9tIEhUTUw1IEJvaWxlcnBsYXRlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvdjQuMi4wL2RvYy9jc3MubWQjdmlzdWFsbHloaWRkZW5cbiAgLm1mcC1oaWRlIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBjbGlwOiByZWN0KDAgMCAwIDApICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IC0xcHggIWltcG9ydGFudDtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgfVxufSBAZWxzZSB7XG4gIC5tZnAtaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAyLiBBcHBlYXJhbmNlXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuLy8gUHJlbG9hZGVyIGFuZCB0ZXh0IHRoYXQgZGlzcGxheXMgZXJyb3IgbWVzc2FnZXNcbi5tZnAtcHJlbG9hZGVyIHtcbiAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLTAuOGVtO1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiA4cHg7XG4gIHotaW5kZXg6ICRtZnAtei1pbmRleC1iYXNlICsgNDtcbiAgYSB7XG4gICAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkbWZwLWNvbnRyb2xzLXRleHQtY29sb3ItaG92ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vIEhpZGUgcHJlbG9hZGVyIHdoZW4gY29udGVudCBzdWNjZXNzZnVsbHkgbG9hZGVkXG4ubWZwLXMtcmVhZHkge1xuICAubWZwLXByZWxvYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBIaWRlIGNvbnRlbnQgd2hlbiBpdCB3YXMgbm90IGxvYWRlZFxuLm1mcC1zLWVycm9yIHtcbiAgLm1mcC1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIENTUy1yZXNldCBmb3IgYnV0dG9uc1xuYnV0dG9uIHtcbiAgJi5tZnAtY2xvc2UsXG4gICYubWZwLWFycm93IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyA2O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIH1cbiAgJjo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYm9yZGVyOiAwXG4gIH1cbn1cblxuXG4vLyBDbG9zZSBpY29uXG4ubWZwLWNsb3NlIHtcbiAgd2lkdGg6IDQ0cHg7XG4gIGhlaWdodDogNDRweDtcbiAgbGluZS1oZWlnaHQ6IDQ0cHg7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogJG1mcC1jb250cm9scy1vcGFjaXR5O1xuICBwYWRkaW5nOiAwIDAgMThweCAxMHB4O1xuICBjb2xvcjogJG1mcC1jb250cm9scy1jb2xvcjtcblxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMjhweDtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBCYXNrZXJ2aWxsZSwgbW9ub3NwYWNlO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAmOmFjdGl2ZSB7XG4gICAgdG9wOiAxcHg7XG4gIH1cbn1cbi5tZnAtY2xvc2UtYnRuLWluIHtcbiAgLm1mcC1jbG9zZSB7XG4gICAgY29sb3I6ICRtZnAtaW5uZXItY2xvc2UtaWNvbi1jb2xvcjtcbiAgfVxufVxuLm1mcC1pbWFnZS1ob2xkZXIsXG4ubWZwLWlmcmFtZS1ob2xkZXIge1xuICAubWZwLWNsb3NlIHtcbiAgICBjb2xvcjogJG1mcC1jb250cm9scy1jb2xvcjtcbiAgICByaWdodDogLTZweDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA2cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLy8gXCIxIG9mIFhcIiBjb3VudGVyXG4ubWZwLWNvdW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbG9yOiAkbWZwLWNvbnRyb2xzLXRleHQtY29sb3I7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi8vIE5hdmlnYXRpb24gYXJyb3dzXG5AaWYgJG1mcC1pbmNsdWRlLWFycm93cyB7XG4gIC5tZnAtYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBvcGFjaXR5OiAkbWZwLWNvbnRyb2xzLW9wYWNpdHk7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRvcDogNTAlO1xuICAgIG1hcmdpbi10b3A6IC01NXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDkwcHg7XG4gICAgaGVpZ2h0OiAxMTBweDtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gICAgJjphY3RpdmUge1xuICAgICAgbWFyZ2luLXRvcDogLTU0cHg7XG4gICAgfVxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gICAgICBib3JkZXI6IG1lZGl1bSBpbnNldCB0cmFuc3BhcmVudDtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcblxuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMTNweDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7XG4gICAgICB0b3A6OHB4O1xuICAgIH1cblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGJvcmRlci10b3Atd2lkdGg6IDIxcHg7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xuICAgICAgb3BhY2l0eTogMC43O1xuICAgIH1cblxuICB9XG5cbiAgLm1mcC1hcnJvdy1sZWZ0IHtcbiAgICBsZWZ0OiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxN3B4IHNvbGlkICRtZnAtY29udHJvbHMtY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMzFweDtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gICAgICBib3JkZXItcmlnaHQ6IDI3cHggc29saWQgJG1mcC1jb250cm9scy1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLm1mcC1hcnJvdy1yaWdodCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItbGVmdDogMTdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuICAgICAgbWFyZ2luLWxlZnQ6IDM5cHhcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLWxlZnQ6IDI3cHggc29saWQgJG1mcC1jb250cm9scy1ib3JkZXItY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuXG4vLyBJZnJhbWUgY29udGVudCB0eXBlXG5AaWYgJG1mcC1pbmNsdWRlLWlmcmFtZS10eXBlIHtcbiAgLm1mcC1pZnJhbWUtaG9sZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogJG1mcC1pZnJhbWUtcGFkZGluZy10b3A7XG4gICAgcGFkZGluZy1ib3R0b206ICRtZnAtaWZyYW1lLXBhZGRpbmctdG9wO1xuICAgIC5tZnAtY29udGVudCB7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAkbWZwLWlmcmFtZS1tYXgtd2lkdGg7XG4gICAgfVxuICAgIC5tZnAtY2xvc2Uge1xuICAgICAgdG9wOiAtNDBweDtcbiAgICB9XG4gIH1cbiAgLm1mcC1pZnJhbWUtc2NhbGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLXRvcDogJG1mcC1pZnJhbWUtcmF0aW8gKiAxMDAlO1xuICAgIGlmcmFtZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJveC1zaGFkb3c6ICRtZnAtc2hhZG93O1xuICAgICAgYmFja2dyb3VuZDogJG1mcC1pZnJhbWUtYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIEltYWdlIGNvbnRlbnQgdHlwZVxuQGlmICRtZnAtaW5jbHVkZS1pbWFnZS10eXBlIHtcblxuICAvKiBNYWluIGltYWdlIGluIHBvcHVwICovXG4gIGltZyB7XG4gICAgJi5tZnAtaW1nIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBwYWRkaW5nOiAkbWZwLWltYWdlLXBhZGRpbmctdG9wIDAgJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIC8qIFRoZSBzaGFkb3cgYmVoaW5kIHRoZSBpbWFnZSAqL1xuICAubWZwLWZpZ3VyZSB7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6ICRtZnAtaW1hZ2UtcGFkZGluZy10b3A7XG4gICAgICBib3R0b206ICRtZnAtaW1hZ2UtcGFkZGluZy1ib3R0b207XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIGJveC1zaGFkb3c6ICRtZnAtc2hhZG93O1xuICAgICAgYmFja2dyb3VuZDogJG1mcC1pbWFnZS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgICBzbWFsbCB7XG4gICAgICBjb2xvcjogJG1mcC1jYXB0aW9uLXN1YnRpdGxlLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICB9XG4gICAgZmlndXJlIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLm1mcC1ib3R0b20tYmFyIHtcbiAgICBtYXJnaW4tdG9wOiAtJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbSArIDQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTAwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxuICAubWZwLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgIGNvbG9yOiAkbWZwLWNhcHRpb24tdGl0bGUtY29sb3I7XG4gICAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAgIHBhZGRpbmctcmlnaHQ6IDM2cHg7IC8vIGxlYXZlIHNvbWUgc3BhY2UgZm9yIGNvdW50ZXIgYXQgcmlnaHQgc2lkZVxuICB9XG5cbiAgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgIC5tZnAtY29udGVudCB7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLm1mcC1nYWxsZXJ5IHtcbiAgICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgICAubWZwLWZpZ3VyZSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIEBpZiAkbWZwLWluY2x1ZGUtbW9iaWxlLWxheW91dC1mb3ItaW1hZ2Uge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSBhbmQgKG9yaWVudGF0aW9uOmxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XG4gICAgICAvKipcbiAgICAgICAqIFJlbW92ZSBhbGwgcGFkZGluZ3MgYXJvdW5kIHRoZSBpbWFnZSBvbiBzbWFsbCBzY3JlZW5cbiAgICAgICAqL1xuICAgICAgLm1mcC1pbWctbW9iaWxlIHtcbiAgICAgICAgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgJi5tZnAtaW1nIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZnAtZmlndXJlIHtcbiAgICAgICAgICAvLyBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2VcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgc21hbGwge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1ib3R0b20tYmFyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNik7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgcGFkZGluZzogM3B4IDVweDtcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAmOmVtcHR5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tZnAtY291bnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDVweDtcbiAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgfVxuICAgICAgICAubWZwLWNsb3NlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIFNjYWxlIG5hdmlnYXRpb24gYXJyb3dzIGFuZCByZWR1Y2UgcGFkZGluZyBmcm9tIHNpZGVzXG5AbWVkaWEgYWxsIGFuZCAobWF4LXdpZHRoOiA5MDBweCkge1xuICAubWZwLWFycm93IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgfVxuICAubWZwLWFycm93LWxlZnQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICB9XG4gIC5tZnAtYXJyb3ctcmlnaHQge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuICB9XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6ICRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAkbWZwLXBvcHVwLXBhZGRpbmctbGVmdC1tb2JpbGU7XG4gIH1cbn1cblxuIiwiLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAgICAgIFNldHRpbmdzICAgICAgLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBvdmVybGF5XG4kbWZwLW92ZXJsYXktY29sb3I6ICAgICAgICAgICAgICAgICAgICMwYjBiMGIgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBvdmVybGF5IHNjcmVlblxuJG1mcC1vdmVybGF5LW9wYWNpdHk6ICAgICAgICAgICAgICAgICAwLjggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAgLy8gT3BhY2l0eSBvZiBvdmVybGF5IHNjcmVlblxuJG1mcC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgICAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KSAhZGVmYXVsdDsgLy8gU2hhZG93IG9uIGltYWdlIG9yIGlmcmFtZVxuXG4vLyBzcGFjaW5nXG4kbWZwLXBvcHVwLXBhZGRpbmctbGVmdDogICAgICAgICAgICAgIDhweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAvLyBQYWRkaW5nIGZyb20gbGVmdCBhbmQgZnJvbSByaWdodCBzaWRlXG4kbWZwLXBvcHVwLXBhZGRpbmctbGVmdC1tb2JpbGU6ICAgICAgIDZweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAvLyBTYW1lIGFzIGFib3ZlLCBidXQgaXMgYXBwbGllZCB3aGVuIHdpZHRoIG9mIHdpbmRvdyBpcyBsZXNzIHRoYW4gODAwcHhcblxuJG1mcC16LWluZGV4LWJhc2U6ICAgICAgICAgICAgICAgICAgICAxMDQwICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gQmFzZSB6LWluZGV4IG9mIHBvcHVwXG5cbi8vIGNvbnRyb2xzXG4kbWZwLWluY2x1ZGUtYXJyb3dzOiAgICAgICAgICAgICAgICAgIHRydWUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbmNsdWRlIHN0eWxlcyBmb3IgbmF2IGFycm93c1xuJG1mcC1jb250cm9scy1vcGFjaXR5OiAgICAgICAgICAgICAgICAwLjY1ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gT3BhY2l0eSBvZiBjb250cm9sc1xuJG1mcC1jb250cm9scy1jb2xvcjogICAgICAgICAgICAgICAgICAjRkZGICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gQ29sb3Igb2YgY29udHJvbHNcbiRtZnAtY29udHJvbHMtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgIzNGM0YzRiAhZGVmYXVsdDsgXHQgICAgICAgICAgICAgICAgIC8vIEJvcmRlciBjb2xvciBvZiBjb250cm9sc1xuJG1mcC1pbm5lci1jbG9zZS1pY29uLWNvbG9yOiAgICAgICAgICAjMzMzICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gQ29sb3Igb2YgY2xvc2UgYnV0dG9uIHdoZW4gaW5zaWRlXG4kbWZwLWNvbnRyb2xzLXRleHQtY29sb3I6ICAgICAgICAgICAgICNDQ0MgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBwcmVsb2FkZXIgYW5kIFwiMSBvZiBYXCIgaW5kaWNhdG9yXG4kbWZwLWNvbnRyb2xzLXRleHQtY29sb3ItaG92ZXI6ICAgICAgICNGRkYgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBIb3ZlciBjb2xvciBvZiBwcmVsb2FkZXIgYW5kIFwiMSBvZiBYXCIgaW5kaWNhdG9yXG5cbi8vIElmcmFtZS10eXBlIG9wdGlvbnNcbiRtZnAtaW5jbHVkZS1pZnJhbWUtdHlwZTogICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEVuYWJsZSBJZnJhbWUtdHlwZSBwb3B1cHNcbiRtZnAtaWZyYW1lLXBhZGRpbmctdG9wOiAgICAgICAgICAgICAgNDBweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIElmcmFtZSBwYWRkaW5nIHRvcFxuJG1mcC1pZnJhbWUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gQmFja2dyb3VuZCBjb2xvciBvZiBpZnJhbWVzXG4kbWZwLWlmcmFtZS1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAvLyBNYXhpbXVtIHdpZHRoIG9mIGlmcmFtZXNcbiRtZnAtaWZyYW1lLXJhdGlvOiAgICAgICAgICAgICAgICAgICAgOS8xNiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIFJhdGlvIG9mIGlmcmFtZSAoOS8xNiA9IHdpZGVzY3JlZW4sIDMvNCA9IHN0YW5kYXJkLCBldGMuKVxuXG4vLyBJbWFnZS10eXBlIG9wdGlvbnNcbiRtZnAtaW5jbHVkZS1pbWFnZS10eXBlOiAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEVuYWJsZSBJbWFnZS10eXBlIHBvcHVwc1xuJG1mcC1pbWFnZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG1mcC1pbWFnZS1wYWRkaW5nLXRvcDogICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSW1hZ2UgcGFkZGluZyB0b3BcbiRtZnAtaW1hZ2UtcGFkZGluZy1ib3R0b206ICAgICAgICAgICAgNDBweCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEltYWdlIHBhZGRpbmcgYm90dG9tXG4kbWZwLWluY2x1ZGUtbW9iaWxlLWxheW91dC1mb3ItaW1hZ2U6IHRydWUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBSZW1vdmVzIHBhZGRpbmdzIGZyb20gdG9wIGFuZCBib3R0b21cblxuLy8gSW1hZ2UgY2FwdGlvbiBvcHRpb25zXG4kbWZwLWNhcHRpb24tdGl0bGUtY29sb3I6ICAgICAgICAgICAgICNGM0YzRjMgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAvLyBDYXB0aW9uIHRpdGxlIGNvbG9yXG4kbWZwLWNhcHRpb24tc3VidGl0bGUtY29sb3I6ICAgICAgICAgICNCREJEQkQgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAvLyBDYXB0aW9uIHN1YnRpdGxlIGNvbG9yXG5cbi8vIEExMXlcbiRtZnAtdXNlLXZpc3VhbGx5aGlkZGVuOiAgICAgICAgICAgICAgZmFsc2UgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vIEhpZGUgY29udGVudCBmcm9tIGJyb3dzZXJzLCBidXQgbWFrZSBpdCBhdmFpbGFibGUgZm9yIHNjcmVlbiByZWFkZXJzXG4iLCIvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMS4gR2VuZXJhbCAoRm91bmRhdGlvbiBPdmVycmlkZXMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLy8gY29sb3JzXG4kZ3JheTM6IzMzMzMzMztcbiRncmF5NDojNDQ0NDQ0O1xuJGdyYXk1OiM1NTU1NTU7XG4kZ3JheTU3OiM1NzU3NTc7XG4kZ3JheTY6IzY2NjY2NjtcbiRncmF5NzojNzc3Nzc3O1xuJGdyYXk4OiM4ODg4ODg7XG4kZ3JheThiOiM4YjhiOGI7XG4kZ3JheTk6Izk5OTk5OTtcbiRncmF5OUU6IzllOWU5ZTtcbiRncmF5QTojYWFhYWFhO1xuJGdyYXlDOiNjY2NjY2M7XG4kZ3JheUNBOiNjYWNhY2E7XG4kZ3JheUQ6I2RkZGRkZDtcbiRncmF5RDQ6I2Q0ZDRkNDtcbiRncmF5RDU6I2Q1ZDVkNTtcbiRncmF5RTojZWVlZWVlO1xuJGdyYXlFRDojZWRlZGVkO1xuJGdyYXlFRjojZWZlZmVmO1xuJGdyYXlFNjojZTZlNmU2O1xuJGdyYXlFNzojZTdlN2U3O1xuJGdyYXlGMTojZjFmMWYxO1xuJGdyYXlGNDojZjRmNGY0O1xuJGdyYXlGNzojZjdmN2Y3O1xuJGdyYXlGODojZjhmOGY4O1xuXG4kd2hpdGVGOiNmZmZmZmY7XG4kd2hpdGVGMTojZjFmMWYxO1xuJHdoaXRlRjM6I2YzZjNmMztcbiR3aGl0ZUY1OiNmNWY1ZjU7XG4kd2hpdGVGNzojZjdmN2Y3O1xuJHdoaXRlRjg6I2Y4ZjhmODtcblxuJGJsYWNrMDojMDAwMDAwO1xuXG4kYmx1ZTojMzg5N2YxO1xuXG4kZ3JlZW46IzhiYzQ0MztcblxuJHJlZDogI2ViMjEyZTtcblxuJHByaW1hcnktY29sb3I6JHJlZDtcblxuJGJvZHktZm9udC1mYW1pbHk6J1JvYm90bycsIHNhbnMtc2VyaWY7XG4kaGVhZGluZy1mb250LWZhbWlseTonVGVrbycsIHNhbnMtc2VyaWY7XG4kdGl0bGUtZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4kZm9udC1wcmltYXJ5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiRmb250LXRoaXJkYXJ5OiAkaGVhZGluZy1mb250LWZhbWlseTtcblxuICAvLyBmaXRtZW50XG4gICRkZXRhaWwtZm9udC1mYW1pbHk6ICdBcmlhbCcsIHNhbnMtc2VyaWY7XG5cbiAgLy8gSW52ZW50b3J5XG4gICRibHVlOiAjMzM2Njk5O1xuICAkZ3JlZW46IzMzY2MzMztcbiAgJHllbGxvdzojZjRhODI2O1xuICAkZ3JheTogIzdmODI4MztcbiAgJGxpZ2h0LXJlZDojZWQwMDFhO1xuICAkaW52LWxpZ2h0LWdyYXk6I2U0ZTRlNDtcbiAgLy8gJGhlYWRpbmctZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICRib2R5LWZvbnQtZmFtaWx5LXJlZ3VsYXI6JGJvZHktZm9udC1mYW1pbHk7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxLiBHZW5lcmFsIChGb3VuZGF0aW9uIE92ZXJyaWRlcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIG1hcmdpbjowO1xuICAmLnNsaWRlLWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gIH1cblxuICAvLyBwYWdlIHRyYW5zaXN0aW9uc1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjdzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAmLmZhZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogOTAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogJGJsYWNrO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuaDEge1xuICBmb250LXNpemU6Mi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6MTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICAvL2xldHRlci1zcGFjaW5nOi01cHg7XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6MnJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOjEuNXJlbTtcbn1cbnAge1xuICBjb2xvcjokYmxhY2s7XG59XG5hIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgfVxufVxuXG5idXR0b24ge1xuXG59XG5cbnVsLFxub2wge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG51bCB7XG4gIGxpc3Qtc3R5bGU6bm9uZTtcbn1cblxudGFibGUge1xuICBtaW4td2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJvcmRlcjogMDtcbn1cblxudGFibGUgdHIgdGQsXG50YWJsZSB0aGVhZCB0ciB0aCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxudGFibGUgdGhlYWQgdHIgdGgge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZDogIzcwNzA3MDtcbn1cblxuLmJnLWltZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLmhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLnByb2R1Y3QtcGFyYWdyYXBoIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuXG4uaW5mbyB7XG4gICYtLWxpbWl0IHtcbiAgICBsaW5lLWhlaWdodDogMS4yZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gICYtLWhlaWdodCB7XG4gICAgaGVpZ2h0OiA2ZW07XG4gIH1cbn1cblxuLnBhcmFsbGF4IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgaDEsXG4gIGgyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgICB0b3A6IDI1JTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6NC41cmVtIDUuNDM3NXJlbTtcbiAgICB9XG4gIH1cbiAgaDEge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgbGV0dGVyLXNwYWNpbmc6LS4zNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjYuNXJlbTtcbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0zcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTpsb3dlcmNhc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzMzMztcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIC5iZy10b3Age1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcDtcbiAgICB9XG4gIH1cbiAgLmltZzphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBjb250ZW50OiAnJztcbiAgICAvL29wYWNpdHk6IDAuNDtcbiAgICAvL2JhY2tncm91bmQ6ICMwMDA7XG4gIH1cbn1cblxuLndoaXRlLXBvcHVwIHtcbiAgYmFja2dyb3VuZDogJHdoaXRlO1xuICBtYXJnaW46IDIwcHggYXV0bztcbiAgbWF4LXdpZHRoOiA0MDBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogYXV0bztcbiAgLnBvcHVwLWhlYWRlciB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxufVxuXG4ubm8tcmVzdWx0cyB7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLm92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6IHdoaXRlO1xuICBkaXNwbGF5OiBub25lO1xuICAmLS1uYXYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMy4ycmVtO1xuICB9XG59XG5cbi5wcmltYXJ5IHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4ucHJpbWFyeS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4ucHJpbWFyeS1idG4ge1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIHBhZGRpbmc6IDAuOHJlbSAxLjlyZW07XG4gIG1hcmdpbjogMDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYSB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgfVxufVxuXG4ucmVkLWJnIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi5ibGFjay1mb250IHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5yZWQge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59XG5cbi53aGl0ZSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnV0dG9uIHtcbiAgbWF4LXdpZHRoOiAxNjZweDtcbiAgd2lkdGg6MTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gIGZvbnQtc2l6ZTogLjdyZW07XG4gIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgcGFkZGluZzogLjc1cmVtO1xuICBib3JkZXI6MnB4IHNvbGlkICRibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICY6aG92ZXIge1xuICAgIGJvcmRlci1jb2xvcjokZ3JheTY7XG4gIH1cbn1cblxuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXlFNztcbiAgY29sb3I6ICMzMjMyMzI7XG59XG5cbi5ibGFjayxcbi5idXR0b24uYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLFxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ1dHRvbjpob3ZlciB7XG4gIFxufVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb250LWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmZvbnQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5mb250LWhlYXZ5IHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZy1yZWNhcHRjaGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI2NhcHRjaGFDaGVjayB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBhZGRlZCB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZGRlZC5leHRyYSB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZGRlZC5zaG9ydCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi5wYWRkZWQtbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuXG4ucGFkZGVkLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xufVxuXG4uY29udGFpbmVyLXBhZGRpbmctLWIge1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbn1cblxuLmFjY29yZGlvbiAuYWNjb3JkaW9uLW5hdmlnYXRpb24+LmNvbnRlbnQge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZD4gOmZpcnN0LWNoaWxkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFuY2hvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtM3JlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubWVudS5zaW1wbGU+bGk+YSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogOTk7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi50aXRsZS1iYXIsXG4udG9wLWJhciB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi50b3AtYmFyLFxuLnRvcC1iYXIgdWwge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnRvcC1iYXIgdWwuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMSk7XG4gIGJvcmRlcjogMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQuaXMtZG93bi1hcnJvdz5hOjphZnRlciB7XG4gIHJpZ2h0OiAwcHg7XG59XG5cbi5kcm9wZG93bi5tZW51PmxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50PmEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4uZHJvcGRvd24ubWVudT5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5hOmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWw+bGkub3BlbnMtcmlnaHQ+YTo6YWZ0ZXIge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRwcmltYXJ5LWNvbG9yO1xuICByaWdodDogNXB4O1xufVxuXG4uZHJvcGRvd24ubWVudT5saT5hOmhvdmVyLFxuLmRyb3Bkb3duLm1lbnU+bGk+dWwgbGkgYTpob3Zlcixcbi5kcm9wZG93bi5tZW51PmxpLmlzLWFjdGl2ZT5hIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4uZHJvcGRvd24ubWVudT5saT51bCBsaSBhIHtcbiAgcGFkZGluZzogMC41cmVtIDByZW07XG59XG5cbi5kcm9wZG93bi5tZW51PmxpLm9wZW5zLXJpZ2h0Pi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxNTQlO1xuICBtaW4td2lkdGg6IDI4MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbn1cblxuYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuI2luc3RhZmVlZCAuY29sdW1uIHtcbiAgcGFkZGluZzogMXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwLjA2M2VtKSB7XG4gIC5pbnQuc2l0ZS1jb250ZW50IC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjZyZW07XG4gIH1cbn1cblxuLyoqKioqKioqKiBWSURFTyAqKioqKioqKiovXG5cbiN2aWRlb3Mge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xuICBhOmhvdmVyIHtcbiAgICBjb2xvcjogIzY2NjtcbiAgfVxuICBhOjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbiAgI25leHQtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICB9XG4gICN2aWRlby1jb250YWluZXIgLmNvbHVtbiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLy8gKioqKioqKioqKiBQT1BVUCAqKioqKioqKioqIC8vXG4ud2hpdGUtcG9wdXAtLXdpZGUge1xuICBtYXgtd2lkdGg6IDcwMHB4O1xufVxuXG4vLyAqKioqKioqKioqIEhPVkVSIElURU1TICoqKioqKioqKiogLy9cbi5ob3Zlci1pdGVtLWxpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMXJlbSAwO1xufVxuXG4uaG92ZXItaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICY6aG92ZXIge1xuICAgIC5ob3Zlci1pdGVtX19pbWcge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbiAgfVxuICAmX19oZWFkZXIge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgfVxuICAmX19oZWFkZXIsXG4gIGg2IHNtYWxsIHtcbiAgICBjb2xvcjogIzU0NTQ1NDtcbiAgfVxuICAmX19pbWcge1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC1hbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuXG4vLyAqKioqKioqKioqIFByb2R1Y3QgRGV0YWlsIFBvcHVwIE92ZXJyaWRlICoqKioqKioqKiogLy9cbi5wb3B1cC1ia2cgLm1mcC1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucG9wdXAtYmtnIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogIzAwMDtcbiAgcmlnaHQ6IDA7XG59XG5cblxuLy8gU29jaWFsIE1lZGlhIEljb25zIC8vXG4uc29jaWFsLW1lbnUge1xuICBkaXNwbGF5OmZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gID4gZGl2IHtcbiAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgZm9udC1zaXplOjEuNzVyZW07XG4gIH1cbn1cblxuLnJvdyB7XG4gIG1heC13aWR0aDo5MHJlbTtcbn1cblxuLy8gcGFnZSBoZWFkZXJcbi5wYWdlLWhlYWRlciB7XG4gIHRleHQtYWxpZ246bGVmdDtcbiAgY29sb3I6JHdoaXRlO1xuLyogIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gIH0qL1xuICAucm93IHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIGgxIHtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICBmb250LXdlaWdodDozMDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzotLjA1cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjIuNzVyZW07XG4gICAgfVxuICAgIC8qXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOjIxNHB4O1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICB9Ki9cbiAgfVxuICBwIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDoyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBtYXgtd2lkdGg6MzcwcHg7XG4gICAgfVxuICB9XG4gIC8qXG4gIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpe1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZToxNDAlO1xuICAgIH1cbiAgfSovXG4gIC5wYWdlLXRpdGxlIHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNSk7XG4gICAgcGFkZGluZzoycmVtIDA7XG4gICAgLy9taW4taGVpZ2h0OjE1MHB4O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6MjAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6MjMwcHg7XG4gICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIH1cbiAgfVxufVxuLypcbi5wYWdlLWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgLy9oZWlnaHQ6MTAwdmg7XG4gIH1cbiAgaDEge1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLnJvdyB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzowIDIuODEyNXJlbTtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6MXJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjRyZW0gMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4qL1xuXG4ucGFnZS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbToycmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICB9XG59XG5cblxuLmxvYWRpbmctcGFnZSB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB6LWluZGV4Ojk5OTk7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjokeWVsbG93O1xuICBoZWlnaHQ6MTAwdmg7XG4gIHRvcDowO1xuICByaWdodDowO1xuICBsZWZ0OjA7XG4gIGJvdHRvbTowO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBib3JkZXI6NjAwcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gIHRyYW5zaXRpb246YWxsIDFzIGVhc2UtaW4tb3V0O1xuICAmLmNsb3NlIHtcbiAgICBib3JkZXI6MHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gICYtcG9wdXAge1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHotaW5kZXg6OTk5OTtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6JHllbGxvdztcbiAgICBoZWlnaHQ6MTAwdmg7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBsZWZ0OjA7XG4gICAgYm90dG9tOjA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBib3JkZXI6NjAwcHggc29saWQgcmdiYSgwLDAsMCwuNyk7XG4gICAgdHJhbnNpdGlvbjphbGwgMXMgZWFzZS1pbi1vdXQ7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgICYuc2hvdyB7XG4gICAgICBvcGFjaXR5OjE7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgICAmLmZhbmN5Ym94LW1hcmdpbiB7XG4gICAgICBvcGFjaXR5OjA7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGluZyAvKiBTYWZhcmkgYW5kIENocm9tZSAqLyB7XG4gICAgICBmcm9tIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgcm90YXRpbmcge1xuICAgICAgZnJvbSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3RhdGluZyB7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC1tcy1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC1vLWFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBmb3h5Y2FydFxuW2RhdGEtZmMtc2lkZWNhcnRdICNmYyB7XG4gIG5hdiAuZmMtZml4ZWQtYnV0dG9uLXJpZ2h0IC5mYy1zaWRlY2FydC1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6JGJsdWU7XG4gIH1cbiAgLmZjLWFjdGlvbi0tY2hlY2tvdXQtLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDokYmx1ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRncmF5MztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBmaXRtZW50XG4jZml0bWVudC1wb3B1cCB7XG4gIHBhZGRpbmc6MnJlbTtcbiAgLmZpdG1lbnQtcG9wdXAtaWNvbiB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgY29sb3I6JHJlZDtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjZW50ZXI7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBoZWlnaHQ6YXV0bztcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBcbiAgICB9XG4gIH1cbiAgI2ZpdG1lbnRDbGVhciB7XG4gICAgZm9udC1zaXplOi44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjokcmVkO1xuICAgIH1cbiAgfVxufVxuLnByb2Nlc3Npbmcge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgY29sb3I6JHdoaXRlO1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAubWZwLWNsb3NlIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgJi53aGl0ZSB7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudCFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8gbmV3c2xldHRlciBwb3B1cFxuI25ld3NsZXR0ZXItcG9wdXAge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbWF4LXdpZHRoOjU4MHB4O1xuICBwYWRkaW5nOjNyZW07XG4gIGkge1xuICAgIGNvbG9yOiRyZWQ7XG4gICAgZm9udC1zaXplOjIuNXJlbTtcbiAgfVxuICBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICB9XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OjEuMztcbiAgfVxuICAudGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAuaWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgfVxuICAuY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB9XG4gICNtY19lbWJlZF9zaWdudXAge1xuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAmOjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xuICAgICAgICBjb2xvcjogJGdyYXk2O1xuICAgICAgICBvcGFjaXR5OiAxOyAvKiBGaXJlZm94ICovXG4gICAgICB9XG4gICAgICBcbiAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTAtMTEgKi9cbiAgICAgICAgY29sb3I6ICRncmF5NjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogTWljcm9zb2Z0IEVkZ2UgKi9cbiAgICAgICAgY29sb3I6ICRncmF5NjtcbiAgICAgIH1cbiAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LjI1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgd2lkdGg6MTc1cHg7XG4gICAgICAgIGhlaWdodDo1NHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgOS4gUGFnaW5hdGlvblxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnBhZ2luYXRpb24ge1xuICBsaSB7XG4gICAgYSB7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gIH1cbiAgLmN1cnJlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gIH1cbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEwLiBGb3Jtc1xuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIGhvbmV5cG90ICovXG4ub2hub2hvbmV5IHtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIHotaW5kZXg6IC0xO1xufVxuXG5cbi8qIGxvYWRlciAqL1xuLmxkcy1lbGxpcHNpcyxcbi5sZHMtZWxsaXBzaXMgZGl2IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cbi5sZHMtZWxsaXBzaXMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDgwcHg7XG4gIGhlaWdodDogODBweDtcbiAgY29sb3I6ICNiOWI5Yjk7XG59XG4ubGRzLWVsbGlwc2lzIGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMy4zMzMzM3B4O1xuICB3aWR0aDogMTMuMzMzMzNweDtcbiAgaGVpZ2h0OiAxMy4zMzMzM3B4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDEsIDApO1xufVxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDEpIHtcbiAgbGVmdDogOHB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczEgMC42cyBpbmZpbml0ZTtcbn1cbi5sZHMtZWxsaXBzaXMgZGl2Om50aC1jaGlsZCgyKSB7XG4gIGxlZnQ6IDhweDtcbiAgYW5pbWF0aW9uOiBsZHMtZWxsaXBzaXMyIDAuNnMgaW5maW5pdGU7XG59XG4ubGRzLWVsbGlwc2lzIGRpdjpudGgtY2hpbGQoMykge1xuICBsZWZ0OiAzMnB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczIgMC42cyBpbmZpbml0ZTtcbn1cbi5sZHMtZWxsaXBzaXMgZGl2Om50aC1jaGlsZCg0KSB7XG4gIGxlZnQ6IDU2cHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMyAwLjZzIGluZmluaXRlO1xufVxuQGtleWZyYW1lcyBsZHMtZWxsaXBzaXMxIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBsZHMtZWxsaXBzaXMzIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBsZHMtZWxsaXBzaXMyIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDI0cHgsIDApO1xuICB9XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxMS4gUG9wdXBzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLm1mcC13cmFwIHtcbiAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMyk7XG4gIGJhY2tkcm9wLWZpbHRlcjpibHVyKDNweCk7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxMi4geW91dHViZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi55dHAtcGF1c2Utb3ZlcmxheSwgI3BsYXllci1jb250cm9scywgI3BsYXllci1jb250cm9sLW92ZXJsYXkge1xuICBkaXNwbGF5Om5vbmUhaW1wb3J0YW50O1xufSIsIi50IHtcbiAgJi11cHBlcmNhc2Uge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgJi1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAmLS1zbSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4uY29sb3Ige1xuICAmLS1ncmF5IHtcbiAgICBjb2xvcjogJG1lZGl1bS1ncmF5O1xuICB9XG59XG5cbi5tYXJnaW4ge1xuICAmLS10YiB7XG4gICAgbWFyZ2luLXRvcDogMC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgfVxufVxuXG4ucGFkZGluZyB7XG4gICYtLXRiIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLmYge1xuICAmLWNlbnRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59IiwiLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEhlYWRlclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgaGVhZGVyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCwwLDApO1xuICAgIC8vYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsMCwwLDEpIDAlLCByZ2JhKDAsMCwwLDEpIDEwJSwgcmdiYSg1MSw1MSw1MSwxKSA5MCUsIHJnYmEoNTEsNTEsNTEsMSkgMTAwJSk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIC8qQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwwLDAsMSkgMCUsIHJnYmEoMCwwLDAsMSkgNDAlLCByZ2JhKDUxLDUxLDUxLDEpIDYwJSwgcmdiYSg1MSw1MSw1MSwxKSAxMDAlKTtcbiAgICB9Ki9cbiAgICAmLm1haW4ge1xuICAgICAgcGFkZGluZzouNzVyZW0gLjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MS4yNXJlbTtcbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICAvLyBzdGlja3lcbiAgICAmLnN0aWNreSB7XG4gICAgIC8vIG1hcmdpbi10b3A6MCFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICYuc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206YXV0b1xuICAgIH1cbiAgICAmLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIHRvcDowIWltcG9ydGFudDtcbiAgICB9XG4gICAgLy8gbWVudSBpY29uXG4gICAgLmNzcy0xaWQzbmZuIHtcbiAgICAgIGZpbGw6IG5vbmU7XG4gICAgICBzdHJva2U6ICR3aGl0ZTtcbiAgICB9XG4gICAgI3N2Zy1tZWdhbWVudS1vcGVuIHtcbiAgICAgIHdpZHRoOjE4cHg7XG4gICAgICBoZWlnaHQ6MThweDtcbiAgICAgIGZpbGw6JHdoaXRlO1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxcmVtO1xuICAgIH1cbiAgICAuaGVhZGVyLWxlZnQsLmhlYWRlci1jZW50ZXIsLmhlYWRlci1yaWdodCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIC5oZWFkZXItbGVmdCB7XG4gICAgICBzdmcgcGF0aCwgc3BhbiB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgc3Ryb2tlOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICAuY3NzLTF3aGJwa24ge1xuICAgICAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItY2VudGVyIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgICAuaGVhZGVyLWxvZ28ge1xuICAgICAgICBtYXgtd2lkdGg6MjIwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItcmlnaHQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OmZsZXgtZW5kO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIC5oZWFkZXItc29jaWFsIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZvb3Rlci1zb2NpYWwtZGl2aWRlciB7XG4gICAgICAgICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OjE2cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOjVweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbWVnYW1lbnVcbiAgICAmLm1lZ2FtZW51LWFjdGl2ZSB7XG4gICAgICAvL2JhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICAvKi5oZWFkZXItbGVmdCAuY3NzLTFpZDNuZm4sIC5oZWFkZXItbGVmdCBzcGFuIHtcbiAgICAgICAgc3Ryb2tlOiR3aGl0ZTtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmaWxsOiR3aGl0ZTtcbiAgICAgIH0qL1xuICAgIH1cbiAgICAubWVnYW1lbnUge1xuICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjNyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6M3JlbTtcbiAgICAgICAgaGVpZ2h0Ojc1dmg7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICYubWVudS1icmFuZHMge1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MnJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgICYtbWVudSB7XG4gICAgICAgIHVsLmRyb3Bkb3duLm1lbnUge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MS43NXJlbTtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgICAgcGFkZGluZzouMjVyZW0gMXJlbTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLypcbiAgICAgICAgdWwubWVudSB7XG4gICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCg0KSwgJjpudGgtY2hpbGQoNykge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1sYXN0LWNoaWxkKC1uKzQpe1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH0qL1xuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1lZ2FtZW51LWdhbGxlcnkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgICBvdmVyZmxvdzphdXRvO1xuICAgICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICAgIC8vIG1vYmlsZSBcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgcmlnaHQ6LTY0MHB4O1xuICAgICAgICBsZWZ0OjY0MHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMCwwLDAsMSkgMCUsIHJnYmEoMCwwLDAsMSkgMTAlLCByZ2JhKDUxLDUxLDUxLDEpIDkwJSwgcmdiYSg1MSw1MSw1MSwxKSAxMDAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgICAuY2xvc2UtbWVudS1icmFuZHMge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICB9XG4gICAgICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8vIGVuZCBtb2JpbGVcbiAgICAgICAgYSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYtaXRlbSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5icmFuZCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOjUwJTtcbiAgICAgICAgICAgICAgbWF4LWhlaWdodDozNnB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6MzhweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLWhvdmVyLW92ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7XG4gICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmRpc2NvdmVyLW1vcmUge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMTI1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC8qLmVuZCB7XG4gICAgICAgICAgbWluLWhlaWdodDoxNDBweDtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNDg0cHgpIGFuZCAobWF4LXdpZHRoOiA2NDBweCkge1xuICAgICAgICAgICAgbWluLWhlaWdodDoxNTVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6MTgycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9Ki9cbiAgICAgIH1cbiAgICB9XG4gICAgLmlzLWRyaWxsZG93biB7XG4gICAgICBtYXgtd2lkdGg6IDM3MHB4IWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ2Ni4xMjVweCFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICBoZWFkZXIge1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAvL2JhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIH1cbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MS4yNXJlbTtcbiAgICB9XG4gICAgLnRvcC1iYXIgeyBcbiAgICAgIFxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgICAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAvKlxuICAgICAgICAmLnJvdyB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoycmVtO1xuICAgICAgICB9Ki9cbiAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuMjVyZW07XG4gICAgICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgICAgICB3aWR0aDoyMCU7XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgIH1cbiAgICAgICAgI3Jlc3BvbnNpdmUtbWVudSB7XG4gICAgICAgICAgLy93aWR0aDo2MCU7XG4gICAgICAgICAgd2lkdGg6NjglO1xuICAgICAgICAgIC50b3AtYmFyLXJpZ2h0LCAudG9wLWJhci1yaWdodCA+IHVsIHtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIC50b3AtYmFyLXJpZ2h0ID4gdWwge1xuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5hdi1tZW51LXJpZ2h0IHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICB3aWR0aDoxMiU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgICAgICAgICAvL2NvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjUwcHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzouMDI1cmVtO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OjgwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDozcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjNyZW07XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIC8vY29sb3I6ICRibGFjaztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgICAgJi5hY3RpdmUtcGFnZSB7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgIGJvdHRvbTotLjZyZW07XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgICAgaGVpZ2h0OjNweDtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gIFxuICAgICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcbiAgICAgIH1cbiAgXG4gICAgICAuaHAtYnRuLWxpbmtzIGEge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjhyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDhweDtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgLy9mbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgPiBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgLy93aWR0aDo2N3B4O1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgLy9tYXgtd2lkdGg6IDE2NXB4O1xuICAgICAgfVxuICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAvL21hcmdpbi10b3A6LTIwcHg7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC8vbWF4LXdpZHRoOjE2NXB4O1xuICAgICAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubW9iaWxlLW5hdi1tZW51LXJpZ2h0IHtcbiAgICAgICAgdWwge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIC8qICAuaGVhZGVyLWxvZ28ge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICB0b3A6IC01cHg7XG4gIFxuICAgICAgYSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgICB9XG4gICAgfSovXG4gICAgLm5hdi1tZW51LXJpZ2h0IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG5cbiAgICBcblxuICB9XG4gIFxuICAvKiBtb2JpbGUgKi9cbiAgLm1lbnUtaWNvbi5kYXJrIHtcbiAgXG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgICBib3gtc2hhZG93OiAwIDdweCAwICNmZmZmZmYsIDAgMTRweCAwICNmZmZmZmY7XG4gICAgfVxuICB9XG4gIFxuICAvKiBNZWRpYSBRdWVyaWVzICovXG4gIFxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAgIC5tZW51PmxpOm5vdCgubWVudS10ZXh0KT5hIHtcbiAgICAgIHBhZGRpbmc6IDAuN3JlbSAwLjVyZW07XG4gICAgfVxuICBcbiAgICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbiAgXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgIGhlYWRlciB7XG4gICAgICBwYWRkaW5nOiAwO1xuICBcbiAgICAgIC5tZW51Lm5hdi1zb2NpYWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgXG4gICAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBcbiAgLyogICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7Ki9cbiAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIC8vbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgXG4gICAgICAudG9wLWJhciB7XG4gIFxuICAgICAgICAudG9wLWJhci1sZWZ0LFxuICAgICAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweDtcbiAgICAgICAgfVxuICBcbiAgICAgICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlZWVlO1xuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgdWwgdWwgZGl2IGRpdiB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gIFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZWVlZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIGhlYWRlci5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICB9XG4gIFxuICAgIC5tZW51LWljb246OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gICAgICBib3gtc2hhZG93OiAwIDdweCAwICM5OTk5OTksIDAgMTRweCAwICM5OTk5OTk7XG4gICAgfVxuICBcbiAgICAubWVudT5saSB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cbiAgXG4gICAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjEycHgpIHtcbiAgICBoZWFkZXIgLnRvcC1iYXIgYSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNjJweCkge1xuICAgIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gIFxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAzLiBUb3AgYmFyXG4gICAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gIFxuICAuc3RpY2t5LWNvbnRhaW5lciB7XG4gICAgei1pbmRleDogMjA7XG4gIH1cbiAgXG4gIGhlYWRlci5tYWluIHtcbiAgICAvL2JveC1zaGFkb3c6IDBweCA1cHggMTVweCAtNXB4IGJsYWNrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSBkb3duKSB7XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gIC8qI2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOjU2cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjExMnB4O1xuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCkge1xuICAgICAgcGFkZGluZy10b3A6MDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgJi5ocCB7XG4gICAgICAgIHBhZGRpbmctdG9wOjU2cHg7XG4gICAgICB9XG4gICAgfVxuICB9Ki9cbiAgLmJhc2tldC1pY29uIHtcbiAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gIH1cbiAgXG4gIGhlYWRlciB7XG4gIFxuICAgIC8qLy8vIFBlbmNpbCBOYXZpZ2F0aW9uIC8vLyovXG4gICAgLnBlbmNpbC10b3AtYmFyIHtcbiAgICAgIGhlaWdodDogNDRweDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZm9udC1zaXplOi43cmVtO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5yb3cge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wZW5jaWwtdG9wIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAucGVuY2lsLXRvcC1sb2dpbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjJyZW07XG4gICAgICAgIHBhZGRpbmc6LjY1cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBlbmNpbC10b3Atc2VhcmNoIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MHJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICBoZWlnaHQ6MS4yNXJlbTtcbiAgICAgICAgICBtYXgtd2lkdGg6MjAwcHg7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCA1cHggJGdyYXlDO1xuICAgICAgICAgIC8vbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDo2NSU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgXG4gICAgLnBlbmNpbC10b3AtYW5ub3VuY2VtZW50IHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIFxuICAgIC5wZW5jaWwtdG9wLW1lbnUgLm1lbnU+bGk6bm90KC5tZW51LXRleHQpPmEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiAkbWVkaXVtLWdyYXk7XG4gICAgICBmb250LWZhbWlseTogJGZvbnQtdGhpcmRhcnk7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMXJlbSAwLjhyZW07XG4gIFxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAuM3JlbTtcbiAgICAgIH1cbiAgXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgXG4gICAgLnBlbmNpbC10b3AtYW5ub3VuY2VtZW50IHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1wcmltYXJ5O1xuICAgICAgcGFkZGluZzogOHB4IDA7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgXG4gICAgLmFubm91bmNlbWVudC1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICB9XG4gICAgfVxuICBcbiAgICAuYW5ub3VuY2VtZW50LXNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIFxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgICBmb250LXNpemU6IDAuOTtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIC8qLy8vIE1haW4gTmF2aWdhdGlvbiAvLy8qL1xuICAgIC50b3AtYmFyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OnNwYWNlLWJldHdlZW47XG4gICAgICB9XG4gIFxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NHJlbSkge1xuICAgICAgICBoZWlnaHQ6MTA1cHg7XG4gICAgICB9XG4gIFxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgXG4gICAgICAubWVudS5pY29uLXRvcD5saT5hIHtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyYXk7XG4gIFxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICBcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gIFxuICAgICAgLmZpcnN0LXN1YiB7XG4gICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgdG9wOiA0NHB4ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gIFxuICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAjcmVzcG9uc2l2ZS1tZW51IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBkcm9wZG93biBtZW51XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOjA7XG4gICAgYm9yZGVyLXRvcDowO1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuOSk7XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBtaW4td2lkdGg6MjcycHg7XG4gICAgXG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gdWwge1xuICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OjAuMXJlbTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUgPiBsaSA+IHVsIGxpIGEge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIHBhZGRpbmctbGVmdDouNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDouNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxuICAuZHJvcGRvd24ubWVudSA+IGxpOmxhc3QtY2hpbGQgLmZpcnN0LXN1YiwuZHJvcGRvd24ubWVudSA+IGxpOm50aC1jaGlsZCg3KSAuZmlyc3Qtc3ViIHtcbiAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTM2MHB4KSB7XG4gICAgICBsZWZ0OmF1dG8haW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBcbiAgaGVhZGVyIC5tZW51PmxpOm5vdCgubWVudS10ZXh0KT5hIHtcbiAgICAvL3BhZGRpbmc6IDAuMXJlbTtcbiAgICAvL21hcmdpbjogMCAwLjZyZW07XG4gICAgXG4gICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC8qXG4gIGhlYWRlciAubWVudT5saTpub3QoLm1lbnUtdGV4dCkge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICB9XG4gICAgfVxuICAgID4gYSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE0OTBweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDoyLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfSovXG4gIFxuICAvKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICAyLiBIZWFkZXJcbiAgICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbiAgLyogbW9iaWxlICovXG4gIC5tZW51LWljb24ge1xuICAgIGhlaWdodDphdXRvO1xuICAgICY6aG92ZXI6YWZ0ZXIsXG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHdpZHRoOmF1dG87XG4gICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICBcbiAgaGVhZGVyIC50b3AtYmFyIC5oZWFkZXItbW9iaWxlLW9ubHkge1xuICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgbWFyZ2luOjFyZW0gMDtcbiAgICBhIHtcbiAgICAgIGZvbnQtc2l6ZTogLjg1cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXkzO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4wMjVyZW07XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICB9XG4gIFxuICBoZWFkZXIge1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgLy9ib3gtc2hhZG93OjAgMnB4IDJweCAwIHJnYmEoMCwwLDAsMC4xNCksMCAzcHggMXB4IC0ycHggcmdiYSgwLDAsMCwwLjEyKSwwIDFweCA1cHggMCByZ2JhKDAsMCwwLDAuMik7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBuYXYge1xuICAgICAgYm94LXNoYWRvdzpub25lO1xuICAgICAgI3Jlc3BvbnNpdmUtbWVudSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgICAgICBjbGVhcjpib3RoO1xuICAgICAgICB9XG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAuaXMtZHJpbGxkb3duIHtcbiAgICAgICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kcmlsbGRvd24ge1xuICAgICAgICAgICAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgICAgICAgICAgICA+IGE6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OjEwMHZoO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwxKTtcbiAgICAgICAgICAgICAgICAuanMtZHJpbGxkb3duLWJhY2sge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICAgICAgICAgICAgPiBhOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgJHJlZCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vYmlsZS1uYXYtbWVudS1yaWdodCB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICAgIHBhZGRpbmc6MCAxLjVyZW07XG4gICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC5tZW51LW9wZW4ge1xuICAgIC8qJi5zdGlja3ktY29udGFpbmVyIHsqL1xuICAgIC8qICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjazsqL1xuICAgIC8qfSovXG4gICAgaGVhZGVyIHtcbiAgICAgIC50b3AtYmFyIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAmLXRpdGxlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbmF2IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC45KTtcbiAgICAgICAgaGVpZ2h0OjEwMHZoO1xuICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICBcbiAgICAgICAgXG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgIC5pcy1kcmlsbGRvd24ge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDpub25lIWltcG9ydGFudDtcbiAgICAgICAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgICAgICAgIHBhZGRpbmc6MXJlbSAycmVtO1xuICAgICAgICAgICAgJi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjgpO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgICBwYWRkaW5nOjFyZW0gMnJlbTtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOi43NXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTouNzVyZW07XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5qcy1kcmlsbGRvd24tYmFjayB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJHdoaXRlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgICAgICAgID4gYTo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudCAkd2hpdGUgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7ICBcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYtc3VibWVudS1wYXJlbnQge1xuICAgICAgICAgICAgICA+IGE6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHdoaXRlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDouNzVyZW07XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTouNzVyZW07XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmhlYWRlci1tb2JpbGUtb25seSB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgXG4gIC8qIE1lZGlhIFF1ZXJpZXMgKi9cbiAgXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gICAgLm1lbnU+bGk6bm90KC5tZW51LXRleHQpPmEge1xuICAgICAgcGFkZGluZzogMC43cmVtIDAuNXJlbTtcbiAgICB9XG4gIFxuICAgIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgaGVhZGVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gIFxuICAgICAgLm1lbnUubmF2LXNvY2lhbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICBcbiAgICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gIC8qICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4OyovXG4gICAgICAgIHBhZGRpbmc6MTVweDtcbiAgXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgfVxuICBcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgIC8vbWFyZ2luLXRvcDogLTEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgXG4gICAgICAudG9wLWJhciB7XG4gIFxuICAgICAgICAudG9wLWJhci1sZWZ0LFxuICAgICAgICAudG9wLWJhci1yaWdodCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgXG4gICAgICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMjBweDtcbiAgICAgICAgfVxuICBcbiAgICAgICAgLnRvcC1iYXItbGVmdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZWVlZWVlO1xuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgdWwgdWwgZGl2IGRpdiB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gIFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgXG4gICAgICAgICAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2VlZWVlZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIGhlYWRlci5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICB9XG4gIFxuICAgIC5tZW51LWljb246OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gICAgICBib3gtc2hhZG93OiAwIDdweCAwICM5OTk5OTksIDAgMTRweCAwICM5OTk5OTk7XG4gICAgfVxuICBcbiAgICAubWVudT5saSB7XG4gICAgICBkaXNwbGF5OiBpbmhlcml0O1xuICAgIH1cbiAgXG4gICAgLmRyb3Bkb3duLm1lbnUgLnN1Ym1lbnUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyOiAwO1xuICAgIH1cbiAgfVxuICBcbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjEycHgpIHtcbiAgICBoZWFkZXIgLnRvcC1iYXIgYSB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyNjJweCkge1xuICAgIGhlYWRlciAudG9wLWJhciAudG9wLWJhci1sZWZ0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbi8qXG4uaGVhZGVyIHtcbiAgei1pbmRleDo5MDtcbiAgd2lkdGg6MTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIHRvcDowO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gIFxuXG4gICYuaG9tZSwmLndoZWVscywmLmdhbGxlcnksJi53aGVlbC1kZXRhaWwge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkIHJnYmEoMjU1LDI1NSwyNTUsLjcpO1xuICAgIGJvcmRlci1ib3R0b206MDtcbiAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgwKTtcbiAgICAmLm5vdEF0VG9wIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwxKTtcbiAgICB9XG4gICAgJi5jbG9zZVVwIHtcbiAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgfVxuICAgIGEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOjEuODVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLndoZWVsLWRldGFpbCB7XG4gICAgJi5ub3RBdFRvcCB7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVudS1pY29uIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmFib3V0IHtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICB9XG4gIGEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIC8vbGV0dGVyLXNwYWNpbmc6IDJweDtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmLWxvZ28ge1xuICAgIHBhZGRpbmc6LjVyZW07XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDo2MCU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjNyZW07ICBcbiAgICAgIHBhZGRpbmctcmlnaHQ6MS41cmVtO1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gIC50b3AtYmFyLWxlZnQge1xuICAgIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgfVxuICAudG9wLWJhciB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB0b3A6MCFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICB9XG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBmb250LXNpemU6MS44NXJlbTtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICB3aWR0aDphdXRvO1xuICAgICAgcGFkZGluZy1sZWZ0Oi43NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6Ljc1cmVtO1xuICAgICAgcGFkZGluZy10b3A6M3B4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OjNweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkYmx1ZSwgMCAxOHB4IDAgJGJsdWU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyOmFmdGVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJGxpZ2h0LWdyYXksIDAgMThweCAwICRsaWdodC1ncmF5O1xuICAgICAgfVxuICAgICAgJi5kYXJrIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDlweCAwICRibHVlLCAwIDE4cHggMCAkYmx1ZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRyZWQ7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkcmVkLCAwIDE4cHggMCAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MS41cmVtO1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmhvbWUsICYud2hlZWxzLCAmLmFib3V0LCAmLmdhbGxlcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgYSB7XG4gICAgICBjb2xvcjokbGlnaHQtZ3JheTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICAgICYtbGVmdCB7XG4gICAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6MXJlbSAzcmVtO1xuICAgICAgfVxuICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgIH1cbiAgICAgIC5tZW51LWljb24ge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJHdoaXRlLCAwIDE4cHggMCAkd2hpdGU7XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJGdyYXk5O1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgOXB4IDAgJGdyYXk5LCAwIDE4cHggMCAkZ3JheTk7XG4gICAgICAgIH1cbiAgICAgICAgJi5kYXJrIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogMCA5cHggMCAkd2hpdGUsIDAgMThweCAwICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkZ3JheTk7XG4gICAgICAgICAgICBib3gtc2hhZG93OiAwIDlweCAwICRncmF5OSwgMCAxOHB4IDAgJGdyYXk5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICB9XG5cbiAgLy8gY2FydCBpY29ucyBkaXNwbGF5XG4gIC5jYXJ0LW1lbnUge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIG1hcmdpbi1yaWdodDouNzVyZW07XG4gICAgYSB7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIGNvbG9yOiRncmF5OTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1pdGVtIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjEuNXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBtb2JpbGUgc3RpY2t5XG4gICYuaW50Tm90QXRUb3Age1xuICAgIC50b3AtYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB6LWluZGV4OjU7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgfVxuICB9XG59XG5cblxuXG4vLy8gTmF2aWdhdGlvbiBNZW51IC8vLy8vLy8vLy8vLy8vL1xuLnJlc3BvbnNpdmUtbWVudSB7XG4gIC5kcm9wZG93bi5tZW51IHtcbiAgICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgICAgICAmOmhvdmVyIGEsICY6YWN0aXZlIGEge1xuICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIH1cbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjVyZW07XG4gICAgICB9XG4gICAgICAmLmlzLWFjdGl2ZS5vcGVucy1sZWZ0IHtcbiAgICAgICAgPiBhIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5zdWJtZW51IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICAgIFxuICAgICAgfVxuICAgICAgJi5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgcG9zaXRpb246c3RhdGljO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgIHotaW5kZXg6MTAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gbGkge1xuICAgICAgYSB7XG4gICAgICAgIGkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDouNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6Ljc1cmVtXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlID4gYSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgJi52ZXJ0aWNhbCB7XG4gICAgICBsaSB7ICAgICAgICBcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5zdWJtZW51IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgJi5kcm9wZG93bi5tZW51e1xuICAgICAgICAgIHRvcDo3M3B4OyBcbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgICAgICBmb250LWZhbWlsWTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOjA7XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxLjM7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLy8gY2FydFxuICAuc2hvcHBpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuICAgICYtdXNlciwgJi1iYXNrZXQge1xuICAgICAgcGFkZGluZzoxcmVtIDAgMXJlbSAxLjVyZW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXVzZXIge1xuICAgICAgY29sb3I6JGdyYXk5O1xuICAgIH1cbiAgICAmLWJhc2tldCB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiovXG5cblxuLy8vLyBPZmYgLSBDYW52YXMgTWVudSAvLy8vLy8vLy8vL1xuLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gIGxlZnQ6MDtcbn1cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTE7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC41cyBlYXNlLCB2aXNpYmlsaXR5IDAuNXMgZWFzZTtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAuNzUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLm9mZi1jYW52YXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2OyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgb3V0bGluZTogMDsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHotaW5kZXg6IDEyOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLWNsb3NlZCB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogMTM7IH1cbiAgICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKDEwLCAxMCwgMTAsIDAuNyk7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuXG4ucG9zaXRpb24tbGVmdCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMzc1cHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM3NXB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXAzNzVweHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTsgfVxuICAucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgLnBvc2l0aW9uLWxlZnQge1xuICAgIHdpZHRoOiA0NDVweDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00NDVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTsgfVxuICAgICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDQ1cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NDVweCk7IH1cbiAgICAucG9zaXRpb24tbGVmdC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cbiAgICBcbiAgICB9XG5cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tcmlnaHQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi10b3Age1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgaGVpZ2h0OiAyNTBweDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tbGVmdDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC10b3Age1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH1cbiAgICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0OyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5cblxuLy8vIE9mZiBDYW52YXMgTWVudSBTdHlsaW5nIC8vLy8vLy8vLy8vL1xuLm9mZi1jYW52YXMge1xuICA+IGRpdiA+IGRpdiB7XG4gICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gICAgcGFkZGluZy1yaWdodDoycmVtO1xuICB9XG4gICYucG9zaXRpb24tbGVmdCB7XG4gICAgLyp3aWR0aDo0NDVweDsgLy8gTmVlZCB0byB1cGRhdGUganMgYmVmb3JlIGFwcGx5aW5nLi4uLiovXG4gICAgd2lkdGg6Mzc1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICB3aWR0aDo0NDVweDtcbiAgICB9XG4gICAgLy9ib3JkZXI6MXB4IHNvbGlkICRncmF5OTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTowLjgyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG4gICYucG9zaXRpb24tcmlnaHQge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgcmlnaHQ6MDtcbiAgICBsZWZ0OjA7XG4gICAgdG9wOjA7XG4gICAgcGFkZGluZzoxLjI1cmVtIDJyZW07XG4gICAgZm9udC1zaXplOi44MjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDoyMDA7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gICAgLypcbiAgICBwYWRkaW5nOi41cmVtIDJyZW07XG4gICAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAqL1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG4gIC5zbGlkZS1vdmVyLWNvbnRhaW5lciB7XG4gICAgZm9udC1zaXplOi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIC5zbGlkZS1vdmVyLWZpdG1lbnQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RTY7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgd2lkdGg6MjAwcHg7XG4gICAgICAgIGhlaWdodDo1OHB4O1xuICAgICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZpdG1lbnQtaW5mbyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgbWF4LXdpZHRoOjQzJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWRlLW92ZXItZmlsdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgc2VsZWN0LC5idXR0b24ge1xuICAgICAgICBoZWlnaHQ6NTVweDtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MnB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52ZXJ0aWNhbC5tZW51IHtcbiAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIG1hcmdpbi10b3A6MDtcbiAgICA+IGxpIHtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ+YTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJysnO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgICAgICB0b3A6MTNweDtcbiAgICAgICAgICBtYXJnaW4tdG9wOjA7XG4gICAgICAgICAgcmlnaHQ6MnJlbTtcbiAgICAgIH1cbiAgICAgICYuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50W2FyaWEtZXhwYW5kZWQ9dHJ1ZV0+YTphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJy0nO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIH1cbiAgICAgID4gYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZToxLjJyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICB9XG4gICAgICAgIC5mYS1jYXJldC1kb3duIHtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1hY2NvcmRpb24tc3VibWVudSB7XG4gICAgICA+IGxpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc29jaWFsLW1lbnUge1xuICAgIHBhZGRpbmc6MXJlbSAxcmVtIDJyZW07XG4gICAgYSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gT2ZmIENhbnZhcyBDb250ZW50IFN0eWxpbmcgLy8vLy8vLy8vLy8vXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgJi5pcy1vcGVuLXJpZ2h0IHtcbiAgICAuZmEtYmFyczpiZWZvcmUge1xuICAgICAgY29udGVudDpcIlxcZjAwZFwiO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLy8gRm9yY2UgTWVudSBCdXR0b24gLy8vLy8vLy8vLy9cbiNmb3JjZU1lbnUge1xuICBkaXNwbGF5OmZsZXghaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLypcbi5oaWRlLWZvci1sYXJnZSB7XG4gIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgcGFkZGluZy1yaWdodDouNXJlbTtcbn0qL1xuXG4vLyBJIGRvIG5vdCB3YW50IHRvIHVzZSAhaW1wb3J0YW50IC8vLy8vLy8vXG4jcmVzcG9uc2l2ZS1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICA+IGEge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIFByZXZlbnRpbmcgRk9VQ1xuLm5vLWpzIC50b3AtYmFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubm8tanMgLnRvcC1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLm5vLWpzIC50aXRsZS1iYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG59XG4uaW52ZW50b3J5LW5vLWpzIHtcbiAgZGlzcGxheTpub25lO1xufVxuXG4ubG9hZGluZy1zY3JlZW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjcpO1xuICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIHJpZ2h0OjA7XG4gIGxlZnQ6MDtcbiAgYm90dG9tOjA7XG4gIGNvbnRlbnQ6Jyc7XG4gIGRpc3BsYXk6YmxvY2s7XG4gIHotaW5kZXg6OTk5OTtcbiAgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB3aWR0aDogNDVweDtcbiAgICBoZWlnaHQ6IDQ1cHg7ICBcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgLXdlYmtpdC1hbmltYXRpb246c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgLW1vei1hbmltYXRpb246c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgYW5pbWF0aW9uOnNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICB9XG4gIEAtbW96LWtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG4gIEAtd2Via2l0LWtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfSB9XG4gIEBrZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTpyb3RhdGUoMzYwZGVnKTsgfSB9XG59XG5cblxuLy8vLy8vLy8vLy8gaGVhZGVyIG5hdiBzZWFyY2ggLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5oZWFkZXItbmF2LXNlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyYXlFNztcbiAgd2lkdGg6MTAwJTtcbiAgZGlzcGxheTpub25lO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgYm9yZGVyLWJvdHRvbTowO1xuICB9IFxuICBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBjb2xvcjokYmxhY2s7XG4gIH1cbiAgJi1jb250YWluZXIge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjEuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MS45Mzc1cmVtO1xuICAgIH1cbiAgfVxuICAudG9nZ2xlLXNlYXJjaCB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gIH1cbiAgZm9ybSB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGlucHV0IHtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgd2lkdGg6MjgwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDo0MDBweDtcbiAgICAgIH1cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjE1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgIHBhZGRpbmctbGVmdDouNzVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzowIDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG5cbi8vLy8vLy8vLy8vIGhlYWRlciBmaWx0ZXIgc29ydCAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAuZmlsdGVyLXNvcnQge1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgLy9wYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgICAmLXRvcCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlcjoycHggc29saWQgJGdyYXk2O1xuICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZzouODVyZW0gMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDoyMjBweDtcbiAgICAgICAgaGVpZ2h0OjU0cHg7XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5kaXZpZGVyIHtcbiAgICAgIGhlaWdodDoxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICAgIC8vIGJvdHRvbVxuICAgICYtYm90dG9tIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTouNzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgJi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1jb3VudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IFxuICB9XG59XG5cblxuXG4vLy8vLy8vLy8vLyBoZWFkZXIgZml0bWVudCAtIG1vYmlsZSAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmhlYWRlci1maXRtZW50LW1vYmlsZSB7XG4gIGRpc3BsYXk6ZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6JGdyYXlFNjtcbiAgcGFkZGluZy1sZWZ0OjJyZW07XG4gIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgLmJ1dHRvbiB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiA1OHB4O1xuICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbiAgLmZpdG1lbnQtaW5mbyB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXgtd2lkdGg6IDQzJTtcbiAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG59IiwiZm9vdGVyIHtcbiAgcG9zaXRpb246cmVsYXRpdmU7XG4gIC8vIGZvb3RlciB0b3BcbiAgLmZvb3Rlci10b3Age1xuICAgIHBhZGRpbmctdG9wOjEuMjVyZW07XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgLmZvb3Rlci1zb2NpYWwge1xuICAgICAgc3Bhbix1bCB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gZm9vdGVyIGJvZHlcbiAgLmZvb3Rlci1ib2R5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5Rjg7XG4gICAgcGFkZGluZzoycmVtIDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6NHJlbSAwO1xuICAgIH1cbiAgICBoNSB7XG4gICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWxvZ28ge1xuICAgICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLW1lbnUge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAvLyBmb290ZXIgYm90dG9tXG4gIC5mb290ZXItYm90dG9tIHtcbiAgICAvL2JhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvaGVyby83LmpwZycpO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIGhlaWdodDo1MHZoO1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgaGVpZ2h0OjEwdmg7XG4gICAgfVxuICB9ICBcbn0iLCIvKi5ocCB7XG4gIHAge1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBmb250LXNpemU6MS4xcmVtO1xuICB9XG59Ki9cbi5zZWN0aW9uIHtcbiAgY29sb3I6JGJsYWNrO1xuICBmb250LXdlaWdodDo0MDA7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OicgJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbiAgPiBkaXYge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB9XG4gICYtYmFja2dyb3VuZCB7XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICYtaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNCk7XG4gICAgLy9AaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzowO1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB6LWluZGV4OjEwO1xuICAgICAgdG9wOjA7XG4gICAgICByaWdodDowO1xuICAgICAgYm90dG9tOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgLy99XG4gICAgJi1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi10aXRsZSB7XG4gICAgJi1kaXZpZGVyIHtcbiAgICAgIHdpZHRoOjIwMHB4O1xuICAgICAgaGVpZ2h0OjhweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtXG4gICAgfVxuICB9XG4gICYtYnV0dG9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC5jdWJlLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTUwcHg7XG5cdCAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHQgIGhlaWdodDogNTBweDtcblxuXHQgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjMzcztcblx0ICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjMzczsgLyogQW5pbWF0ZSB0aGUgdHJhbnNmb3JtIHByb3BlcnRpZXMgKi9cblxuXHQgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0ICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyAvKiA8LU5CICovXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpO1xuXHQgICAgdHJhbnNmb3JtOiByb3RhdGVYKDkwZGVnKTsgLyogVGV4dCBibGVlZCBhdCA5MMK6ICovXG4gICAgICB9XG4gICAgICAuY3ViZS1mcm9udCwuY3ViZS1ib3R0b20ge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgICAuY3ViZS1mcm9udCB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuICAgICAgfVxuICAgICAgLmN1YmUtYm90dG9tIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoLTkwZGVnKSB0cmFuc2xhdGVaKC0yNXB4KTtcblx0ICAgIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZVooLTI1cHgpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXIuaHAge1xuICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcbiAgICAmLWltYWdlIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGltZyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLmhlcm8tY29udGFpbmVyIHtcbiAgaDQsaDEsYSB7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG4gIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOjA7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgJiNmb3VyIHtcbiAgICAgIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmI3R3byB7XG4gICAgICAuc2VjdGlvbi1jb250ZW50LWJhY2tncm91bmQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9ob21lL2hlcm8vc2xpZGUtMmNyYXZlLWxpZmUuanBnJykhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3VidGl0bGUgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2VjdGlvbi1jb250ZW50IHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgJi1iYWNrZ3JvdW5kIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjQpO1xuICAgIC8vYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICBoZWlnaHQ6MTAwdmg7XG4gICAgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjI1cmVtO1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQ6cmdiYSg1MSw1MSw1MSwuNyk7XG4gICAgICBib3JkZXItcmFkaXVzOiAyNXB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBwYWRkaW5nOjFyZW0gMnJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMDVyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICAgIGJvcmRlcjowO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHdoaXRlLXNwYWNlOm5vd3JhcDtcbiAgICB9XG4gIH1cbiAgLmhlcm8tc2Nyb2xsLW1vcmUge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOjE1JTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgei1pbmRleDogOTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBpIHtcbiAgICAgIGhlaWdodDogMzBweDtcbiAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgLy9tYXJnaW46IDI0cHggMCAwIC0xMzBweDtcbiAgICAgIGFuaW1hdGlvbjogdXBkb3duIDJzIGVhc2UgaW5maW5pdGU7XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgdXBkb3duIHtcbiAgICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgfVxuICAgICAgMjUlIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgICB9XG4gICAgICA1MCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgICAgOTklIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgfVxuICAgICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRhYmxlLW9mLWNvbnRlbnRzIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAuNXJlbTtcbiAgICBib3R0b206IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcmlnaHQ6MnJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHJpZ2h0OjVyZW07XG4gICAgfVxuICAgIGEge1xuICAgICAgYm9yZGVyLWxlZnQ6M3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgIGhlaWdodDoyMHB4O1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgaGVpZ2h0OjUwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uaGVybywuaGVyby1jb250YWluZXIge1xuICAudmlkZW8tY29udGFpbmVyIHtcbiAgICAgIC0tdmlkZW9SYXRpbzogY2FsYygxNiAvIDkpOyAvKiBDSEFOR0UgVEhJUyBJRiBUSEUgVklERU8gQ0hBTkdFUyAqL1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2hvbWUvaGVyby5qcGcnKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICB9XG4gICAgfVxuICAgICAgLyogdG8gc3RhcnQgd2l0aCBhc3N1bWUgdGhhdCB0aGUgdmlld3BvcnQgaXMgd2lkZSBlbm91Z2ggZm9yIHRoZSB2aWRlbyB0YWtpbmcgdXAgZnVsbCB3aWR0aCB0aGUgaGVpZ2h0IHdpbGwgYmUgYXQgbGVhc3QgMTAwdmggKi9cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgLy9kaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gIC52aWRlby1jb250YWluZXIgaWZyYW1lIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAtLXc6IDEwMHZ3O1xuICAgICAgLS1oOiBjYWxjKHZhcigtLXcpIC8gdmFyKC0tdmlkZW9SYXRpbykpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oKTtcbiAgICAgIHdpZHRoOiB2YXIoLS13KTtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAodmFyKC0taCkgLyAyKSk7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXcpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gIH1cbiAgICAgIC8qIE1heGltdW0gYXNwZWN0IHJhdGlvICovXG4gIEBtZWRpYSAobWF4LWFzcGVjdC1yYXRpbzogMTYvOSkgey8qdGhlIHZpZXdwb3J0IGlzIHRvbyBuYXJyb3cgZm9yIHRoZSBmdWxsIHZpZGVvICovXG4gICAgLnZpZGVvLWNvbnRhaW5lciBpZnJhbWUge1xuICAgICAgLS1oOiAxMDB2aDtcbiAgICAgIC0tdzogY2FsYyh2YXIoLS1oKSAqIHZhcigtLXZpZGVvUmF0aW8pKTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gKHZhcigtLXcpIC8gMikpO1xuICAgIH1cbiAgfVxuICAudmlkZW8tY29udGFpbmVyLXNob3J0IHtcbiAgICAtLXZpZGVvUmF0aW86IGNhbGMoMTYgLyA5KTsgLyogQ0hBTkdFIFRISVMgSUYgVEhFIFZJREVPIENIQU5HRVMgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6MTAwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvaG9tZS9oZXJvLmpwZycpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgaWZyYW1lIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAtLXc6IDEwMHZ3O1xuICAgICAgLS1oOiBjYWxjKHZhcigtLXcpIC8gdmFyKC0tdmlkZW9SYXRpbykpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oKTtcbiAgICAgIHdpZHRoOiB2YXIoLS13KTtcbiAgICAgIHRvcDogY2FsYyg1MCUgLSAodmFyKC0taCkgLyAyKSk7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IHZhcigtLXcpO1xuICAgICAgaGVpZ2h0OiB2YXIoLS1oKTtcblxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIChtYXgtYXNwZWN0LXJhdGlvOiAxNi85KSB7Lyp0aGUgdmlld3BvcnQgaXMgdG9vIG5hcnJvdyBmb3IgdGhlIGZ1bGwgdmlkZW8gKi9cbiAgICAgIGlmcmFtZSB7XG4gICAgICAgIC0taDogMTAwdmg7XG4gICAgICAgIC0tdzogY2FsYyh2YXIoLS1oKSAqIHZhcigtLXZpZGVvUmF0aW8pKTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiBjYWxjKDUwJSAtICh2YXIoLS13KSAvIDIpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uaG9tZS1zbGlkZXItY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLy9wb2ludGVyLWV2ZW50czogbm9uZTtcbiAgLnNsaWNrLXNsaWRlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLmhvbWUtc2xpZGVyLWltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJi1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgLy9oZWlnaHQ6MTAwdmg7XG4gICAgLy9vcGFjaXR5OjA7XG4gIH1cbiAgLnNsaWNrLXNsaWRlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIC8vcGFkZGluZy1ib3R0b206NyU7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIC8qXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG5cbiAgICB9Ki9cbiAgfVxuICAvKi5zbGljay1saXN0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfSovXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOjA7XG4gIH1cbiAgLnlvdXR1YmUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHBhZGRpbmctYm90dG9tOiA1LjYyJTsgLyogMTY6OSAqL1xuICAgIHBhZGRpbmctYm90dG9tOjU2LjYyJTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgaGVpZ2h0OjEwMHZoO1xuICAgIGlmcmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuICAubmV4dC1zZWN0aW9uIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICBib3R0b206MDtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgJi1jb250YWluZXIge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTsgIFxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uLWNvbnRhaW5lciB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICB9XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MnJlbTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICAgIHdpZHRoOjE2NnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXkzO1xuICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYubGluayB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkcmVkO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmxleC12aWRlbyB7XG4gICAgaGVpZ2h0OjEwMHZoO1xuICAgIGlmcmFtZSB7XG4gICAgICB0cmFuc2Zvcm06c2NhbGUoNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgzKTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMik7XG4gICAgICB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjE1NzVweCkge1xuICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMS4yNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5oZXJvLW1vYmlsZS10ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBib3R0b206MDtcbiAgICBsZWZ0OjA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRibGFjayx0cmFuc3BhcmVudCx0cmFuc3BhcmVudCk7XG4gICAgaDEge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTo3cmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6Ljc1O1xuICAgICAgICBmb250LXNpemU6MTByZW07XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKlxuLnZpZGVvLWJhY2tncm91bmQge1xuICBiYWNrZ3JvdW5kOiAjMDAwO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDsgcmlnaHQ6IDA7IGJvdHRvbTogMDsgbGVmdDogMDtcbiAgei1pbmRleDogLTk5O1xufSovXG4udmlkZW8tb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOjA7XG4gIHJpZ2h0OjA7XG4gIGxlZnQ6MDtcbiAgYm90dG9tOjA7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNCk7XG4gIHotaW5kZXg6MTtcbn1cbi52aWRlby1mb3JlZ3JvdW5kLFxuLnZpZGVvLWJhY2tncm91bmQgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuXG4uaGVyby1ia2cge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiB0b3A7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICB9XG59XG5cbi5uZXh0LXNlY3Rpb24ge1xuICBhIHtcbiAgICAvL2JvcmRlcjoxcHggc29saWQgJHdoaXRlO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICB3aWR0aDoxNjZweDtcbiAgICBoZWlnaHQ6NjBweDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIGkge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY3ViZS1idXR0b24ge1xuICAgIGEge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgIH1cbiAgfVxuICAuY3ViZS1ib3R0b20ge1xuICAgIGEge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuICB9XG4gIGkge1xuICAgIGJvcmRlcjozcHggc29saWQgJHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgd2lkdGg6NzVweDtcbiAgICBoZWlnaHQ6NzVweDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMC41KTtcbiAgfVxufVxuXG5cbi5oZXJvLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgJi1jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDIzcHgpIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UgdXApIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuICAmLWluZm8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDEwMiwgMTc4LCAxKTtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBtYXgtd2lkdGg6IDUwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDFyZW0gMXJlbSAycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAxMDIsIDE3OCwgMC44KTtcbiAgICAgIGNsaXAtcGF0aDogcG9seWdvbig2JSAwLCAxMDAlIDAlLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG4gICAgICAtd2Via2l0LWNsaXAtcGF0aDogcG9seWdvbig2JSAwLCAxMDAlIDAlLCAxMDAlIDEwMCUsIDAgMTAwJSk7XG4gICAgfVxuICAgICYtLXNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBmb250LXNpemU6IDEuNDNyZW07XG4gICAgICB9XG4gICAgfVxuICAgICYtLW1lZGl1bSB7XG4gICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi40cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmLS1sYXJnZSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgZm9udC1zaXplOiA0LjZyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtaGVhZGVyIHtcbiAgICBmb250LWZhbWlseTogJ1JvYm90byBDb25kZW5zZWQnO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgZm9udC1zaXplOiAzLjJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgfVxuICB9XG4gICYtZGVzYyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyby1idG4ge1xuICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICBAbWVkaWEgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgbWFyZ2luOiAwIGF1dG8gMXJlbTtcbiAgfVxufVxuXG4uaHAtaGVybyB7XG4gIGltZyB7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxufVxuXG5cblxuLy8gbXA0IHZpZGVvXG4uaGVyby12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwdmg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6bm9uZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuICAmLXNob3J0IHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxufVxuXG4uaGVyby12aWRlb19fYmFja2dyb3VuZCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgei1pbmRleDogMDtcbn1cblxuLmhlcm8tdmlkZW9fX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5oZXJvLXZpZGVvOjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC4zNSk7XG4gIHotaW5kZXg6IDE7XG59XG5cbi5oZXJvLXZpZGVvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAyO1xufSIsIi5ocCAuZXhwbG9yZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvZXhwbG9yZS1iZy53ZWJwJyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTUwJTtcbiAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjNyZW07XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9yZWdyb3VuZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDowO1xuICAgIHRvcDowO1xuICAgIGJvdHRvbTowO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC41KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgIGJvdHRvbTo4cmVtO1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgYm90dG9tOjRyZW07XG4gICAgICB0b3A6dW5zZXQ7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gIH1cblxuICAuZXhwbG9yZS1yaWdodCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG4gIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNSk7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgbGV0dGVyLXNwYWNpbmc6MnB4O1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIHdpZHRoOiAyNjRweDtcbiAgICBoZWlnaHQ6NjBweDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIGhlaWdodDogNzRweDsgIFxuICAgIH1cbiAgfVxufSIsIi5ocCAucGVuY2lsIHtcbiAgcGFkZGluZy10b3A6Mi41cmVtO1xuICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgcGFkZGluZy1yaWdodDoxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOjRyZW07XG4gICAgcGFkZGluZy1ib3R0b206NHJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICBwYWRkaW5nLXJpZ2h0OjA7XG4gIH1cbiAgaDEscCxhIHtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0Oi44O1xuICAgIGZvbnQtc2l6ZToxLjY1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTo0LjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICB9XG4gIHAsYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgfVxuICB9XG5cbiAgLnBlbmNpbC1yaWdodCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIHdpZHRoOjE0MHB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIGhlaWdodDogNjZweDtcbiAgICAgIHdpZHRoOiAyMDVweDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufSIsIi5ocCAud2hlZWxzIHtcbiAgcGFkZGluZy10b3A6MnJlbTtcbiAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZy10b3A6NHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTo0cmVtO1xuICB9XG4gIC5yb3cge1xuICAgIG1heC13aWR0aDo4MS4yNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICB9XG4gIH1cblxuICAvLyBoZWFkZXIgXG4gIGgxLHAge1xuICAgIGNvbG9yOiRibGFjaztcbiAgfVxuICBoMSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBsaW5lLWhlaWdodDogLjc1O1xuICAgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6IDYuMjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLS4xcmVtO1xuICAgIH1cbiAgfVxuICAud2hlZWxzLWhlYWRlciB7XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6MS45cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjEyNXJlbTtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6Ljc1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIGxpc3RpbmdcbiAgLndoZWVscy1saXN0IHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIC8vbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgXG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAvL21hcmdpbi1ib3R0b206M3JlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5Rjc7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgICAud2hlZWwtbmFtZSB7XG4gICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6MDtcbiAgICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjIuNzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206Mi4yNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbmlzaC1uYW1lLC53aGVlbC1zaXplcyB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIGFkZGl0aW9uYWwgZmluaXNoZXNcbiAgICAub3RoZXItZmluaXNoZXMge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBvcGFjaXR5OjA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgei1pbmRleDoyO1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgID4gLm90aGVyLWZpbmlzaCB7XG4gICAgICAgICAgd2lkdGg6MjUlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDo2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgLy9vcGFjaXR5OjA7XG4gICAgICAgIGRpc3BsYXk6Z3JpZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gMTtcbiAgICAgICAgfVxuICAgICAgICAubW9yZS1pbmZvcm1hdGlvbiwub25lLWluZm9ybWF0aW9uIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxLjM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aHVtYm5haWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6NHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tb3JlLWluZm9ybWF0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gY3RhXG4gIC53aGVlbHMtY3RhIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBsZXR0ZXItc3BhY2luZzouMTVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkgeyAgXG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICB3aWR0aDoyNzhweDtcbiAgICAgICAgaGVpZ2h0OjcwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmJyYW5kcy1zbGlkZXIge1xuICAuc2xpY2stbGlzdCB7XG4gICAgcGFkZGluZzowIDUwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjEwMHB4IWltcG9ydGFudDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6MCAyNTBweCFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICB9XG4gIH1cbiAgLmJyYW5kcy1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMHB4O1xuICAgIGZvbnQtc2l6ZTogMHB4O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgdG9wOiA1MCU7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgei1pbmRleDoxMDtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOjQwcHg7XG4gICAgICBoZWlnaHQ6NDBweDtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgd2lkdGg6ODBweDtcbiAgICAgIGhlaWdodDo4MHB4O1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgfVxuICB9XG4gIC5icmFuZHMtbmV4dCB7XG4gICAgcmlnaHQ6NTBweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHJpZ2h0OjgwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICByaWdodDoyMTBweDtcbiAgICB9XG4gIH1cbiAgLmJyYW5kcy1wcmV2IHtcbiAgICBsZWZ0OjUwcHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBsZWZ0OjgwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBsZWZ0OjIxMHB4O1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIC5zbGlkZXItb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBib3R0b206MDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjgpO1xuICAgICAgfVxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JHRpdGxlLWZvbnQtZmFtaWx5O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6M3JlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTo1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRyZWQ7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAzcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiB7XG4gIC8vYmFja2dyb3VuZC1pbWFnZTpsaW5lYXItZ3JhZGllbnQoMTE1ZGVnLCAkd2hpdGUgNTAlLCAkZ3JheUUgNTAlKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICB9XG4gIGgxIHtcbiAgICBmb250LXNpemU6NHJlbTtcbiAgICBmb250LXdlaWdodDo4MDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgZm9udC1zaXplOjEuMzVyZW07XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtOyAgXG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZm9udC1zdHlsZTppdGFsaWM7XG4gICAgfVxuICB9XG4gIGg2IHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LTNweDtcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgLyp0cmFuc2Zvcm06c2NhbGUoMS4zNSk7Ki9cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gIH1cbiAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDoxMHJlbTtcbiAgICB9XG4gICAgLnNlY3Rpb24tY29udGVudC1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi10aXRsZSB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07IFxuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxMHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jdGEtbGlzdCB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAucm93IHtcbiAgICAgIC8vcGFkZGluZy1sZWZ0Oi42MjVyZW07IFxuICAgICAgLy9wYWRkaW5nLXJpZ2h0Oi42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDoycmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OjJyZW07XG4gICAgICAuY29sdW1uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgLmNvbHVtbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjIuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjIuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbHVtbjpmaXJzdC1jaGlsZHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy9pbWFnZXMvaG9tZS9jdGEtdGlyZXMuanBnJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb2x1bW46bGFzdC1jaGlsZCB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvY3RhLWFjY2Vzc29yaWVzLmpwZycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjU7XG4gICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRncmF5QztcbiAgICAgIGJvcmRlci1sZWZ0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIHBhZGRpbmctdG9wOjI1JTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjI1JTtcbiAgICAgIC8qXG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6NHJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206NHJlbTtcbiAgICAgIH0qL1xuICAgICAgaDQge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGZvbnQtZmFtaWx5OiR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjMuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgdHJhbnNmb3JtOnNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gICAgLypcbiAgICAudGl0bGUsLmltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjZyZW07XG4gICAgICB9XG4gICAgfSovXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6MS4xcmVtO1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LTFweDtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6MnJlbTtcbiAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAvL21heC13aWR0aDoyNTVweDtcbiAgICAgIC8vd2lkdGg6MTAwJTtcbiAgICAgIC8vYm9yZGVyOjFweCBzb2xpZCAkZ3JheUI1O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAkcmVkO1xuICAgICAgcGFkZGluZzowO1xuICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogM3B4O1xuICAgICAgfVxuICAgIH1cbiAgICAuaW5saW5lLWJsb2NrLWRpc3BsYXkge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZsb2F0Om5vbmU7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbi8qICAgIC5jb2x1bW4ge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgei1pbmRleDogMzsgXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnLy9pbWFnZXMuaWNvbmZpZ3VyYXRvcnMuYXBwL2ltYWdlcy93aGVlbHMvbGFyZ2UvbWt3LXI5MDEtd2hlZWwtNWx1Zy1icnVzaGVkLXRpdGFuaXVtLTIweDExLTUwMF82OTc1LnBuZycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIHotaW5kZXg6IDI7IFxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvL2ltYWdlcy5pY29uZmlndXJhdG9ycy5hcHAvaW1hZ2VzL3doZWVscy9sYXJnZS9ta3ctcjkwMi13aGVlbC01bHVnLWJydXNoZWQtdGl0YW5pdW0tMjB4MTEtNTAwXzMyNTAucG5nJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvL2ltYWdlcy5pY29uZmlndXJhdG9ycy5hcHAvaW1hZ2VzL3doZWVscy9sYXJnZS9ta3ctcjkwMy13aGVlbC01bHVnLWJyb256ZS0xOHg5NS01MDBfNTkzNC5wbmcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgIH1cbiAgICB9Ki9cbiAgfVxuICBcbn0iLCIuaHAgLmN0YSB7XG4gIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDtcbiAgcGFkZGluZy10b3A6MnJlbTtcbiAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgcGFkZGluZy1ib3R0b206M3JlbTtcbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206NXJlbTtcbiAgfVxuICAucm93IHtcbiAgICAvL21heC13aWR0aDo4MS4yNXJlbTtcblxuICAgICAgbWF4LXdpZHRoOjgxLjI1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDo1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjVyZW07XG4gICAgICB9XG4gICAgPiAuY29sdW1uIHtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuICAgICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LXNpemU6MnJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICBwYWRkaW5nLXRvcDoyNSU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjI1JTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6My41cmVtO1xuICAgICAgICAgIHBhZGRpbmctdG9wOjMyJTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTozMiU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOjEwMSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpLCY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy9pbWFnZXMvaG9tZS9jdGEtZ2FsbGVyeS5qcGcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvY3RhLXZpc3VhbGl6ZXIuanBnJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBoMSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgIGxpbmUtaGVpZ2h0Oi43NTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTo0Ljc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LS4xcmVtO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICBoZWlnaHQ6M3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoyMTVweDtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6NnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6MS4xcmVtO1xuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLnRleHQge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgfVxuICAuc3VidGl0bGUge1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDonJztcbiAgICAgIGhlaWdodDozcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6NnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5ocCAuZGVhbGVycyB7XG4gIGgxIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgXG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGxpbmUtaGVpZ2h0Oi44NTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi0uMnJlbTtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6NjhweDtcbiAgICAgIHdpZHRoOjIwOHB4O1xuICAgIH1cbiAgfVxuICAuZGVhbGVyLWNvbnRlbnQge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgICAgaGVpZ2h0OjI1NnB4O1xuICAgIH1cbiAgfVxufSIsIi5ocCAuYWJvdXQge1xuICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9ob21lL2Fib3V0LWJnLndlYnAnKTtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIGJhY2tncm91bmQtc2l6ZToxMDAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIHBhZGRpbmc6MnJlbTtcbiAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgZGlzcGxheTpmbGV4O1xuICBhbGlnbi1pdGVtczpmbGV4LXN0YXJ0O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZy1ib3R0b206MTByZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZy10b3A6NHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTo0cmVtO1xuICAgIGhlaWdodDoxMjYwcHg7XG4gIH1cbiAgaDEsIHAge1xuICAgIFxuICB9XG4gIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzotLjJyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NXJlbTtcbiAgICB9XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6Mi43NXJlbTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOjEuMTI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjY1cmVtO1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgaGVpZ2h0OjY4cHg7XG4gICAgICB3aWR0aDoyMDhweDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICB9XG4gIH1cbiAgLmxvZ28ge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIH1cbiAgfVxuICAuYnJlYWsge1xuICAgIHdpZHRoOjIxNHB4O1xuICAgIGhlaWdodDo2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgbWFyZ2luOjEuMjVyZW0gYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luOjIuNXJlbSBhdXRvO1xuICAgIH1cbiAgfVxuICAudGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuICB9XG59IiwiLmluc3RhZ3JhbSB7XG4gIGEge1xuICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgaW1nIHtcbiAgICAgIC8vZmlsdGVyOmdyYXlzY2FsZSgxKTtcbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBkaXNwbGF5OmlubGluZTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2luc3RhZ3JhbSB7XG4gICAgYSB7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2luc3RhZ3JhbS1wb3B1cCB7XG4gIGNvbG9yOiRncmF5Mztcbn0iLCIuYWNjb3JkaW9uLWZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgJl9fY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgJl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICAmLS1tb2JpbGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgJl9fZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDByZW0gY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC42NXJlbSAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxufSIsIi5zZWxlY3RlZFZlaGljbGVCYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XG4gIC5sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogMTAwcHg7XG4gIH1cbiAgLnJvdy0tc21hbGwge1xuICAgIG1heC13aWR0aDogNjdyZW07XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgJi0tbm9NYXJnaW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgbWFyZ2luOiAxLjVyZW0gYXV0byAwO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG4gICZfX3NwYW4ge1xuICAgIGNvbG9yOiAjNmE2YTZhO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgJl9fYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAmLS1zbWFsbGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn0iLCIucGVuY2lsLXRvcC1zZWFyY2gge1xuICBwYWRkaW5nOiAxMXB4IDA7XG59XG5cbi5uYXYtc2VhcmNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2gtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gICZfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB0b3A6IDAuMnJlbTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLWljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSB1cCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB9XG59XG5cbi5zZWFyY2gtYm94IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDAuN3JlbTtcbiAgd2lkdGg6IDQyM3B4O1xuICB6LWluZGV4OiAxMTtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG59XG5cbi5zZWFyY2gtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn0iLCIjY29sbGVjdGlvbiB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDoxMDB2aDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgaGVpZ2h0Ojkwdmg7XG4gICAgICAuc2VjdGlvbi1jb250ZW50LC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgICAgIGhlaWdodDo5MHZoO1xuICAgICAgfVxuICAgIH1cbiAgICBoMSxoNCB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIGZvbnQtc2l6ZToyLjc1cmVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTo0LjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjI1cmVtO1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1jb250ZW50IHsgICAgICBcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC41KTtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDo5MHZoO1xuICAgICAgfVxuICAgICAgJi1iYWNrZ3JvdW5kIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXI7XG4gICAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgICAgICAgIGhlaWdodDo5MHZoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGVudC1zY3JvbGwtbW9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOjE1JTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo0cmVtO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiB1cGRvd24gMnMgZWFzZSBpbmZpbml0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcGFnZSBib2R5XG4gIC5wYWdlLWJvZHkge1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgfVxuICAgICYtY2VudGVyIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbiAgICA+IC5yb3cge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHBhZGRpbmc6MCAzcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6MS43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICYtbmF2IHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICBhIHtcbiAgICAgICAgXG4gICAgICB9XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLW5hdiB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICAvL3BhZGRpbmctdG9wOjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAvL3BhZGRpbmctdG9wOjdyZW07XG4gICAgICB9XG4gICAgICAmLmJvZHktbmF2LWZpeGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICAgIHBhZGRpbmctdG9wOjEuNzVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjEuNzVyZW07XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgei1pbmRleDoxO1xuICAgICAgfVxuICAgIC8qdWwge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgICB9XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjEuMjVyZW07XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSovXG4gICAgICB1bCB7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIC8vb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBvdmVyZmxvdy14OmF1dG87XG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIHBhZGRpbmc6MCAuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcGFnZSBsaXN0aW5nXG4gIC5wYWdlLWxpc3Rpbmcge1xuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmxpbmsge1xuICAgICAgICAgIC8vY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDMscCB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAubGlzdGluZy1pdGVtIHtcbiAgICAgIG1heC13aWR0aDo5MHJlbTtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBoZWlnaHQ6NTV2aDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIHBhZGRpbmc6MCAzcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIH1cbiAgICAgICYtb3ZlcmxheSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwKTtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICYtYWRkdGwge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICByaWdodDowO1xuICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuMyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDo3NSU7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDoyNSU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nbyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWluLWhlaWdodDo2MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5saW5rIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgfVxuICB9XG59IiwiI3NlcmllcyB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDoxNTB2aDtcbiAgICAvKlxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6ODB2aDtcbiAgICAgIC5zZWN0aW9uLWNvbnRlbnQsLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgaGVpZ2h0Ojgwdmg7XG4gICAgICB9XG4gICAgfSovXG4gICAgaDEsaDQge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBmb250LXNpemU6Mi43NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6NC41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoNCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24tY29udGVudCB7ICAgICAgXG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuMCk7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgICYtYmFja2dyb3VuZCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgaGVpZ2h0OjE1MHZoO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtdG9wIHtcbiAgICAgICAgaGVpZ2h0OjEwMHZoO1xuICAgICAgfVxuICAgICAgJi1ib3R0b20ge1xuICAgICAgICBoZWlnaHQ6NTB2aDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24tY29udGVudC10b3Age1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAuY29udGVudC1hdC1zY3JvbGwge1xuICAgICAgICBvcGFjaXR5OjA7XG4gICAgICB9XG4gICAgICAuY29udGVudC1zY3JvbGwtbW9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOjE1JTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo0cmVtO1xuICAgICAgICAgICAgYW5pbWF0aW9uOiB1cGRvd24gMnMgZWFzZSBpbmZpbml0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24tY29udGVudC1ib3R0b20ge1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgaDIscCB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG4gICAgICAuY29udGVudCB7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgICAmLXJpZ2h0IHtcbiAgICAgICAgcCB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMTc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHBhZ2UgYm9keVxuICAucGFnZS1ib2R5IHtcbiAgICBwYWRkaW5nLXRvcDo1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDo3cmVtO1xuICAgIH1cbiAgICAmLWNlbnRlciB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB9XG4gICAgPiAucm93IHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6MS43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICAgICYtbmF2IHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICBhIHtcbiAgICAgICAgXG4gICAgICB9XG4gICAgfVxuICAgIC5jb2xsZWN0aW9uLW5hdiB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLXRvcDo3cmVtO1xuICAgICAgfVxuICAgICAgJi5ib2R5LW5hdi1maXhlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDowO1xuICAgICAgICByaWdodDowO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIHotaW5kZXg6MTtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICAgICAgfVxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tbGVmdDoxLjI1cmVtO1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBwYWdlIGxpc3RpbmdcbiAgLnBhZ2UtbGlzdGluZyB7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAubGluayB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0aW5nLWl0ZW0ge1xuICAgICAgbWF4LXdpZHRoOjkwcmVtO1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGhlaWdodDo1NXZoO1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDo3NSU7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDoyNSU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5saW5rIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgfVxuICB9XG4gIC8vIHByb2R1Y3QtbGlzdGluZ1xuICAucHJvZHVjdC1saXN0IHtcbiAgICBwYWRkaW5nOjJyZW0gMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6NHJlbSAwO1xuICAgIH1cbiAgfVxufSIsIiN3aGVlbHMge1xuICBoMiwgaDMge1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgaDIge1xuICAgIGNvbG9yOiRncmF5MztcbiAgICBmb250LXNpemU6NS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsZXR0ZXItc3BhY2luZzotNXB4O1xuICB9XG4gIGgzIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBoMSB7XG4gICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgIGZvbnQtc2l6ZToyLjc1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NC41cmVtO1xuICAgIH1cbiAgfVxuICBoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLjI1cmVtO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgY29sb3I6JGdyYXk2O1xuICB9XG4gIGEge1xuICAgIC8vdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICAvL2NvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICAvL21hcmdpbi1ib3R0b206MnJlbTtcbiAgICBmb250LXNpemU6IC44NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjAyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIH1cbiAgfVxuICAucm93IHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICB9XG4vKlxuICAvLyBwYWdlIGhlYWRlclxuICAucGFnZS1oZWFkZXIge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206Mi41cmVtO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBmb250LWZhbWlseTokdGl0bGUtZm9udC1mYW1pbHk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTo0LjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAkcmVkO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgZm9udC1zaXplOjAuOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjIuNTtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICAuYmFja2dyb3VuZC1pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIH1cbiAgICAucGFnZS10aXRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgIH1cbiAgfVxuKi9cbi8vIHBhZ2UgaGVhZGVyIC8vLy8vLy8vLy8vLy8vLy8vL1xuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6NHJlbTtcbn1cbi8vIHBhZ2UgZmlsdGVyIC8vLy8vLy8vLy8vLy8vLy8vL1xuLnBhZ2UtZmlsdGVyIHtcbiAgLy8gZmlsdGVyIGJyYW5kc1xuICAmLWJyYW5kcyB7XG5cbiAgICB1bCB7XG4gICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzdGFydDtcbiAgICAgIHNjcm9sbC1zbmFwLXR5cGU6IHggbWFuZGF0b3J5O1xuICAgICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgc2Nyb2xsLXBhZGRpbmctaW5saW5lOiB2YXIoLS1hcnJvdy1zaXplKTtcbiAgICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgPiBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUY3O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6NDBweDtcbiAgICAgICAgICBoZWlnaHQ6NDBweDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gZmlsdGVyIHNvcnQgLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC5maWx0ZXItc29ydCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi10b3Age1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAkZ3JheTY7XG4gICAgICBjb2xvcjokZ3JheTY7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwYWRkaW5nOi44NXJlbSAxcmVtO1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjI1NHB4O1xuICAgICAgICBoZWlnaHQ6NTRweDtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gICAgLy8gYm90dG9tXG4gICAgJi1ib3R0b20ge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJvcmRlcjowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBcbiAgfVxuXG4gLyogLnByb2R1Y3QtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgICBwYWRkaW5nLXRvcDowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZzoxcmVtIDA7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgfVxuICAgID4gLmNvbHVtbiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfSovXG5cbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIC8vcGFkZGluZzogMCAyLjgxMjVyZW07XG4gICAgIC8vID4gLmNvbHVtbiB7fVxuICAgIH1cbiAgfVxuXG4gIFxuICAuYnJlYWsge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAucm93IHtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgIG1heC13aWR0aDo4NHJlbTtcbiAgICB9XG4gIH1cbiAgLy8gYnJhbmQgaW5mb3JtYXRpb25cbiAgLmJyYW5kLWluZm9ybWF0aW9uIHtcbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG4gIH1cbiAgLypcbiAgLnByb2R1Y3QtbGlzdCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUVGO1xuICAgIHBhZGRpbmctdG9wOjAuNjc1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6My43NXJlbSAwO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOjAuNjc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206My43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MS44NzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MS44NzVyZW07XG4gICAgICAgID4gLmNvbHVtbiB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjEuODc1cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MS44NzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgcGFkZGluZzoycmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgJi53aGVlbCB7XG4gICAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOjIuMzVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9Ki9cbn1cblxuI3doZWVscywjc2VyaWVzLCNjb2xsZWN0aW9uLCN3aGVlbCB7XG4gIC8vIHByb2R1Y3RzIGxpc3QgLy8vLy8vLy8vLy8vLy8vXG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICB9XG4gICAgLmNvbHVtbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICY6bnRoLWNoaWxkKDNuKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIC5ob3Zlci1pdGVtIHtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICBwYWRkaW5nOjEuMjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZmluaXNoLWxvZ28gaW1nIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmluZm8ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgLy9vcmRlcjotMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgfVxuICAgICAgPiBkaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maW5pc2gtbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OjUwcHg7XG4gICAgICAgICAgbWF4LXdpZHRoOjE2MHB4O1xuICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgICAgcGFkZGluZzouNXJlbSAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmluaXNoIHtcbiAgICAgICAgZm9udC1zaXplOi44MjVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAub3RoZXItZmluaXNoZXMge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBvcGFjaXR5OjA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgei1pbmRleDoyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgPiAub3RoZXItZmluaXNoIHtcbiAgICAgICAgICB3aWR0aDoyNSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1jb250YWluZXIge1xuICAgICAgICBcbiAgICAgICAgLy9vcGFjaXR5OjA7XG4gICAgICAgIGRpc3BsYXk6Z3JpZDtcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMTtcbiAgICAgICAgICBncmlkLXJvdzogMSAvIDE7XG4gICAgICAgIH1cbiAgICAgICAgLm1vcmUtZmluaXNoZXMsLm9uZS1maW5pc2gge1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5Rjc7XG4gICAgICAgIGJvcmRlcjowO1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICBwYWRkaW5nOjRweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tb3JlLWZpbmlzaGVzIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qI3doZWVscyB7XG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tdG9wOjNyZW07XG4gICAgLmNvbHVtbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICB9XG4gIC5ob3Zlci1pdGVtX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6LjU7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIGNvbG9yOiRncmF5O1xuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICB9XG4gIH1cbiAgLnBvcF91cF92ZWhpY2xlIHtcbiAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYnV0dG9uIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzZWUgb24gdmVoaWNsZSBwb3B1cFxuLmZhbmN5Ym94LWlubmVyIHtcbiAgaGVpZ2h0OmF1dG8haW1wb3J0YW50O1xuICAjdmVoaWNsZS1zZWxlY3RzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbn1cbi5mYW5jeWJveC1jbG9zZSB7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50O1xuICByaWdodDotMjBweCFpbXBvcnRhbnQ7ICBcbn1cbiAgKi8iLCIjd2hlZWwge1xuICBjb2xvcjokZ3JheTY7XG4gIC8vcGFkZGluZy10b3A6OTBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgLy9iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR3aGl0ZUY3IDAsICR3aGl0ZUY3IDU1JSwgdHJhbnNwYXJlbnQgNTUlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgICBwYWRkaW5nLXRvcDowO1xuICB9XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZzowO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWF4LWhlaWdodDo2MDBweDtcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB9XG4gICAgLmZsZXgtdmlkZW8gaWZyYW1lIHtcbiAgICAgIHRvcDotMTAlO1xuICAgIH1cbiAgfVxuICAuZGV0YWlscyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMTVkZWcsICR3aGl0ZSA1MCUsICR3aGl0ZUY4IDUwJSk7XG4gICAgfVxuICB9XG4gICNkZXRhaWwtdG9wIHtcbiAgICBiYWNrZ3JvdW5kOmxpbmVhci1ncmFkaWVudCgwZGVnLCAkZ3JheUU3IDAlLCAkZ3JheUU3IDUlLCB0cmFuc3BhcmVudCAyMCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAgID4gZGl2IHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgICAgcGFkZGluZy1sZWZ0Oi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLmxhYmVsIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgaSB7XG4gICAgICBjb2xvcjokcmVkO1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24sIGlucHV0LCBzZWxlY3Qge1xuICAgIG1heC13aWR0aDozNzBweDtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG5cbiAgXG4gIFxuICBcbiAgLndoZWVsLXNpemVzIHtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgfVxuICB9XG4gIC53aGVlbC1kZXRhaWxzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICAgIC53aGVlbC1wYXJhZ3JhcGgge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmxvYWRpbmdJbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2RldGFpbC1ib3R0b20ge1xuICAgIC8vYm9yZGVyLXRvcDoxcHggc29saWQgJGdyYXlDO1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgPiAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmdhbGxlcnktcG9wdXAge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIC5nYWxsZXJ5Vmlldy1pbmZvIHtcbiAgICBjb2xvcjogI2NjYztcbiAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLnBvcHVwLWNhciB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuICAubWZwLWNsb3NlIHtcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gIC8vLmFjY29yZGlvbi1jb250ZW50IHtcbiAgLy8gIHBhZGRpbmc6IDA7XG4gIC8vICBib3JkZXI6IDA7XG4gIC8vICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIC8vfVxuICAuYWx0LWltYWdlcyB7XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIC8vd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmRldGFpbC10aHVtYiB7XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMC4yNXJlbTtcbiAgfVxuICAuZmluaXNoLW5hbWUge1xuICAgIGNvbG9yOiAkZGFyay1ncmF5O1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG4gIGltZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLnNlZS1vbi12ZWhpY2xlLWNvbnRhaW5lciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgcGFkZGluZzogMC4ycmVtO1xuICBtYXJnaW46IDAuNXJlbSAwO1xufVxuXG4uc2VlLW9uLXZlaGljbGUtaGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5zZWUtb24tdmVoaWNsZS1zZWxlY3Qge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG50YWJsZSB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgdHIge1xuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgdGgge1xuICAgICAgYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAjd2hlZWwge1xuICAgIC5iYW5uZXItdG9wIHtcbiAgICAgIC53aGVlbC1iYW5uZXIge1xuICAgICAgICBoZWlnaHQ6IDZyZW07XG4gICAgICB9XG4gICAgICAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgICAgICB0b3A6IDkwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAuZmluaXNoLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4vLyBzdWJtZW51IC8gc3VibmF2XG4jd2hlZWwge1xuICAuZGV0YWlscy1uYXYtY29udGFpbmVyIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICYuYm9keS1uYXYtZml4ZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAvL3BhZGRpbmctdG9wOjEuNzVyZW07XG4gICAgICAvL3BhZGRpbmctYm90dG9tOjEuNzVyZW07XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICB6LWluZGV4OjE7IFxuICAgIH1cbiAgfVxuICAuZGV0YWlscy1uYXYsLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5MztcbiAgICBhLGJ1dHRvbiB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gIC5kZXRhaWxzLW5hdiB7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBcbiAgICAucm93LmV4cGFuZGVkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1icmVhZGNydW1icyB7ICAgICBcbiAgICB9XG4gICAgLmJyZWFkY3J1bWJzLXJldHVybiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgJi1saW5rIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6Ljc1cmVtO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6MnJlbTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6MnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRldGFpbHMtbmF2LW1lbnUtYnV0dG9uIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRldGFpbHMtbmF2LXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OmZsZXgtZW5kO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXkzO1xuICAgICAgICBib3JkZXItY29sb3I6ICRncmF5MztcbiAgICAgICAgbWF4LXdpZHRoOjE2MHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEzMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IC43NXJlbSAwO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIHtcbiAgICAvKi5wcm9kdWN0cy1saXN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICAgIH0qL1xuICAgICAgdWwge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBvdmVyZmxvdy14OnNjcm9sbDtcbiAgICAgICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICAgICAgbWF4LWhlaWdodDoyNjBweDtcbiAgICAgICAgbWF4LXdpZHRoOjQ0MHB4O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgICAuaG92ZXItaXRlbSB7XG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjc7XG4gICAgICAgICAgcGFkZGluZzoxLjI1cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmluZm8ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgICAvL29yZGVyOi0xO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgLy99XG4gIH0gLy8gLmRldGFpbHMtbmF2XG59XG5cbiN3aGVlbCAuY2FwLWNvbnRhaW5lciwjd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciwgI3doZWVsIC5wcmljZS1jb250YWluZXIsICNhY2Nlc3NvcnkgLndoZWVsLWNvbnRhaW5lciB7XG4gIC8vcGFkZGluZy1ib3R0b206IDFyZW07XG4gIFxuICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheUM7XG4gIG1heC13aWR0aDozMzZweDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgLnByaWNlIHtcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgfVxuICAucHJpY2UtcmFuZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6MS4wNzVyZW07XG4gICAgLy9mb250LXdlaWdodDo5MDA7XG4gICAgY29sb3I6JGJsYWNrO1xuICB9XG4gIC8vLnByaWNlLWJ1dHRvbiB7XG4gIC8vICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgLy8gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIC8vfVxuICAucHJpY2UtYnV0dG9ucyB7XG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBwYWRkaW5nOiAuNzVyZW07XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICRibGFjaztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICB3aWR0aDoxNThweDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5NjtcbiAgICAgIH1cbiAgICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOm9yYW5nZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByaWNlLWJ1dHRvbjpudGgtY2hpbGQoMikge1xuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6JGdyYXk2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcmljZS1idXR0b246bGFzdC1jaGlsZCB7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXlDO1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBib3JkZXItY29sb3I6JGdyYXk2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jd2hlZWwgLnByaWNlLWNvbnRhaW5lciB7XG4gIG1heC13aWR0aDpub25lO1xuICBpbnB1dCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgfVxuICBzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIG1heC13aWR0aDpub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUVGO1xuICB9XG4gIC8vIHNpemUgc2VsZWN0XG4gICNkZXRhaWxzLWRpYW1ldGVycyB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuICAvLyBkaXNjbGFpbWVyIFxuICAuZGlzY2xhaW1lciB7XG4gICAgbWFyZ2luOjJyZW0gMDtcbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICB9XG59XG4jd2hlZWwgLnJlYXItc2l6ZS1jb250YWluZXIge1xuICAvL2Rpc3BsYXk6bm9uZTtcbiAgJi5kaXNwbGF5LXJlYXIge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgI2RldGFpbHMtcmVhci1kaWFtZXRlcnMge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgLnNlbGVjdC1yZWFyLXNpemUge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAjcmVhci1kaXNwbGF5IHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBzcGFuOmZpcnN0LWNoaWxkIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICBzcGFuOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIH1cbiAgfVxufVxuI3doZWVsIC5zZWxlY3RlZC1wcmljZS1jb250YWluZXIge1xuICBkaXNwbGF5Om5vbmU7XG4gIGNvbG9yOiRibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUVGO1xuICBwYWRkaW5nOjFyZW07XG4gIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgcGFkZGluZzoycmVtO1xuICB9XG4gIC5zZWxlY3RlZC1wcmljZSB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5zaGlwcGluZyB7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIH1cbiAgfVxuICAuc2VsZWN0ZWQtcHJpY2UtZGlzcGxheSB7XG4gICAgLy9kaXNwbGF5OmZsZXg7XG4gICAgaDUge1xuICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgIH1cbiAgICAuZnJvbnQsLnJlYXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWF4LXdpZHRoOjYwcHg7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3RlZC1mcm9udC1wcmljZSwuc2VsZWN0ZWQtcmVhci1wcmljZSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3RlZC1mcm9udC1wcmljZSwuc2VsZWN0ZWQtcmVhci1wcmljZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgIC5kaXNwbGF5LWZyb250LXN0b2NrLC5kaXNwbGF5LXJlYXItc3RvY2sge1xuICAgICAgICBjb2xvcjokZ3JlZW47XG4gICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jYXJ0LWJ1dHRvbiB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDoycmVtO1xuICAgICAgbWF4LXdpZHRoOjYwcHg7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICZbbmFtZT1cInF1YW50aXR5XCJdICB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgbWF4LXdpZHRoOjE1OHB4O1xuICAgIH1cbiAgfVxufVxuI3doZWVsIC5jYXAtY29udGFpbmVyLCAjYWNjZXNzb3J5IC53aGVlbC1jb250YWluZXIge1xuICBtYXgtd2lkdGg6bm9uZTtcbiAgaDQge1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxuICAudGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLnByaWNlLXJhbmdlIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOjEuMDc1cmVtO1xuICAgIC8vZm9udC13ZWlnaHQ6OTAwO1xuICAgIGNvbG9yOiRibGFjaztcbiAgfVxuICAuY2FwLWl0ZW0ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICBtYXgtd2lkdGg6MjQlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDoxMDBweDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuICB9XG4gIC5wcmljZS1idXR0b25zIHtcbiAgICAucHJpY2UtYnV0dG9uOmxhc3QtY2hpbGQge1xuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ3JheUM7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5tYWluLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgLy9wYWRkaW5nLXJpZ2h0OjA7XG4gIG1hcmdpbjowIGF1dG87XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZy1sZWZ0OjJyZW07XG4gIH1cbiAgaW1nIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6NjMwcHg7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuICAuc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHt9XG4gIC5zbGljay1kb3RzIHtcbiAgICBsaSB7XG4gICAgICBoZWlnaHQ6MjFweDtcbiAgICAgIHdpZHRoOjIxcHg7XG4gICAgICBidXR0b24ge1xuICAgICAgICBoZWlnaHQ6MjFweDtcbiAgICAgICAgd2lkdGg6MjFweDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTozLjVyZW07XG4gICAgICAgICAgd2lkdGg6MjNweDtcbiAgICAgICAgICBoZWlnaHQ6MjNweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDoyMXB4O1xuICAgICAgICAgIGJvcmRlcjoycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYWx0LWltYWdlcyB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIC8vZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIH1cbiAgfVxuICAmLS1yZXRhaWxlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIC8vd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIC5zbGljay1kb3RzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAuc2xpY2stc2xpZGUge1xuICAgIC8vd2lkdGg6MTAwcHghaW1wb3J0YW50O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgd2lkdGg6MTE1cHghaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICB9XG4gICAgJi5zbGljay1jdXJyZW50IHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGdyYXk5O1xuICAgIH1cbiAgfVxuICAuc2xpY2stc2xpZGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbiAgYSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IC43cmVtO1xuICB9XG4gIGltZyB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIC4zcyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG4gICAgfVxuICB9XG59IiwiI3doZWVsIHtcbiAgLndoZWVsLWRldGFpbC1zcGVjcyB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgID4gZGl2IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgfVxuICAgIC53aGVlbC1zaXplcyB7XG4gICAgICBtYXJnaW4tdG9wOjA7XG4gICAgfVxuICB9XG59XG5cbi53aGVlbC1zcGVjcyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gICZfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAmX19kZXRhaWxzIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cblxuLmRldGFpbC1zcGVjLXRhYnMge1xuICBib3JkZXI6IG5vbmU7XG4gICYtY29udGVudCB7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gICYtcGFuZWwge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogNTAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDAuNnJlbSAwO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkZGQ7XG4gICAgY29sb3I6ICM2NjY7XG4gICAgJlthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG4gIH1cbn1cblxuXG4uYnAtdG9nZ2xlLWJ0biB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn0iLCIud2hlZWwtaW5mbyB7XG4gIC8vcGFkZGluZy1ib3R0b206IDFyZW07XG4gIC8vbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheUM7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIG1heC13aWR0aDo0MDBweDtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICBjb2xvcjokZ3JheTM7XG4gIH1cbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICBjb2xvcjokZ3JheTY7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZToxLjA3NXJlbTtcbiAgICBjb2xvcjokYmxhY2s7XG4gIH1cbiAgLmluZm9ybWF0aW9uLC5zaXplcywuZmluaXNoIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAuZmluaXNoIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLnNpemVzIHtcbiAgICAudGl0bGUge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgJi1saXN0IHtcbiAgICAgIGZvbnQtc2l6ZToxLjA3NXJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgLy9mb250LXdlaWdodDo5MDA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VlLXNwZWNzIHtcbiAgICBhIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gYWNjb3JkaW9uXG4jd2hlZWwge1xuICAud2hlZWwtZmlsdGVyIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjEuMjVyZW07XG4gICAgICAuaXMtYWN0aXZlPi5hY2NvcmRpb24tdGl0bGUgLmZhLWNoZXZyb24tdXA6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6J1xcZjA3OCc7XG4gICAgICB9XG4gICAgICAuZmFzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICAgICYtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICB9XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmN0YS1idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OmZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLXRvcDozcmVtO1xuICB9XG4gICZfX2J0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgJi0tc3BhY2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5OTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwYWRkaW5nLXRvcDouMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206LjI1cmVtO1xuICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgfVxuICBsaSB7XG4gICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0Oi41O1xuICAgIHdpZHRoOjI1JTtcbiAgICAmOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLmRldGFpbHMtbWVkaWEge1xuICB6LWluZGV4OiA1O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICZfX2hlYWRlciB7XG4gICAgZm9udC1mYW1pbHk6IEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICAgIC1tb3otdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5kZXRhaWxzLWRpdmlkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjN2M3Yzk7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgbWFyZ2luOiAxNXB4IGF1dG8gMDtcbiAgICB3aWR0aDogMnJlbTtcbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgLmRldGFpbHMtMzYwLFxuICAuZGV0YWlscy12aWRlbyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMCAxcmVtO1xuICB9XG4gIC5kZXRhaWxzLWRpdmlkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIiNzZWUtb24tdmVoaWNsZS1kZXRhaWwge1xuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbiAgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IC44NzVyZW07XG4gIH1cbiAgLmVycm9yIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgei1pbmRleDogMjtcbiAgfVxuICAubm8tZml0bWVudCB7XG4gICAgbWluLWhlaWdodDogNnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiAwO1xuICAgICAgb3BhY2l0eTogLjg7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB6LWluZGV4OiAxO1xuICAgIH1cbiAgICAuZXJyb3Ige1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG4gIC5sb2FkaW5nSW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaG92ZXItaXRlbTpob3ZlciB7XG4gICAgYnV0dG9uIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDAuMDc1O1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIG9wYWNpdHk6IC43O1xuICAgIH1cbiAgfVxuICBidXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDQwJTtcbiAgICBsZWZ0OiAwO1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgb3BhY2l0eTogMDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgfVxuICB9XG4gICYtb3ZlcmxheSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIC5mYS1zcGlubmVyIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufSIsIiNzZWUtb24tdmVoaWNsZS1wb3B1cCB7XG4gIGJvcmRlcjowO1xuICBwYWRkaW5nOjNyZW07XG4gIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwdm1heCByZ2JhKDAsIDAsIDAsIC43KTtcbiAgJjotaW50ZXJuYWwtZGlhbG9nLWluLXRvcC1sYXllcjo6YmFja2Ryb3AsJjo6YmFja2Ryb3Age1xuICAgIC8vYmFja2dyb3VuZDpyZ2JhKDAsMCwwLDAuNyk7XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgICAmW29wZW5dIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfVxuICAjd2hlZWwtc3BlYy1wcmljZSwuYnV5LW5vdyB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gICN2ZWhpY2xlLWRlc2NyaXB0aW9uLCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgI3ZlaGljbGUtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICB9XG4gICN2ZWhpY2xlLWRlc2NyaXB0aW9uLW1vYmlsZSB7XG4gICAgI3Zvdi1zdWJtb2RlbCB7XG4gICAgICBmb250LXNpemU6MS4zMHJlbTtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlLXBvcHVwLWNvbG9yLWJ1dHRvbiB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLndoZWVsLWluZm8ge1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46MDtcbiAgICBib3JkZXI6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDtcbiAgICBib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIC53aGVlbC10aHVtYm5haWwge1xuICAgICAgbWFyZ2luLXJpZ2h0Oi43NXJlbTtcbiAgICB9XG4gIH1cbiAgLnNwZWNzLWluZm8sLnNwZWNzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbiAgLnNwZWNzLWluZm8ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuICAjd2hlZWwtYnJhbmQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICB9XG4gIC5zcGVjcyB7XG4gICAgJi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAgIH1cbiAgICAgID4gLnNwZWNzOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIGxvYWRpbmcgXG4gICNpY20tdm92LWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpO1xuICAgIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgfVxuICAvLyBwcmV2IG5leHRcbiAgLnZlaGljbGUtcG9wdXAtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuICAudm92LWFuZ2xlLWFycm93IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjI1JTtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIHBhZGRpbmc6LjVyZW07XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgdG9wOjQ4JTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICB9XG4gIH1cbiAgI3Zvdi1wcmV2aW91cy1hbmdsZSB7XG4gICAgbGVmdDowO1xuICB9XG4gICN2b3YtbmV4dC1hbmdsZSB7XG4gICAgcmlnaHQ6MDtcbiAgfVxuICBcbn1cblxuXG5cbi8vIHN3YXRjaFxuI3N3YXRjaGVzLWRpYWxvZyB7XG4gIGJvcmRlcjoxcHggc29saWQgJGdyYXlDO1xuICBib3JkZXItcmFkaXVzOjVweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwdm1heCByZ2JhKDAsIDAsIDAsIC41KTtcbiAgLmljbS12b3Ytc3dhdGNoLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxufSIsIi53aGVlbC1nYWxsZXJ5IHtcbiAgJl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDogMS4xMDU7XG4gICAgbWFyZ2luOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLndoZWVsLWdhbGxlcnlMaXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbiAgJl9faXRlbSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzElO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICAmOm50aC1jaGlsZChuICsgNykge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi0tZGlzcGxheTpudGgtY2hpbGQobiArIDcpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG4ud2hlZWwtZ2FsbGVyeUltYWdlIHtcbiAgd2lkdGg6IDE5MHB4O1xuICBoZWlnaHQ6IDEwMnB4O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICB3aWR0aDogOTVweDtcbiAgICBoZWlnaHQ6IDYwcHg7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gIC53aGVlbC1nYWxsZXJ5VHh0IHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxufVxuIiwiI3NwZWNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgLy9vdmVyZmxvdzogYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gIGZvbnQtc2l6ZTouOHJlbTtcbiAgY29sb3I6JGJsYWNrO1xuXG4gIC8vLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAvLyAgZGlzcGxheTpub25lIWltcG9ydGFudDtcbiAgLy99XG4gIGg0IHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICB9XG4gIC50YWJzIHtcbiAgICBib3JkZXI6MDtcbiAgfVxuICB0YWJsZSB7XG4gICAgdHIge1xuICAgICAgdGgsdGQge1xuICAgICAgICBwYWRkaW5nOi43NXJlbSAxLjI1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICBcbiAgICB0aGVhZCB7XG4gICAgICAvL3RleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjowO1xuICAgICAgdHIge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgdGJvZHkge1xuICAgIGJvcmRlcjowO1xuICB9XG4gIHRyIHtcbiAgICAmOm50aC1jaGlsZChvZGQpIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGMTtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbiAgdGhlYWQgdHI6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBmb250LXdlaWdodDo5MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nLXRvcDouOXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTouOXJlbTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIGJvcmRlcjowO1xuICAgIGEge1xuICAgICAgLy9jb2xvcjokYmxhY2s7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud2hlZWwtc3BlYyB7XG4gICYtdGFicyB7XG4gICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgbWluLXdpZHRoOjcwcHg7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgPiBhIHtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYtcGFuZWwge1xuICAgIG92ZXJmbG93OmF1dG87XG4gIH1cbn1cbi53aGVlbC1kZXRhaWwtc3BlY3MtdGl0bGUge1xuICAucm93IHtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbn1cbi5zcGVjcy1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGJvcmRlci1sZWZ0OjA7XG4gICAgYm9yZGVyLXJpZ2h0OjA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGdyYXlDO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgcGFkZGluZzoxLjVyZW0gMDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgfVxuICB9XG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgYm9yZGVyOjA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcblxuICAgIH1cbiAgfVxufVxuLypcbi53aGVlbC1zcGVjIHtcbiAgICAmLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5OTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICBcbiAgICAmLXRhYnMgPiBhIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGMTtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6Zm9jdXMsICZbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk3O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cbiAgICAmLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIGEge1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICAgICYtYnRuIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICB9XG4gIC50YWJzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgPiBkaXYge1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkd2hpdGU7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6MDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0qLyIsIi5maW5pc2hlcyB7XG4gIHBhZGRpbmctYm90dG9tOjFyZW07XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICB9XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOjE3MHB4O1xuICB9XG4gIHAge1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIC5maW5pc2gtbmFtZSB7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXNpemU6MXJlbVxuICAgIH1cbiAgICAubHVncyB7XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICB9XG4gIH1cbiAgLmxhYmVsIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIH1cbiAgLmFsdC1maW5pc2hlcyB7XG4gICAgPiBhIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcblxuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGMztcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUYzO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICB9XG4gICAgICAmLmRpc2NvbnRpbnVlZC1maW5pc2gge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBmb250LXNpemU6LjdyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICAgICAgLmRpc2NvbnRpbnVlZC1vdmVybGF5IHtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICAgIC5kaXNjb250aW51ZWQtb3ZlcmxheXtcbiAgICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6LjE1O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOjkwcHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI3doZWVsIHtcbiAgLndoZWVsLWRldGFpbC1nYWxsZXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6My41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBtYXgtd2lkdGg6OTByZW07XG4gICAgICBwYWRkaW5nOjAgMnJlbTtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgfVxuICAgIC5waG90byB7XG4gICAgICBib3JkZXI6M3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgIC8vYm9yZGVyLWxlZnQ6MDtcbiAgICAgIC8vYm9yZGVyLWJvdHRvbTowO1xuICAgICAgLy8mLmVuZCB7XG4gICAgICAvLyAgYm9yZGVyLXJpZ2h0OjA7XG4gICAgICAvL31cbiAgICAgIHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgICAgcGFkZGluZy1ib3R0b206NzUlO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICBtYXJnaW4tdG9wOjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB3aWR0aDogMTU4cHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogdW5zZXQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHBhZGRpbmc6IC43NXJlbTtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5NjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wcm9kdWN0LW5leHQtcHJldiB7XG4gIGRpc3BsYXk6ZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYSB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkd2hpdGVGODtcbiAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiRibGFjaztcbiAgICB9XG4gICAgJi5uby1wcm9kdWN0IHtcbiAgICAgIG9wYWNpdHk6LjU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RDU7XG4gIH1cbn0iLCIud2hlZWwtdGl0bGUge1xuICAvL3BhZGRpbmctYm90dG9tOjA7XG4gIC8vbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gIC8vYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAvL3BhZGRpbmctYm90dG9tOjFyZW07XG4gICAgLy9kaXNwbGF5OmZsZXg7XG4gICAgLy9hbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIGgyLCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICBoMyxoNCB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzouNXJlbTtcbiAgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIG1hcmdpbi1ib3R0b206LjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgaDYge1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBsZXR0ZXItc3BhY2luZzouMTVyZW07XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjokZ3JheTY7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAvL2Rpc3BsYXk6ZmxleDtcbiAgICAgIC8vYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIH1cbiAgICAubHVnLWRpc3BsYXkge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG4gIC5yZWQge1xuICAgIGNvbG9yOiRyZWQ7XG4gIH1cbiAgLmRpdmlkZXIge1xuICAgIHdpZHRoOjFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICBoZWlnaHQ6NDZweDtcbiAgICBtYXJnaW4tbGVmdDoxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDoxLjI1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLmZpbmlzaCB7XG4gICAgLy9tYXJnaW4tbGVmdDoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgLy9kaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIC5kaXNjb250aW51ZWQge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tdG9wOi0xLjVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICB9XG4gIC5wcmljZSwubXNycC1kaXNwbGF5IHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgXG4gICAgICAmLm1zcnAtcHJpY2luZyB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiA0NSU7XG4gICAgICAgIFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gICAgICAgIFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tc3JwLWRpc3BsYXkge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufSIsIiN3aGVlbCB7XG4gIC5jYXJ0IHtcbiAgICBjb2xvcjokZ3JheTY7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIFxuICAgIC8vIHByb2R1Y3Qgc2VsZWN0IC8vLy8vXG4gICAgLnByb2R1Y3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgJi5za3UtcHJvZHVjdCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgIH1cbiAgICAgICNwcm9kdWN0LXNlbGVjdCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC41cmVtIGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LXNrdSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgfVxuICAgICAgLmxhYmVsIHtcbiAgICAgICAgJi5za3UtaW5mb3JtYXRpb24ge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICAgIH1cbiAgICAgICAgJi5za3UtbGFiZWwge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBmaXRtZW50IHNlbGVjdGVkIC8vLy8vL1xuICAgIC5maXRtZW50LXNlbGVjdGVkIHtcbiAgICAgIG1heC13aWR0aDo0MDBweDtcbiAgICAgIC52ZWhpY2xlIHtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgICAgIC8vZGlzcGxheTp0YWJsZTtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgLy9tYXJnaW4tbGVmdDoxcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgICAgLy9kaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUU7XG4gICAgICAgICAgJi5maXRtZW50LW9wZW4ge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDowO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuZml0bWVudENsZWFyMyB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB9XG4gICAgICAgIC5yZW1vdmUtZml0bWVudCB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnZvdi1saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5MztcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzoxcmVtIDJyZW07XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czo1MHB4O1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOjI2MHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOjIuMjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cblxuXG5cbiAgICAvLyBwcmljaW5nIC8vLy8vLy8vL1xuICAgIC5wcmljaW5nLXNlY3Rpb24ge1xuICAgICAgbWF4LXdpZHRoOjM3MHB4OyAgXG4gICAgICAmLnNrdS1wcmljaW5nLXNlY3Rpb24ge1xuICAgICAgICBkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC50b3Age1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6ZmxleC1lbmQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6ODBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wcmljaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6MS43NXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjE1cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMjU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ib3R0b20ge1xuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLy8gc3VibWVudSAvIHN1Ym5hdlxuLmRldGFpbHMtbmF2LWNvbnRhaW5lciB7XG4gIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICYuYm9keS1uYXYtZml4ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIC8vcGFkZGluZy10b3A6MS43NXJlbTtcbiAgICAvL3BhZGRpbmctYm90dG9tOjEuNzVyZW07XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDowO1xuICAgIHJpZ2h0OjA7XG4gICAgbGVmdDowO1xuICAgIHotaW5kZXg6MTsgXG4gIH1cblxuICAuZGV0YWlscy1uYXYsLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICBhLGJ1dHRvbiB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICB9XG4gIC5kZXRhaWxzLW5hdiB7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJHdoaXRlO1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBcbiAgICAucm93LmV4cGFuZGVkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1icmVhZGNydW1icyB7ICAgICBcbiAgICB9XG4gICAgLmJyZWFkY3J1bWJzLXJldHVybiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgJi1saW5rIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBvdmVyZmxvdzogdW5zZXQ7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjJyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDoycmVtO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICAuZGV0YWlscy1uYXYtbWVudS1idXR0b24ge1xuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRldGFpbHMtbmF2LXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGdyYXkzO1xuICAgICAgICBtYXgtd2lkdGg6MTYwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGV0YWlscy1uYXYtbWVudS1jb250YWluZXIge1xuICAgIC8qLnByb2R1Y3RzLWxpc3Qge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgICAgfSovXG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6MjtcbiAgICAgIHVsIHtcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgb3ZlcmZsb3cteDpzY3JvbGw7XG4gICAgICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgICAgICBwYWRkaW5nOjJyZW07XG4gICAgICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogbm9uZTsgIC8qIEludGVybmV0IEV4cGxvcmVyIDEwKyAqL1xuICAgICAgICBzY3JvbGxiYXItd2lkdGg6IG5vbmU7ICAvKiBGaXJlZm94ICovXG4gICAgICAgICY6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgXG4gICAgICAgICAgZGlzcGxheTogbm9uZTsgIC8qIFNhZmFyaSBhbmQgQ2hyb21lICovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0Oi4yNXJlbTtcbiAgICAgICAgbWF4LWhlaWdodDoyNjBweDtcbiAgICAgICAgbWF4LXdpZHRoOjQ0MHB4O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgICAuaG92ZXItaXRlbSB7XG4gICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjc7XG4gICAgICAgICAgcGFkZGluZzoxLjI1cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmluZm8ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgICAvL29yZGVyOi0xO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgLy99XG4gICAgLmRldGFpbHMtbmF2LWJ1dHRvbi1jb250YWluZXIge1xuICAgICAgYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHRvcDozOCU7XG4gICAgICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuNCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMHB4O1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIHdpZHRoOjUwcHg7XG4gICAgICAgIGhlaWdodDo1MHB4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAmLmJ1dHRvbi1sZWZ0IHtcbiAgICAgICAgICBsZWZ0OjNyZW07XG4gICAgICAgIH1cbiAgICAgICAgJi5idXR0b24tcmlnaHQge1xuICAgICAgICAgIHJpZ2h0OjNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0gLy8gLmRldGFpbHMtbmF2LW1lbnUtY29udGFpbmVyXG4gIC8vIG92ZXJsYXlcbiAgLmRldGFpbHMtbmF2LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OjE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNyk7XG4gICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDNweCk7XG4gICAgaGVpZ2h0OjEwMHZoO1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbn0gLy8gLmRldGFpbHMtbmF2LWNvbnRhaW5lciIsIi8vLy8vIGxpc3RpbmcgZmlsdGVycyAvIHNvcnQgLy8vLy8vLy9cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMge1xuICBoMyB7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cblxuICAudGl0bGUge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QTtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLmFjY29yZGlvbi1jb250YWluZXIge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyYXlBO1xuICAgIH1cbiAgfVxuXG4gIC5maXRtZW50LXNlYXJjaCB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLndoZWVsLWZpbHRlciB7XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAvL2JvcmRlci1yaWdodDoxcHggc29saWQgJGdyYXk2O1xuICAgIGg1IHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luOjA7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtc2l6ZTouODc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6MDtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTouNzVyZW07XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjA7XG4gICAgfVxuICAgICYuZmlsdGVyLWFjdGl2ZSB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgcGFkZGluZzouMjVyZW0gLjVyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICB9XG4gICAgICAgICYjY2xlYXIge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1zZWxlY3RlZCB7XG4gICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maWx0ZXItYWN0aXZlLWNsZWFyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlBO1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItYnV0dG9uIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC13ZWlnaHQ6ODAwO1xuICAgIH1cbiAgICAmLXBhcnQtbnVtYmVyIHtcbiAgICAgIG1heC13aWR0aDo4MCU7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTY7XG4gICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgaW5wdXQge1xuICAgICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgICBidXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXNob3BieSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTo1cHggc29saWQgJGdyYXk2OyAgXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICBtYXgtd2lkdGg6ODAlO1xuICAgICAgfVxuICAgICAgbGFiZWwsc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoNSB7XG4gICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6MXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZSBcbiN3aGVlbHMsICN3aGVlbC1icmFuZHMsICNnYWxsZXJ5IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAuZmlsdGVyIHtcbiAgICAgICYtc2VsZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUE7XG4gICAgfVxuICB9XG4gIC5hY2NvcmRpb24ge1xuICAgICYtaXRlbSB7XG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIC8vY29sb3I6JGJsdWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBib3JkZXI6MDtcbiAgICB9XG4gIH1cbn1cblxuI3doZWVscyAud2hlZWwtZmlsdGVyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIge1xuICAjd2hlZWwtZmlsdGVyLXNlYXJjaCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmJyYW5kLW5hbWUge1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIG1hcmdpbjowIDFyZW07XG4gICAgfVxuXG4gICAgLmFjY29yZGlvbi1maWx0ZXJfX2hlYWRlciB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdW5zZXQ7XG4gICAgfVxuICB9XG5cblxuXG5cblxuICAuYWNjb3JkaW9uLWZpbHRlciB7XG4gICAgJl9fY29udGVudCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmX19jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgfVxuICAgIH1cblxuICAgICZfX2Ryb3Bkb3duIHtcbiAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW46MCAxcmVtO1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MS41cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RDtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBwYWRkaW5nOi43NXJlbSAxLjc1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zb3J0LXdoZWVscyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgfVxuICB9XG59XG5cblxuXG5cbi8vLy8vIHNpZGUgZmlsdGVycyAtIGZpdG1lbnQgLy8vLy8vL1xuI3doZWVscywgI3doZWVsLWJyYW5kcywgI2dhbGxlcnkge1xuICAuZmlsdGVyIHtcbiAgICAmLWZpdG1lbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIH1cbiAgICAudmVoaWNsZS10aXRsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgaGVpZ2h0OjU0cHg7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGg0IHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZS1zZWxlY3Qge1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBib3JkZXItdG9wOjA7XG4gICAgICBzZWxlY3Qge1xuICAgICAgICBib3JkZXItY29sb3I6JGdyYXlDO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBlbGl0ZVxuICAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCB7XG4gICAgLnZzLS11bnNlYXJjaGFibGUge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RTY7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgfVxuICAgICAgLnZzX19kcm9wZG93bi10b2dnbGUge1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAudnNfX3NlYXJjaCB7XG4gICAgICAgICAgLy9mb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYudnMtLWRpc2FibGVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU2O1xuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU2O1xuICAgICAgICB9XG4gICAgICAgIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RTY7XG4gICAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIH1cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RTY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC52c19fc2VsZWN0ZWQge1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEljb24gRmlsdGVyc1xuLnByb2R1Y3QtZmlsdGVycyB7XG4gIC5pY29uLXByb2R1Y3QtZmlsdGVyIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gIH1cbiAgLmZpbHRlci1icmFuZHMtb3B0cyB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG59XG4uaWNvbi1maWx0ZXItdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGg0IHtcbiAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbn1cblxuLmljb24tZmlsdGVyLWl0ZW1zIHtcbiAgcGFkZGluZy10b3A6MXJlbTtcbiAgbGkge1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbiAgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgfVxuICBsYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxufVxuXG4vLy8vLyBzaWRlIGZpbHRlcnMgLy8vLy8vL1xuI3doZWVscywgI3doZWVsLWJyYW5kcywgI2dhbGxlcnkge1xuICAuZmlsdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIGkge1xuICAgICAgJi5mYS1taW51cywmLmZhLXBsdXMge1xuICAgICAgICBjb2xvcjokZ3JheTg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIC5maWx0ZXItYnV0dG9uIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgY29sb3I6JGdyYXk0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVyLWl0ZW1zIHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItYnJhbmRzIC5maWx0ZXItaXRlbXMge1xuICAgICAgLy9kaXNwbGF5OmJsb2NrO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LWZpbHRlcnMge1xuICAgICAgLnByb2R1Y3QtZmlsdGVyIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBhY3RpdmUgXG4gICAgLmZpbHRlci1hY3RpdmUge1xuICAgICAgLy9wYWRkaW5nOjFyZW0gMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIHBhZGRpbmc6LjI1cmVtIC41cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgZm9udC1zaXplOmluaGVyaXQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuZml0bWVudFNldCB7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTk7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDoxMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWNsZWFyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbToxLjVyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBjb2xvcjogJGdyYXk0O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmlsdGVyLWFjdGl2ZS10aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgaDQge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWx0ZXItYnJhbmRzIHtcbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWF4LXdpZHRoOjI2MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gd2hlZWwgaW5mb3JtYXRpb24gYW5kIHByaWNpbmdcbiN3aGVlbCAud2hlZWwtaW5mbywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyB7XG4gIC8qcGFkZGluZzoxcmVtO1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICBib3gtc2hhZG93OiAwcHggMHB4IDI1cHggJGdyYXlDO1xuICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZzoyLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbToyLjVyZW07XG4gIH0qL1xuICAvLyBpbmZvcm1hdGlvblxuICBoMSxoNCB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzouMnJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICBsaW5lLWhlaWdodDoxLjE7XG4gIH1cblxuICAuYm90dG9tLC5wcmljaW5nLXN0b2NrLC5wcmljaW5nLXByaWNlLC5wcmljaW5nLW1hdGNoIHtcbiAgICBmb250LWZhbWlseTokZGV0YWlsLWZvbnQtZmFtaWx5O1xuICB9XG5cbiAgLnByaWNpbmctc3BlY3Mge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC1zaXplOi44NXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgfVxuICAgIC50b3Age1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAuZnJvbnQsLnJlYXIge1xuICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDonLCc7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYm90dG9tIHtcbiAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgICAucHJpY2luZy1icmFuZCB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgICAgLnByaWNpbmctc3RhcnRpbmcge1xuICAgICAgICAuY2FsbC1mb3Ige1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICAgIC5zYWxlLWl0ZW0ge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm5vbi1za3VwYWdlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHJpY2luZy1zdG9jayB7XG4gICAgICBjb2xvcjokZ3JlZW47XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5wcmljaW5nLXByaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RUY7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGJvcmRlci1yYWRpdXM6LjVyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAudGl0bGUge1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAuc2FsZS1pdGVtIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgfVxuICAgIC5wcmljZS1vcmlnaW5hbCB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICB9XG4gICAgLnByaWNlLXNhbGUge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gY3RhXG4gIC5wcmljaW5nLW1hdGNoIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtc2l6ZTouOTVyZW07XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICB9XG5cbiAgLnByaWNpbmctdmVoaWNsZSB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIGg0IHtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtOyAgXG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBmb250LWZhbWlseTogJGRldGFpbC1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTouOTVyZW07XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cblxuICAuY3RhIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOi41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTowcmVtO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHBhZGRpbmc6MS42cmVtIC41cmVtO1xuICAgICAgZm9udC1zaXplOjEuMDVyZW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICB9XG4gICAgICAmLmdyYXkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5OTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICAgICYtYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB9XG4gICAgJi1saW5rIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLm9yYW5nZSB7XG4gICAgICAgIC5pY29uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgIGEge1xuICAgICAgICBmb250LWZhbWlseTokZGV0YWlsLWZvbnQtZmFtaWx5O1xuICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4wNXJlbTtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgIH1cblxuICAgICAgLmljb24ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MS41cmVtO1xuICAgICAgICB3aWR0aDo1MHB4O1xuICAgICAgICBoZWlnaHQ6NTBweDtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOjUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5zZXQ7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIH1cbiAgICAgIC50ZXh0IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1eS1vcHRpb25zIHtcbiAgICBmb250LWZhbWlseTokZGV0YWlsLWZvbnQtZmFtaWx5O1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RDQ7XG4gICAgYm9yZGVyLXJhZGl1czouNXJlbTtcbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICAgIC5taXNzaW5nIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDUxLDUxLC41KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG5cbiN3aGVlbCAud2hlZWwtaW5mbywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyB7XG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOjIwMHB4O1xuICB9XG4gIC5zZXJpZXMtbG9nbyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6MTgwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53aGVlbC1uYW1lIHtcbiAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIH1cbiAgfVxufVxuXG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIHtcbiAgaDUge1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzotMXB4O1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgY29sb3I6JGJsYWNrO1xuICB9XG59XG5cblxuLy8gc3BlYyBpbmZvcm1hdGlvblxuLndoZWVsLWRldGFpbC1zaXplcyB7XG4gIC50aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICB9XG59XG5cblxuLy8gYmFkZ2UgaW5mb3JtYXRpb25cbi53aGVlbC1iYWRnZXMge1xuICBkaXNwbGF5OmZsZXg7XG4gID4gZGl2IHtcbiAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6MTAwcHg7XG4gIH1cbn1cblxuXG4vLyBmaW5pc2ggaW5mb3JtYXRpb25cbi53aGVlbC1maW5pc2hlcyB7XG4gIFxuICBpbWcge1xuICAgIG1heC13aWR0aDoxNTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTouNTtcbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgbWFyZ2luLWJvdHRvbToxLjE1cmVtO1xuICB9XG4gIC5kZXRhaWwtdGh1bWIge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgfVxuICAud2hlZWwtZmluaXNoIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgfVxufVxuXG5cbi8vIHZpZGVvcyBpbmZvcm1hdGlvbiBcbi53aGVlbC12aWRlb3Mge1xuICAmLmZpbmlzaGVzLWJvcmRlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmF5QTtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gICAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgfVxuICAudGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2xvcjogJGdyYXkzO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTVyZW07XG4gIH1cbiAgLndoZWVsLXZpZGVvIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgPiBkaXYge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIG1heC13aWR0aDo1MCU7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlBO1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLnBsYXktaWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDApO1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wbGF5LWljb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOjA7XG4gICAgICByaWdodDowO1xuICAgICAgYm90dG9tOjA7XG4gICAgICBsZWZ0OjA7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBpbWcge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBtb2JpbGUgXG4ucHJpY2luZy1pbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmc6MCAuNjI1cmVtO1xufSIsIiN3aGVlbCB7XG4gIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciB7XG4gICAgLnNwZWMtaW5mb3JtYXRpb24ge1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk5O1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiRkZXRhaWwtZm9udC1mYW1pbHk7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICAmLXRpdGxlIHsgXG4gICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB9XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgICAgbWFyZ2luOjAgMnB4O1xuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiN3aGVlbCB7XG4gIC53aGVlbC1kZXRhaWwtc3RhZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL21hcmdpbi1ib3R0b206M3JlbTtcbiAgICAuY2FwdGlvbiB7XG4gICAgICBjb2xvcjokZ3JheTM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgfVxuICBcblxuXG5cbiAgLnN0YWdlLWNvbnRhaW5lciB7IFxuICAgID4gZGl2IHtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOjM1JTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDo4MCU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6ODUlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5hbHQtaW1hZ2VzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OjRyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhyZW07XG4gICAgICB9XG4gICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICAgIC5zbGljay1zbGlkZSwuc2xpY2stdHJhY2sge1xuICAgICAgICB3aWR0aDoxMDAlIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5zbGljay1zbGlkZSB7IFxuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5QztcbiAgICAgICAgYm9yZGVyLXJhZGl1czo1cHg7XG4gICAgICAgIHdpZHRoOjExNXB4IWltcG9ydGFudDtcbiAgICAgICAgJi5zbGljay1jdXJyZW50IHtcbiAgICAgICAgICBib3JkZXItY29sb3I6JGdyYXk5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2xpY2stYWN0aXZlOmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgICAgLyouc2xpY2stdHJhY2sge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDoxMDAlIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfSovXG4gICAgfVxuICB9XG59XG5cblxuXG4ubWFpbi1pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OmF1dG87XG4gIG1hcmdpbi1yaWdodDowO1xuICBpbWcge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cbi5hbHQtaW1hZ2VzIHtcbiAgXG4gIG1hcmdpbjowIGF1dG8gMnJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgLy9tYXgtd2lkdGg6NjAlO1xuICB9XG4gIC5zbGljay10cmFjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbiAgJi0tcmV0YWlsZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICAvKm1hcmdpbi10b3A6IDNyZW07Ki9cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCkge1xuICAgIC5zbGljay1kb3RzIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAuc2xpY2stc2xpZGUge1xuICAgICY6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDoxMDBweDtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgfVxuICBhIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgcGFkZGluZzogLjdyZW07XG4gIH1cbiAgaW1nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIG9wYWNpdHk6LjU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xuICAgIH1cbiAgfVxuICAuc2xpY2stYWN0aXZlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOjA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgY29udGVudDonJztcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgaGVpZ2h0OjVweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG4gIC5zbGljay1jdXJyZW50IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOjgwJTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICB9XG59XG5cbi8vIG1lZGlhIGJ1dHRvbnNcbiN3aGVlbCB7XG4gIC5kZXRhaWxzLW1lZGlhIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MnJlbTtcbiAgfVxufVxuXG5cblxuXG4vLyB6b29tIG92ZXIgaW1hZ2UgZnVuY3Rpb25cbi56b29tIHtcbiAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDonJztcbiAgICBkaXNwbGF5OmJsb2NrOyBcbiAgICB3aWR0aDozM3B4OyBcbiAgICBoZWlnaHQ6MzNweDsgXG4gICAgcG9zaXRpb246YWJzb2x1dGU7IFxuICAgIHRvcDowO1xuICAgIHJpZ2h0OjA7XG4gICAgYmFja2dyb3VuZDp1cmwoaWNvbi5wbmcpO1xuICB9XG4gIGltZyB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICAgICY6OnNlbGVjdGlvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gIH1cbn1cblxuXG5cbi8qXG4uZWFzeXpvb20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAnU2hyaW5rLXdyYXAnIHRoZSBlbGVtZW50IFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7XG59XG5cbi5lYXN5em9vbSBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4uZWFzeXpvb20uaXMtbG9hZGluZyBpbWcge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4uZWFzeXpvb20uaXMtcmVhZHkgaW1nIHtcbiAgY3Vyc29yOiBjcm9zc2hhaXI7XG59XG5cbi5lYXN5em9vbS5pcy1lcnJvciBpbWcge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uZWFzeXpvb20tbm90aWNlIHtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNTA7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMGVtO1xuICBtYXJnaW46IC0xZW0gMCAwIC01ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggIzg4ODtcbn1cblxuLmVhc3l6b29tLWZseW91dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZWFzeXpvb20tZmx5b3V0IGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuXG5cbi5lYXN5em9vbS0tb3ZlcmxheSAuZWFzeXpvb20tZmx5b3V0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZWFzeXpvb20tLWFkamFjZW50IC5lYXN5em9vbS1mbHlvdXQge1xuICB0b3A6IC0xMHB4O1xuICBsZWZ0OiA3NSU7XG4gIHdpZHRoOiAzNTBweDtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMzMzM7XG59XG5cblxuXG5cblxuXG5cblxuXG5cbiovIiwiI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUge1xuICAvLyBoZWFkZXJcbiAgaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjJyZW07XG4gICAgfVxuICB9XG4gIC5jb250ZW50LWhlYWRlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9iYW5uZXJzL3doZWVscy1iYW5uZXIuanBnJyk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6MjQwcHg7XG4gICAgfVxuICB9XG5cbiAgLnBhZ2UtY29udGVudC5wYWRkZWQuZXh0cmEge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgfVxuICB9XG5cblxuICAubGlzdGluZy1zZWFyY2gtYmFyIHtcbiAgICAjd2hlZWwtZmlsdGVyLXNlYXJjaCB7XG4gICAgICAvL3BhZGRpbmctbGVmdDouMjVyZW07XG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjM1cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xuICAgICAgICAgICAgLy9kaXNwbGF5XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICB3aWR0aDo5NnB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICB3aWR0aDo0MHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgd2lkdGg6NDZweDtcbiAgICAgIGhlaWdodDo1MnB4O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNDtcbiAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6NDBweDtcbiAgICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciwmLmFjdGl2ZS1sZXR0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICAmLmRpc2FibGUtbGV0dGVyIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6LjI1O1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIG1vYmlsZVxuICAgIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIHtcbiAgICAgIC5yb3cgPiAuY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0Oi4zNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDouMzVyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RUY7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgd2lkdGg6NjAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYSxidXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICB9XG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6NTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBsaXN0aW5nXG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG5cbiAgICAuaG92ZXItaXRlbSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB0cmFuc2Zvcm06c2NhbGUoMS4wMjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNhbGUtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAkcHJpbWFyeS1jb2xvciAwLCAkcHJpbWFyeS1jb2xvciA0MCUsIHRyYW5zcGFyZW50IDQwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICB9XG5cbiAgICAuaW5mbyB7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuXG4gICAgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNDtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cblxuICAgIC5wcm9kdWN0LW5hbWUge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6ZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICAubmV3IHtcbiAgICAgICAgd2lkdGg6NTZweDtcbiAgICAgICAgaGVpZ2h0OjI4cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIG1hcmdpbi1yaWdodDouNzVyZW07XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDoyO1xuICAgICAgfVxuICAgICAgLmJyYW5kLWFuZC1uYW1lIHtcbiAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgfVxuICAgIH1cbiAgICAuc3BlY3MsLnByaWNlLC5zaGlwcGluZyB7XG4gICAgICBmb250LWZhbWlseTokZGV0YWlsLWZvbnQtZmFtaWx5O1xuICAgIH1cbiAgICAuc3BlY3Mge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAuc2t1IHtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcmljZSB7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgLnN5bWJvbCwudmFsdWUge1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgfVxuICAgICAgLnNldCB7XG4gICAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICAgICYub3JpZ2luYWwtcHJpY2Uge1xuICAgICAgICAuc3ltYm9sLC52YWx1ZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgICB9XG4gICAgICAgIC52YWx1ZSB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2FsZXMtcHJpY2Uge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2hpcHBpbmcge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGNvbG9yOiRncmF5OTtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgfVxuICB9XG5cbiAgLnBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICBcbiAgfVxuICAucGFnaW5hdGlvbiB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC5jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gZm9vdGVyXG4gIC5maW5hbmNpbmcge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5icmFuZC1pbmZvcm1hdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgfVxuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgbGluZS1oZWlnaHQ6MjtcbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cbiAgLy8gc2VhcmNoZWQgYnkgdmVoaWNsZVxuICAmLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIHtcbiAgICBoMyxoNCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gbW9iaWxlXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIC8vIGN0YVxuICAudG9wIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICBwYWRkaW5nOjFyZW0gMS4yNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICB9XG5cbiAgLmxpc3Rpbmctc2VhcmNoLWJhciwuYnJhbmQtbGV0dGVyLXNlYXJjaCB7XG4gICAgYSB7XG4gICAgICB3aWR0aDo0NnB4O1xuICAgICAgaGVpZ2h0OjUycHg7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6Y2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUY0O1xuICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDo0MHB4O1xuICAgICAgICBoZWlnaHQ6NDBweDtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICB9XG4gICAgICAmOmhvdmVyLCYuYWN0aXZlLWxldHRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgICYuZGlzYWJsZS1sZXR0ZXIge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgb3BhY2l0eTouMjU7XG4gICAgICB9XG4gICAgfVxuICAgIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIHtcbiAgICAgIC5yb3cgPiAuY29sdW1uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0Oi4zNXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDouMzVyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RUY7XG4gICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgICAgd2lkdGg6NjAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYSxidXR0b24ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIGhlaWdodDo1MnB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBoZWFkZXJcbiAgLm1haW4uY3RhLWFkZGVkIHtcbiAgICBib3gtc2hhZG93Om5vbmU7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGJsYWNrO1xuICB9XG4gIC5jb250ZW50LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgYm94LXNoYWRvdzogMHB4IDVweCAxNXB4IC01cHggJGJsYWNrO1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG4gIH1cbn1cblxuLypcbi8vIHNlcmllcyB0aXRsZVxuI3doZWVscyB7XG4gIHBhZGRpbmctdG9wOjJyZW07XG4gIC5zZXJpZXMtYW5jaG9yIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtMjAwcHg7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC5zZXJpZXMtbG9nbyB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlBO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgIH1cbiAgfVxuICAucHJvZHVjdHMtc2VyaWVzLCAucHJvZHVjdHMtc2VyaWVzIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgIG1hcmdpbi1yaWdodDphdXRvO1xuICB9XG59XG5cbi8vIHdoZWVscyBsaXN0aW5nXG4jd2hlZWxzIHtcbiAgLnByb2R1Y3RzLWxpc3Qge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIC5wcm9kdWN0LWluZm9ybWF0aW9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgICAgfVxuICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB9XG4gICAgICAud2hlZWwtc2l6ZXMge1xuICAgICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1ub25lIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBGaXRtZW50XG4jd2hlZWxzLCN3aGVlbCB7XG4gIC5wYWdlLWhlYWRlci5maXRtZW50LWhlYWRlciB7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICB9XG4gICAgaDEge1xuICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgIGZvbnQtc2l6ZToxLjg1cmVtO1xuICAgICAgZm9udC1zaXplOjcwMDtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC5maXRtZW50LWJhci1jb250YWluZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpdG1lbnQtYmFyIHtcbiAgICAgIHBhZGRpbmctbGVmdDouNjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDouNjI1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDouOTM3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDouOTM3NXJlbTtcbiAgICAgIH1cbiAgICAgICYucmlnaHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBtYXgtd2lkdGg6MzAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpdG1lbnQtaGVhZGVyLWluZm8ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAudmVoaWNsZS1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOjEuMzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjEwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGUtZGlzcGxheSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OjFweCBzb2xpZCAkZ3JheUE7XG4gICAgICB9XG4gICAgfVxuICAgIC52ZWhpY2xlLWRpc3BsYXkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgIC52ZWhpY2xlVXBkYXRlIHtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIH1cbiAgICAuZml0bWVudC1jaGFuZ2Uge1xuICAgICAgY29sb3I6JGdyYXk1O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgfVxuICB9XG59Ki8iLCIudGlyZS1kZXRhaWxzIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICAgIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xufSIsIi50aXJlLWluZm8ge1xuICAgICZfX2hlYWRlciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbn0iLCIudGlyZS1jdGEge1xuICAuYnV0dG9uLWdyb3VwIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn0iLCIudGlyZS1zcGVjcyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gICZfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAmX19kZXRhaWxzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIH1cbn1cbiIsIiN0aXJlcyB7XG4gIGgyLCBoMyB7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxuICBoMiB7XG4gICAgY29sb3I6JGdyYXkzO1xuICAgIGZvbnQtc2l6ZTo1LjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGxldHRlci1zcGFjaW5nOi01cHg7XG4gIH1cbiAgaDMge1xuICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIGEge1xuICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIGNvbG9yOiRncmF5NjtcbiAgfVxuICBhIHtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIFxuICAgIH1cbiAgfVxuICBwIHtcbiAgICBcbiAgfVxuXG4vLyBmaWx0ZXIgc29ydCAvLy8vLy8vLy8vLy8vLy8vLy9cbiAgLmZpbHRlci1zb3J0IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgfVxuICAgICYtdG9wIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlcjoycHggc29saWQgJGdyYXk2O1xuICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6MjIwcHg7XG4gICAgICAgIGhlaWdodDo1NHB4O1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5kaXZpZGVyIHtcbiAgICAgIGhlaWdodDoxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICAgIC8vIGJvdHRvbVxuICAgICYtYm90dG9tIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjc7XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICAmLmFjdGl2ZS1maWx0ZXItc2VyaWVzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmUtZmlsdGVyLWNvdW50IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0gXG4gIH1cblxuICAucHJvZHVjdC1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgcGFkZGluZzoycmVtO1xuICAgIHBhZGRpbmctdG9wOjA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICB9XG4gICAgPiAuY29sdW1uIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnJvdyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcblxuICAgIH1cbiAgfVxuXG4gIC8vIHByb2R1Y3RzIGxpc3QgLy8vLy8vLy8vLy8vLy8vXG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgIC5jb2x1bW4ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4wNXJlbTtcbiAgICAgIC5ob3Zlci1pdGVtIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbmZvIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6MS4zNTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgfVxuICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiNhY2Nlc3NvcmllcyB7XG4gIGgyLCBoMyB7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxuICBoMiB7XG4gICAgY29sb3I6JGdyYXkzO1xuICAgIGZvbnQtc2l6ZTo1LjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGxldHRlci1zcGFjaW5nOi01cHg7XG4gIH1cbiAgaDMge1xuICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIGEge1xuICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIGNvbG9yOiRncmF5NjtcbiAgfVxuICBhIHtcbiAgICBcbiAgICAmOmhvdmVyIHtcbiAgICAgIFxuICAgIH1cbiAgfVxuICBwIHtcbiAgICBcbiAgfVxuICAuYWNjZXNzb3J5LXByb2R1Y3RzIHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6NXJlbTtcbiAgICB9XG4gIH1cblxuICAucGFnaW5hdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjpvcmFuZ2U7XG4gICAgYSB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuICAgIC5jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbi8vIGZpbHRlciBzb3J0IC8vLy8vLy8vLy8vLy8vLy8vL1xuICAuZmlsdGVyLXNvcnQge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG4gICAgJi10b3Age1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAkZ3JheTY7XG4gICAgICBjb2xvcjokZ3JheTY7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDoyMjBweDtcbiAgICAgICAgaGVpZ2h0OjU0cHg7XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gICAgLy8gYm90dG9tXG4gICAgJi1ib3R0b20ge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJvcmRlcjowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBcbiAgfVxuXG4gIC5wcm9kdWN0LWl0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICBwYWRkaW5nOjJyZW07XG4gICAgcGFkZGluZy10b3A6MDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6MXJlbSAwO1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgYm9yZGVyLWJvdHRvbTowO1xuICAgIH1cbiAgICA+IC5jb2x1bW4ge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cblxuICAucm93IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuXG4gICAgfVxuICB9XG5cbiAgLy8gYWNjZXNzb3J5IGZpbHRlciAvLy8vLy8vLy8vLy9cbiAgLmFjY2Vzc29yeS1maWx0ZXIge1xuICAgIC5pbnB1dC1ncm91cC1idXR0b24gPiBidXR0b24ge1xuICAgICAgcGFkZGluZzowIDFyZW07XG4gICAgfVxuICAgIFt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSwgW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkIHtcbiAgICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICAgIG9wYWNpdHk6MTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiB2aXNpYmxlO1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHByb2R1Y3RzIGxpc3QgLy8vLy8vLy8vLy8vLy8vXG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICAvKm1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDo1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgIH0qL1xuICAgIC5jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6LjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAmOm50aC1jaGlsZCgzbikge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4wNXJlbTtcbiAgICAgIC5ob3Zlci1pdGVtIHtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICBwYWRkaW5nOjEuMjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZmluaXNoLWxvZ28gaW1nIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmluZm8ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgLy9vcmRlcjotMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgfVxuICAgICAgPiBkaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgfVxuICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5hY2Nlc3NvcnktZmluaXNoIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG4gICAgICAuZmluaXNoLWxvZ28ge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6NTBweDtcbiAgICAgICAgICBtYXgtd2lkdGg6MTYwcHg7XG4gICAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgICBwYWRkaW5nOi41cmVtIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm90aGVyLWZpbmlzaGVzIHtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgb3BhY2l0eTowO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHotaW5kZXg6MjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgID4gLm90aGVyLWZpbmlzaCB7XG4gICAgICAgICAgd2lkdGg6MjUlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDo2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtY29udGFpbmVyIHtcbiAgICAgICAgXG4gICAgICAgIC8vb3BhY2l0eTowO1xuICAgICAgICBkaXNwbGF5OmdyaWQ7XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDE7XG4gICAgICAgICAgZ3JpZC1yb3c6IDEgLyAxO1xuICAgICAgICB9XG4gICAgICAgIC5tb3JlLWZpbmlzaGVzLC5vbmUtZmluaXNoIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUY3O1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzo0cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubW9yZS1maW5pc2hlcyB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiNhY2Nlc3Nvcnkge1xuICBjb2xvcjokZ3JheTY7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIHBhZGRpbmctdG9wOjA7XG4gIH1cbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nOjA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXgtaGVpZ2h0OjYwMHB4O1xuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIH1cbiAgICAuZmxleC12aWRlbyBpZnJhbWUge1xuICAgICAgdG9wOi0xMCU7XG4gICAgfVxuICB9XG4gIC5kZXRhaWxzIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICB9XG4gIH1cbiAgI2RldGFpbC10b3Age1xuICAgIGJhY2tncm91bmQ6bGluZWFyLWdyYWRpZW50KDBkZWcsICRncmF5RTcgMCUsICRncmF5RTcgNSUsIHRyYW5zcGFyZW50IDIwJSwgdHJhbnNwYXJlbnQgMTAwJSk7XG4gICAgPiBkaXYge1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjNyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6LjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAubGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICBwYWRkaW5nOjA7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICBpIHtcbiAgICAgIGNvbG9yOiRyZWQ7XG4gICAgfVxuICB9XG5cbiAgLmJ1dHRvbiwgaW5wdXQsIHNlbGVjdCB7XG4gICAgbWF4LXdpZHRoOjM3MHB4O1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cblxuXG5cbiAgLmFjY2Vzc29yeS10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIGgyLCBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB9XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOjIuMjVyZW07XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgIH1cbiAgICAgICAgICAgIFxuICAgIGgzLGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgXG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzouNXJlbTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOi4yNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIH1cbiAgICBoNiB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMTVyZW07XG4gICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICBjb2xvcjokZ3JheTY7XG4gICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICB9XG4gICAgLnRpdGxlIHtcblxuICAgIH1cbiAgICAuYnJhbmQge1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICB9XG4gICAgLnJlZCB7XG4gICAgICBjb2xvcjokcmVkO1xuICAgIH1cbiAgICAuZGl2aWRlciB7XG4gICAgICB3aWR0aDoxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgIGhlaWdodDo0NnB4O1xuICAgICAgbWFyZ2luLWxlZnQ6MS4yNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDoxLjI1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5maW5pc2gge1xuICAgICAgLmRpc2NvbnRpbnVlZCB7XG4gICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIG1hcmdpbi10b3A6LTEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucHJpY2UsLm1zcnAtZGlzcGxheSB7XG4gICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIFxuICAgICAgICAmLm1zcnAtcHJpY2luZyB7XG4gICAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogNDUlO1xuICAgICAgICAgIFxuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRyZWQ7XG4gICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1koMTBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tc3JwLWRpc3BsYXkge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuXG5cblxuICAuY2FydCB7XG4gICAgY29sb3I6JGdyYXk2O1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBcbiAgICAvLyBwcm9kdWN0IHNlbGVjdCAvLy8vL1xuICAgIC5wcm9kdWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICYuc2t1LXByb2R1Y3Qge1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICB9XG4gICAgICAjcHJvZHVjdC1zZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAuNXJlbSBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1za3Uge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIH1cbiAgICAgIC5sYWJlbCB7XG4gICAgICAgICYuc2t1LWluZm9ybWF0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICB9XG4gICAgICAgICYuc2t1LWxhYmVsIHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG4gICAgLy8gZml0bWVudCBzZWxlY3RlZCAvLy8vLy9cbiAgICAuZml0bWVudC1zZWxlY3RlZCB7XG4gICAgICBtYXgtd2lkdGg6NDAwcHg7XG4gICAgICAudmVoaWNsZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RTtcbiAgICAgICAgICAmLmZpdG1lbnQtb3BlbiB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OjA7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5maXRtZW50Q2xlYXIzIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRyZWQ7XG4gICAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIH1cbiAgICAgICAgLnJlbW92ZS1maXRtZW50IHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAudm92LWxpbmsge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXkzO1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBwYWRkaW5nOjFyZW0gMnJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOjUwcHg7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6MjYwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgICAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cblxuXG5cblxuICAgIC8vIHByaWNpbmcgLy8vLy8vLy8vXG4gICAgLnByaWNpbmctc2VjdGlvbiB7XG4gICAgICBtYXgtd2lkdGg6MzcwcHg7ICBcbiAgICAgICYuc2t1LXByaWNpbmctc2VjdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2shaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnRvcCB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczpmbGV4LWVuZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIG1heC13aWR0aDo4MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzouMTVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJvdHRvbSB7XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYWNjZXNzb3J5LXdoZWVscyB7XG4gICAgYSB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYWNjZXNzb3J5LWN0YSB7XG4gIC5jdGEtYnV0dG9ucyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgJl9fYnRuIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICB9XG4gIH1cbn0iLCIuYWNjZXNzb3J5LWJhci1idG4ge1xuICAgIG1hcmdpbjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4ICM5OTk7XG4gICAgJjpob3ZlciB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgfVxufSIsIiNnYWxsZXJ5LWZpbHRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6YXV0bztcbiAgICAgIH1cbiAgICB9XG4gIHNlbGVjdCB7XG4gICAgcGFkZGluZy1sZWZ0Oi41cmVtO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgfVxufSIsIiNnYWxsZXJ5IHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy9oZWlnaHQ6MzV2aDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgLy9oZWlnaHQ6MzV2aDtcbiAgICAgIGhlaWdodDo0MDBweDtcbiAgICAgIC5zZWN0aW9uLWNvbnRlbnQsLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgLy9oZWlnaHQ6MzV2aDtcbiAgICAgICAgaGVpZ2h0OjQwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBoMSxoNCB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIGZvbnQtc2l6ZToyLjc1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTo1LjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjQ1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1jb250ZW50IHsgICAgICBcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC40KTtcbiAgICAgIC8vaGVpZ2h0Ojg1dmg7XG4gICAgICBoZWlnaHQ6NDAwcHg7XG4gICAgICAmLWJhY2tncm91bmQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC8vYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAvL2hlaWdodDo4NXZoO1xuXG4gICAgICAgIGhlaWdodDo0MDBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBmaWx0ZXIvc2VhcmNoXG4gICNnYWxsZXJ5LWhlYWRlciB7XG4gICAgLmdhbGxlcnktbWVudSB7XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjJyZW0gM3JlbTtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZm9udC1zaXplOjEuMTI1cmVtO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjJyZW07XG4gICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIH1cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSwuZ2FsbGVyeS1zZWFyY2gtZGlzcGxheSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5Rjc7XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjJyZW0gM3JlbTtcbiAgICAgIH1cbiAgICAgIC50b2dnbGUtZ2FsbGVyeSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZ2FsbGVyeS1maWx0ZXItZGlzcGxheSB7XG4gICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgfVxuICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUY3O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjZ2FsbGVyeS1zZWFyY2gge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgIH1cbiAgICAgIC5zZWFyY2gtc2VsZWN0b3Ige1xuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICNwYWdlLWZpbHRlcnMge1xuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiB1bnNldDtcbiAgICAgICAgICBwYWRkaW5nOjEuMjVyZW0gMS41cmVtOztcbiAgICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5nYWxsZXJ5LXNlYXJjaC1kaXNwbGF5IHtcbiAgICAgIGZvcm0ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOjUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkZ3JheTlFO1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBzbGlkZXIgLSBhcnJvd3NcbiAgLnNsaWNrLWFycm93IHtcbiAgICB6LWluZGV4OjE7XG4gICAgd2lkdGg6NzVweDtcbiAgICBoZWlnaHQ6NzVweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OicnO1xuICAgIH1cbiAgICAmLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDoxNSU7XG4gICAgfVxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDoxNSU7XG4gICAgfVxuICB9XG4gIC8vIHNsaWRlciAtIGRvdHNcbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIGxpIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICB3aWR0aDoxMHB4O1xuICAgICAgICBoZWlnaHQ6MTBweDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHNsaWNrIHNsaWRlIFxuICAuc2xpY2stc2xpZGUge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgfVxuICAvLyBsaXN0XG4gIC5nYWxsZXJ5LWxpc3Qge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgICB9XG4gICAgLnBob3RvLC52aWRlbyB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBob3RvLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTo1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxNnJlbTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgbWF4LWhlaWdodDoyMTZweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBob3RvLWluZm9ybWF0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgLnZlaGljbGUge1xuICAgICAgICAvL2ZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgIH1cbiAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LjI1cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjI1cmVtO1xuICAgICAgfVxuICAgICAgLnNwZWNzIHtcbiAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXHQuaG92ZXItbGlzdCB7XG4gICAgICA+IGRpdiB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnBob3RvLCAudmlkZW8ge1xuXG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG5cdFx0LnBob3RvLCAudmlkZW8ge1xuICAgICAgLypcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDAgMXB4IDFweCAwO1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgICAqL1xuICAgICAgLypcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblx0XHRcdFx0dHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAuM3M7XG5cdFx0XHRcdHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcblx0XHRcdFx0LXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG5cdFx0XHRcdHRyYW5zaXRpb24tcHJvcGVydHk6IGFsbDtcblx0XHRcdFx0YmFja2dyb3VuZDogcmdiYSgyNDgsIDIwMCwgNzcsIDApO1xuXHRcdFx0fVxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4xcmVtO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IDkwJTtcblx0XHRcdFx0bWFyZ2luOiAtMWVtIDUlIDA7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiAyZW07XG5cdFx0XHRcdGNvbnRlbnQ6IGF0dHIodGl0bGUpO1xuXHRcdFx0XHQtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdFx0XHRcdHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogLjJzO1xuXHRcdFx0XHR0cmFuc2l0aW9uLWR1cmF0aW9uOiAuMnM7XG5cdFx0XHRcdC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogYWxsO1xuXHRcdFx0XHR0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG5cdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IDFweDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuXHRcdFx0fVxuXHRcdFx0Jjpob3ZlcjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDE2MywgMjI0LCAuNyk7XG5cdFx0XHR9XG5cdFx0XHQmOmhvdmVyOmFmdGVyIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdH0qL1xuXHRcdH1cblx0XHQudmlkZW86YWZ0ZXIge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdGNvbG9yOiAjZmVmZWZlO1xuXHRcdH1cbiAgICAgIC5nYWxsZXJ5LWl0ZW0tdmVoaWNsZSwgLmdhbGxlcnktaXRlbS13aGVlbCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgICAgLmdhbGxlcnktaXRlbS12ZWhpY2xlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgICAuYmctaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTo3NSU7XG4gICAgICB9XG4gIH1cbiAgLm5hdmlnYXRpb24ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICB9XG59IiwiI2dhbGxlcnktdmVoaWNsZSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6M3JlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgIGgxLGgzIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICAgIGgzIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2LC5zbGljay1uZXh0IHtcbiAgICB3aWR0aDo1MHB4O1xuICAgIGhlaWdodDo1MHB4O1xuICAgIHotaW5kZXg6MTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgZm9udC1zaXplOjNyZW07XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDonJztcbiAgICB9XG4gIH1cbiAgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0Oi02JTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgcmlnaHQ6NXB4O1xuICAgICAgd2lkdGg6MjVweDtcbiAgICAgIGhlaWdodDoyNXB4O1xuICAgIH1cbiAgfVxuICAuc2xpY2stcHJldiB7XG4gICAgbGVmdDotNiU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIGxlZnQ6NXB4O1xuICAgICAgd2lkdGg6MjVweDtcbiAgICAgIGhlaWdodDoyNXB4O1xuICAgIH1cbiAgfVxuICAuc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6MXB4O1xuICB9XG59XG5cbi5nYWxsZXJ5IHtcbiAgICAmLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgICYtbWFpbi1pbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbn1cblxuI2dhbGxlcnktdmVoaWNsZSB7XG4gICNnYWxsZXJ5LXRvcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgfVxuICB9XG4gICNnYWxsZXJ5LWRldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIH1cbiAgfVxuICAjZ2FsbGVyeS1zcGVjcyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAubGVmdCB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJpZ2h0IHtcbiAgICAgIHNwYW4ge1xuICAgICAgICAvL2ZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jZ2FsbGVyeS12ZWhpY2xlIHtcbiAgLmdhbGxlcnktbmF2IHtcbiAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgcGFkZGluZzo0cmVtIDAgMnJlbTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICAmLm5vdC1mb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlBO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ3JheUE7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo3NXJlbTtcbiAgICAgIC5jb2x1bW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5QztcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiRibGFjaztcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjY29udGFjdCwgI3RoYW5rcyB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjE2MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNjb250YWN0IHAsXG4jdGhhbmtzIHAsXG4jY29udGFjdCBsaSxcbiN0aGFua3MgbGksXG4jZ2FsbGVyeSBwLFxuI2dhbGxlcnkgbGkge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgcGFkZGluZy10b3A6IDBweDtcbn1cblxuI2NvbnRhY3QgaDMsXG4jdGhhbmtzIGgzLFxuI2dhbGxlcnkgaDMge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG59XG4jY29udGFjdCBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jY29udGFjdCBwLnJlZCB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xufVxuXG4jZm9ybS1yaWdodCB7XG4gIGNvbG9yOiRibGFjaztcbiAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAuMjVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAuMjVyZW07XG4gICAgfVxuICAgIC5mYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG4gICAgfVxuICAgIGFkZHJlc3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgLnNvY2lhbCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICB9XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OjJyZW07XG4gICAgfVxuICB9XG59XG5cbiNjb250YWN0IHtcbiAgLmxvY2F0aW9uIHtcbiAgICBjb2xvcjokYmx1ZTtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgZm9udC1zaXplOjEuMjVyZW07XG4gIH1cbn0iLCIjcGFnZSB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTo3cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjlyZW07XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gICAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiB1bnNldDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICB9XG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGhlaWdodDo2MHZoO1xuICAgICAgYmFja2dyb3VuZDpyZ2JhKDAsMCwwLC4xKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBoZWlnaHQ6MzB2aDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGhlaWdodDo1MHZoO1xuICAgICAgfVxuICAgICAgaDEge1xuICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LXNpemU6My41cmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTo0LjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGg0IHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjI1cmVtO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOjByZW07XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIGZvbnQtc2l6ZTozLjc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6MS44NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMjtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LXNpemU6Mi43NXJlbTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOjIuMTVyZW07XG4gICAgfVxuICAgIGg1IHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgfVxuXG4gICAgcCwgdWwge1xuICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICB9XG4gICAgfSBcbiAgICB1bCB7XG4gICAgICBtYXJnaW4tbGVmdDoycmVtO1xuICAgICAgbGlzdC1zdHlsZTogZGlzYztcbiAgICAgID4gbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBkaXNjO1xuICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG4gICAgLnBhZ2UtYm9keS1sZWZ0IHtcbiAgICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgICAgcGFkZGluZy1yaWdodDo2cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgfVxuICAgIH1cbiAgICAucGFnZS1ib2R5LXJpZ2h0IHtcbiAgICAgIHBhZGRpbmctbGVmdDo2cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoycmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLypcbi5wYWdlLWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6MDtcbiAgaDEge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG59XG5cbiovXG5cbi8vIGZhcSBwYWdlXG4jcGFnZSB7XG4gIC5mYXEtcGFnZSB7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZToxLjEyNXJlbTtcbiAgICB9XG4gICAgXG4gICAgdWwge1xuICAgICAgbWFyZ2luOjA7XG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5mYXEtc2VjdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgICAudGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5hY2NvcmRpb24tdGl0bGUsLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6MS4yNXJlbSAxLjVyZW07XG4gICAgfVxuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgZm9udC1zaXplOjEuMTc1cmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgbGluZS1oZWlnaHQ6MS41O1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIHRvcDowO1xuICAgICAgICBib3R0b206MDtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGNvbnRlbnQ6J1xcMjMwNCc7XG4gICAgICB9XG4gICAgfVxuICAgIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjU7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OidcXDIzMDMnO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy8gc3VwcG9ydCBwYWdlXG4jcGFnZSAuc3VwcG9ydC1wYWdlIHtcbiAgLnN1cHBvcnQtaXRlbSB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgcGFkZGluZzoycmVtO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICA+IGRpdiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgfVxuICAgIC5sb2dvIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6OHJlbTtcbiAgICAgICAgY29sb3I6JGdyYXk5O1xuICAgICAgICBmb250LXdlaWdodDogMjAwO1xuICAgICAgfVxuICAgIH1cbiAgICAubGluayB7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgZm9udC1zaXplOi44NzVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLm5ld3MtYXJ0aWNsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gICAgLnRpbWVzdGFtcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogI2ZlZmVmZTtcbiAgICAgICAgYmFja2dyb3VuZDogIzMzMztcbiAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyLjc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICAubmV3cy1zaWRlYmFyIHtcbiAgICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZiZmJmYjtcbiAgICAgICAgbGkgYSB7XG4gICAgICAgICAgICBjb2xvcjogIzUwNTA1MDtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLmJsb2csIC5uZXdzIHtcbiAgLy8gaGVhZGVyXG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDo0MDBweDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGhlaWdodDo0MDBweDtcbiAgICAgIC5zZWN0aW9uLWNvbnRlbnQsLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgICAgICAgaGVpZ2h0OjQwMHB4O1xuICAgICAgfVxuICAgICAgbWFyZ2luLWJvdHRvbTo2cmVtO1xuICAgIH1cbiAgICBoMSxoNCB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIGZvbnQtc2l6ZToyLjc1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTo1LjI1cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjQ1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1jb250ZW50IHsgICAgICBcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsMC40KTtcbiAgICAgIC8vaGVpZ2h0Ojg1dmg7XG4gICAgICBoZWlnaHQ6NDAwcHg7XG4gICAgICAmLWJhY2tncm91bmQge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC8vYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAvL2hlaWdodDo4NXZoO1xuICAgICAgICBoZWlnaHQ6NDAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gbGlzdGluZ1xuICAuYmxvZy1lbnRyeSwgLm5ld3MtZW50cnkge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjZyZW07XG4gICAgfVxuICAgIC5ibG9nLWltZywgLm5ld3MtaW1nIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9nLWNvbnRlbnQsIC5uZXdzLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxNCU7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTo0cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmxvZy1kZXNjcmlwdGlvbiwgLm5ld3MtZGVzY3JpcHRpb24ge1xuICAgICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206Mi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ibG9nLWNvbnRlbnQtbGVmdCwgLm5ld3MtY29udGVudC1sZWZ0IHtcbiAgICAuYmxvZy1jb250ZW50LCAubmV3cy1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxMCU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6NSVcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnBhZ2luYXRpb24ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIC5jdXJyZW50IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cblxuLy8gYXJ0aWNsZVxuLmJsb2ctZGV0YWlscywgLm5ld3MtZGV0YWlscyB7XG4gIC8vIGdhbGxlcnlcbiAgI2FydGljbGUtZ2FsLW1haW4taW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIGltZyB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAjYXJ0aWNsZS1nYWwtdGh1bWJzIHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuICAuZ2FsLXRodW1icy1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDo0NSU7XG4gICAgJi5nYWwtdGh1bWJzLXByZXYge1xuICAgICAgbGVmdDotMjBweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGxlZnQ6LTcwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICYuZ2FsLXRodW1icy1uZXh0IHtcbiAgICAgIHJpZ2h0Oi0zMHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcmlnaHQ6LTcwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5tYXRlcmlhbC1zeW1ib2xzLW91dGxpbmVkIHtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNhcnRpY2xlLWdhbC10aHVtYnMge1xuICAgIC8vZGlzcGxheTpncmlkO1xuICAgIC8vZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOnJlcGVhdCg1LDFmcik7XG4gICAgLy9ncmlkLXRlbXBsYXRlLXJvd3M6YXV0bztcbiAgICB3aWR0aDo4NSU7XG4gICAgLy9wYWRkaW5nLXRvcDoycmVtO1xuICAgIC8vcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAvL2JvcmRlci10b3A6MXB4IHNvbGlkICRncmF5MztcbiAgICAvL2JvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5MztcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgICAuc2xpY2stdHJhY2sge1xuICAgICAgLy9kaXNwbGF5OmdyaWQ7XG4gICAgICAvL2dyaWQtdGVtcGxhdGUtY29sdW1uczpyZXBlYXQoNSwxZnIpO1xuICAgICAgLy9ncmlkLXRlbXBsYXRlLXJvd3M6YXV0bztcbiAgICB9XG4gICAgLnNsaWNrLXNsaWRlIHtcbiAgICAgIG1heC1oZWlnaHQ6MTYwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXgtaGVpZ2h0OjE4MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuaXRlbSB7XG4gICAgICBncmlkLWNvbHVtbi1lbmQ6IHNwYW4gMTtcbiAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICAgIGhlaWdodDoxODBweDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDonJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgYm90dG9tOjA7XG4gICAgICAgIGxlZnQ6MDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIH1cbiAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5Oi41O1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBhcnRpY2xlIG5hdlxuICAuYXJ0aWNsZS1uYXYge1xuICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5QztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6NXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBib3JkZXItY29sb3I6JGJsYWNrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICAgICYubm90LWZvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTk7XG4gICAgICAgIGNvbG9yOiRncmF5QztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGJvcmRlci1jb2xvcjokZ3JheTk7XG4gICAgICB9XG4gICAgfVxuICAgIC50ZXh0LWNlbnRlciB7XG4gICAgICBhIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5QztcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjYWJvdXQge1xuICBjb2xvcjokYmxhY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGgyIHtcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjRyZW07XG4gICAgfVxuICB9XG4gIHAge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgLmFib3V0LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFuaW1hdGVkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbn0iLCIjZGVhbGVycyB7XG4gIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICB9XG4gICYtbWlkZGxlIHtcbiAgICBsaW5lLWhlaWdodDoxLjU7XG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgICAucm93IC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgIG1hcmdpbi1yaWdodDowO1xuICAgIH1cbiAgfVxuICAuaW5wdXQtZ3JvdXAge1xuICAgIG1heC13aWR0aDozMDBweDtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIGlucHV0IHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbiAgfVxuICBociB7XG4gICAgbWFyZ2luLXRvcDo0cmVtO1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgfVxuICAubGVmdCB7XG4gICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6NHJlbTtcbiAgICB9XG4gIH1cbiAgLnJpZ2h0IHtcbiAgICBmbG9hdDpub25lIWltcG9ydGFudDtcbiAgICBjbGVhcjpib3RoO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6NHJlbTtcbiAgICB9XG4gIH1cbiAgJi5iZWNvbWUtZGVhbGVyIHtcbiAgICBzZWxlY3Qge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gIH1cbiAgLy8gcm1hIGZvcm0gcGFnZVxuICAmLnJtYS1mb3JtLXBhZ2Uge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctbGVmdDoxLjI1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxLjI1cmVtO1xuICAgIH1cbiAgICAucGFnZS10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICB9XG4gICAgaDEge1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgbGFiZWwge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgbGluZS1oZWlnaHQ6MS41O1xuICAgICAgaGVpZ2h0OjNyZW07XG4gICAgfVxuICAgIGlucHV0Om5vdCguYnV0dG9uKSB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5Q0E7XG4gICAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgICBib3gtc2l6aW5nOmJvcmRlci1ib3g7XG4gICAgICAmLm1lZGlhLWZpZWxkIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIH1cbiAgICAucG9saWN5IHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5kZWFsZXItbG9jYXRvciB7XG4gICAgaDEge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgLmxvY2F0aW9uLWhlYWRlciA+IC5yb3cge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgfVxuICAgICNpY21fbG9jYXRpb25zIHtcbiAgICAgIC5kZWFsZXItbG9jYXRvci1oZWFkZXIge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgLy8gbGlzdFxuICAgICAgLmhvdXJzIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgICAgXG4gICAgICAvLyBtYXBcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmdtLXN0eWxlLWl3LmdtLXN0eWxlLWl3LWMge1xuICAgICAgICBtYXgtd2lkdGg6MzAwcHg7XG4gICAgICB9XG4gICAgICAuZ20tc3R5bGUtaXctZCB7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9jYXRvci1jdGEtYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAuc2VhcmNoLWZpZWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIHBhZGRpbmc6LjVyZW0gLjc1cmVtO1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgfVxuICAgICAgICAuaW5wdXQtZmllbGQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIG1hcmdpbjouMjVyZW0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sb2NhdG9yLWxpc3Rpbmcge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sb2NhdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBwYWRkaW5nOi43NXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi8vIGRlYWxlciBsb2NhdG9yIGNvbnQuXG4iLCIjZml0bWVudC1ndWlkZSB7XG4gIGNvbG9yOiRibGFjaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NHJlbTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxuICAucGFnZS1jb250ZW50IHtcbiAgICAuYWJvdXQtY29udGVudCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYW5pbWF0ZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuZml0bWVudC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OjNyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICB9XG4gICAgLmlubmVyLWNvbnRhaW5lciwuaGVhZCwuY29udGVudCwjYXBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB9XG4gICAgLmlubmVyLWNvbnRhaW5lciB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5QztcbiAgICB9XG4gICAgXG4gICAgLmhlYWQsLmluZm8ge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDtcbiAgICAgIHBhZGRpbmctdG9wOjEuNjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MS42MjVyZW07XG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICAjYXBwLCAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCB7XG4gICAgICAgIG1heC13aWR0aDozNjBweDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgIH1cbiAgICAgIC5pbmZvIHtcbiAgICAgICAgcGFkZGluZzoxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290IHtcbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6LjgxMjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiI2Vycm9yLXBhZ2Uge1xuXG5cblxuLy8gY29udGVudFxuLnBhZ2UtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy91dGlsaXR5L2Vycm9yLWJnXFwgXFwoMlxcKS5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDUlO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiA2MCU7XG4gICAgcGFkZGluZzogNzVweDtcbiAgICBtYXJnaW4tdG9wOiA3NXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgaGVpZ2h0OiAzMDBweDtcbiAgICB9XG4gIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAgIGhlaWdodDogNDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHJlbTtcbiAgICB9XG5cbiAgXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAzcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDEwMDA7XG4gICAgICBjb2xvcjogI2U4MmMzOTtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuICBcbiAgICBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNnJlbTtcbiAgICAgIGNvbG9yOiBibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgYSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG4gICAgfVxuICAgICNyZXR1cm4taG9tZSB7XG4gICAgICBtYXJnaW4tdG9wOiA5cmVtO1xuICAgICAgcGFkZGluZy10b3A6IDExcmVtO1xuICAgIH1cbiAgfVxuXG4gIC8vIGNvbWluZyBzb29uXG4gICYuY29taW5nLXNvb24ge1xuICAgIC5wYWdlLWNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn0iLCIjZG93bmxvYWRzIHtcbiAgLmRvd25sb2Fkcy1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOjJyZW0gMCA0cmVtO1xuICB9XG4gIC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICBib3JkZXItcmFkaXVzOjUwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwYWRkaW5nOi41cmVtIDEuMjVyZW07XG4gICAgd2lkdGg6IGF1dG87XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDouMjVyZW07XG4gICAgfVxuICB9XG4gIC8vIGJyYW5kc1xuICAuZG93bmxvYWRzLXNlY3Rpb24tYnJhbmRzIHtcbiAgICAuY29udGVudC1saXN0IHtcbiAgICAgIC5icmFuZC1pdGVtIHtcbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUU2O1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTouODc1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB9XG4gICAgICAgIC5sb2dvLC5leGNlcnB0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIH1cbiAgICAgICAgLmJyZWFrIHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU2O1xuICAgICAgICAgIG1hcmdpbjoxcmVtIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gYXNzZXRzXG4gIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMge1xuICAgIC5yZXR1cm4ge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50LWhlYWRlciB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC1oZWlnaHQ6MjAwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50LWxpc3QtYXNzZXRzIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgICAud2hlZWwtZmluaXNoIHtcbiAgICAgICAgZm9udC1zaXplOi44MjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnBhY2thZ2luZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGNUY1RjU7XG4gIG1hcmdpbjogMjBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDgwMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiBhdXRvO1xuXG4gIC5wb3B1cF9oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgLnJldHVyblR4dCB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgfVxufSIsIi5hY2Nlc3NvcnktY29udGFpbmVyIHtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblx0fVxuXHQmX19sZWZ0IHtcblx0XHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xuXHR9XG59XG5cbi5hY2Nlc3NvcnktcG9wdXAge1xuXHRtYXgtd2lkdGg6IDQyNXB4O1xuXHRwYWRkaW5nOiAwIDAgMTBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQmLS13aWRlIHtcblx0XHRtYXgtd2lkdGg6IDg1MHB4O1xuXHR9XG5cdCZfX2hlYWRlciB7XG5cdFx0cGFkZGluZy10b3A6IDEwcHg7XG5cdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNjY2M7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2YyZjJmMjtcblx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblx0Jl9faXRlbSB7XG5cdFx0d2lkdGg6IDkwJTtcblx0XHRtYXJnaW46IDAgYXV0byAxMHB4O1xuXHRcdHBhZGRpbmctYm90dG9tOiAxNXB4O1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0Ji0tYm9yZGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG5cdFx0fVxuXHRcdC5pbnB1dCB7XG5cdFx0XHRtYXJnaW46IDAgMjBweDtcblx0XHRcdCYtLXJpZ2h0IHtcblx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuaW1nIHtcblx0XHRcdG1heC13aWR0aDogMTAwcHg7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA5MHB4O1xuXHRcdFx0fVxuXHRcdFx0Ji0tbHJnIHtcblx0XHRcdFx0bWF4LXdpZHRoOiA1MCU7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdC50aXRsZSB7XG5cdFx0XHRmb250LXNpemU6IDAuOHJlbTtcblx0XHR9XG5cdH1cblx0LnRpdGxlLS1yaWdodCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdH1cblx0Jl9fbGluayB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0Zm9udC1zaXplOiAxMDAlO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0fVxuXHR9XG59XG5cbi5hY2Nlc3NvcnktcG9wdXAtLXJpZ2h0IHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdC5pbnB1dCB7XG5cdFx0bWFyZ2luOiAwO1xuXHR9XG5cdC5jb250ZW50IHtcblx0XHRwYWRkaW5nOiAwIDJyZW07XG5cdH1cblx0LnN1YnRleHQge1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHR9XG59IiwiLmdhbGxlcnktcXVvdGUtcG9wdXAge1xuICAmX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG4gICZfX3R4dCB7XG4gICAgZm9udC1zaXplOiAwLjk1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG4gIH1cbiAgJl9fbm90ZSB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGxhYmVsIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgfVxuICBpbnB1dDpub3QoW3R5cGU9XCJzdWJtaXRcIl0pIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNvbG9yOiAjMDAwO1xuICB9XG59XG5cbi5mb3JtLW5hbWUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgaW5wdXQge1xuICAgIHdpZHRoOiAxOS41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAjMzMzO1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxuICB9XG59XG5cbi5nYWxsZXJ5LXByb2R1Y3QtaW5mbyB7XG4gIHNwYW4ge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cbiIsIi5maXRtZW50Q2hlY2sge1xuICAmX190eHQge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG4gICZfX2J0biB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIH1cbn0iLCIjZmMge1xuICAjZmMtY2FydCB7XG4gICAgaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gIFxuICAubm90aWNlIHtcbiAgICBwYWRkaW5nLWxlZnQ6MTVweDtcbiAgICBwYWRkaW5nLXJpZ2h0OjE1cHg7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICB9XG4gIH1cbn0iLCIvKiBjYXJ0IHN1bW1hcnkgKi9cbi5zbmlwY2FydC1pdGVtLWN1c3RvbS1maWVsZHNfX2ZpZWxkLnNuaXBjYXJ0LWl0ZW0tY3VzdG9tLWZpZWxkcy0tdGV4dGJveCB7XG4gIHdpZHRoOjgwJTtcbn1cbi5zbmlwY2FydC1pbnB1dF9faW5wdXQuc25pcGNhcnRfX2ZvbnQtLXNlY29uZGFyeS5zbmlwY2FydF9fZm9udC0tYm9sZCB7XG4gIGJvcmRlcjowO1xuICBib3gtc2hhZG93OiBub25lO1xuICBtYXJnaW4tYm90dG9tOjA7XG59XG5cbi5pbS1jdXN0b20tc3VidGl0bGUge1xuICBtYXJnaW4tdG9wOjJyZW07XG59IiwiLmludmVudG9yeS1sYXlvdXQtaGVhZGVyIHtcbiAgYm9yZGVyLXRvcDowO1xuICAudG9wLWJhciB7XG4gICAgLm5hdi1tZW51LXJpZ2h0IHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDo3NSU7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiB1bnNldDtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgID4gbGkge1xuICAgICAgICAgIGRpc3BsYXk6dGFibGUtY2VsbDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgICAvLyY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgLy8gIGJvcmRlci1sZWZ0OiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgLy99XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi10aXRsZSB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIC5oZWFkZXItbG9nbyB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6MzAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW52ZW50b3J5LWhlYWQge1xuICBib3JkZXItYm90dG9tOjVweCBzb2xpZCAkZ3JheTtcbiAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICYuZml4ZWQge1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgdG9wOjA7XG4gICAgei1pbmRleDoxMDtcbiAgICAjbGVmdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG59XG5cbi51c2VyIHtcbiAgZGlzcGxheTpmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIFxuICB3aWR0aDoxMDAlO1xuICBwYWRkaW5nLXRvcDoycmVtO1xuICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICBmb250LXNpemU6MS4wNXJlbTtcbiAgcGFkZGluZy1sZWZ0Oi45Mzc1cmVtO1xuICBwYWRkaW5nLXJpZ2h0Oi45Mzc1cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgIGZvbnQtc2l6ZTouODc1cmVtO1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gIH1cbiAgJi1uYW1lIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5LXJlZ3VsYXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5NztcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG4gICYtY29kZSB7XG4gICAgY29sb3I6JHJlZDtcbiAgfVxuICAmLW9wdGlvbnMge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5LXJlZ3VsYXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiRncmF5O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cbi5sb2FkaW5nLXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB0b3A6MDtcbiAgcmlnaHQ6MDtcbiAgbGVmdDowO1xuICBib3R0b206MDtcbiAgY29udGVudDonJztcbiAgZGlzcGxheTpibG9jaztcbiAgei1pbmRleDo5OTk5O1xuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDsgIFxuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAtbW96LWFuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cbiAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cbiAgQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cbn0iLCIuaW52ZW50b3J5LWxheW91dC1mb290ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgLmZvb3Rlci1ib3R0b21fX2NvcHkge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cbn0iLCIvLyBpbnZlbnRvcnkgaXRlbXMgcmVzdWx0IGxpc3RcbiNpbnZlbnRvcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHktcmVndWxhcjtcbiAgLmludmVudG9yeSB7XG4gICAgJi1pdGVtIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHBhZGRpbmctdG9wOjEuNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjEuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgLnNsYXNob3V0IHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOmxpbmUtdGhyb3VnaDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1wYXJ0LW51bWJlciB7XG4gICAgICBjb2xvcjokZ3JheTU7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgfVxuICAgICYtc3RvY2sge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgfVxuICAgICAgJi1ieS1sb2NhdGlvbiB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1kZWFsZXIsICYtbXNycCB7XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICBjb2xvcjokbWVkaXVtLWdyYXk7XG4gICAgICBmb250LXNpemU6LjgzNzVyZW07XG4gICAgICB3aWR0aDo1MCU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAmLW1zcnAge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1kZWFsZXIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuICAgICYtc2FsZSB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICYtcHJpY2Uge1xuICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXB1cmNoYXNlIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIG1hcmdpbi10b3A6LjVyZW07XG4gICAgICB9XG4gICAgICA+IGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHBhZGRpbmc6MXJlbSAxLjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBwYWRkaW5nOi41cmVtIDFyZW07XG4gICAgICAgIH1cbiAgICAgICAgJi5iYWNrb3JkZXItbGluayB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWRpdmlkZXIge1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgfVxuICB9XG4gIC8vIG5vIG1hdGNoZXMgLyBwcm9kdWN0IHJlc3VsdHMgY291bnRcbiAgLm5vLW1hdGNoZXMsLnJlc3VsdC1jb3VudC1lbXB0eSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC8vIGxpc3Qgdmlld1xuICAudmlldy1saXN0IHtcbiAgICAuaW52ZW50b3J5IHtcbiAgICAgICYtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgICAmLXRodW1ibmFpbCB7XG4gICAgICAgIHdpZHRoOjEyJTtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOjcwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtaW5mbyB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1sb2NhdGlvbiB7XG4gICAgICAgIHdpZHRoOjQwJTtcbiAgICAgIH1cbiAgICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDo4OCU7ICBcbiAgICAgICAgfVxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gIFxuICAgIH1cbiAgfVxuICAvLyBnYWxsZXJ5IHZpZVxuICAudmlldy1nYWxsZXJ5IHtcbiAgICAuaW52ZW50b3J5IHtcbiAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtbXNycCwgJi1kZWFsZXIge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgICAmLWxvY2F0aW9uIHtcbiAgICAgICAgd2lkdGg6MzMlO1xuICAgICAgfVxuICAgICAgJi1wdXJjaGFzZSB7XG4gICAgICAgIG1hcmdpbi10b3A6LjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG4vLy8vLyBJbnZlbnRvcnkgUG9wdXAgLSBSZXN1bHRzIFBhZ2UgLy8vLy9cbiN3YXJlLWJveCwgI3dhcmUtYm94MiwgI3dhcmUtYm94MyB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICBkaXNwbGF5Om5vbmU7XG4gIG9wYWNpdHk6MDtcbiAgdG9wOjA7XG4gIHJpZ2h0OjA7XG4gIGxlZnQ6MDtcbiAgYm90dG9tOjA7XG4gIHotaW5kZXg6MTA7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjcpO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5pdGVtLXBvcHVwIHtcbiAgZm9udC1zaXplOjFyZW07XG4gIGZvbnQtd2VpZ2h0OjUwMDtcbiAgd2lkdGg6NjAwcHg7XG4gIHBhZGRpbmc6MjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gIC8qQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDExMDBweCkge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgfSovXG4gIGgzIHtcbiAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgfVxuICAuaXRlbS1wb3B1cC10aXRsZSB7XG4gICAgaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxldHRlci1zcGFjaW5nOjFweDtcbiAgICB9XG4gIH1cbiAgbGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgd2lkdGg6ODBweDtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gIH1cbiAgaW5wdXQge1xuICAgIHdpZHRoOjUwcHg7XG4gICAgJltuYW1lPSd2ZWhpY2xlJ10ge1xuICAgICAgd2lkdGg6NzAlO1xuICAgIH1cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgfVxuICB9XG4gID4gZGl2IHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIC5maWVsZCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIHdpZHRoOmF1dG87XG4gICAgJi12ZWhpY2xlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgPiBkaXYge1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gICAgJi51cHNlbGwge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgcGFkZGluZzoxcmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzowO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgfVxuICB9XG4gIC5pdGVtLXBvcHVwLWN0YSB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6ODBweDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHt9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIC8vLy8vIHVwc2VsbCBzZWN0aW9uIC8vLy8vXG4gIC51cHNlbGwge1xuICAgIHBhZGRpbmctYm90dG9tOjEuNXJlbTtcbiAgICBsYWJlbCB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHdpZHRoOmF1dG87XG4gICAgfVxuICAgIHRhYmxlIHtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICB0ciB0ZCB7XG4gICAgICAgIHBhZGRpbmc6LjI1cmVtIC43NXJlbTsgIFxuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiN3YXJlLWJveDIge1xuICAuaXRlbS1wb3B1cC1tc2cge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgfVxuICAjbWVzc2FnZSB7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIC5mYS1jaGVjay1jaXJjbGUsLmZhLW1pbnVzLWNpcmNsZSwuZmEtdGltZXMtY2lyY2xlLC5mYS1leGNsYW1hdGlvbi10cmlhbmdsZSB7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgLmZhLWNoZWNrLWNpcmNsZSB7XG4gICAgICBjb2xvcjokZ3JlZW47XG4gICAgfVxuICAgIC5mYS1taW51cy1jaXJjbGUsLmZhLXRpbWVzLWNpcmNsZSwuZmEtZXhjbGFtYXRpb24tdHJpYW5nbGUge1xuICAgICAgY29sb3I6JHllbGxvdztcbiAgICB9XG4gIH1cbiAgLml0ZW0tcG9wdXAtY3RhIHtcbiAgICBtYXJnaW4tbGVmdDowO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGEuYnV0dG9uOmxpbmssIGEuYnV0dG9uOnZpc2l0ZWQge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIENhcnQgUG9wdXBcbiN3YXJlLWJveDMge1xuICAuY2FydC1yZXN1bHRzIHtcbiAgICB0aCx0ZCB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICB9XG4gIH1cbiAgLmNhcnQtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgIGgxIHtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIH1cbiAgfVxuICAvLyBtb2JpbGUgY2FydFxuICAubW9iaWxlLWNhcnQge1xuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk7XG4gICAgICAgIHBhZGRpbmc6MXJlbSAuNzVyZW07XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAubW9iaWxlLXN1bW1hcnktdGl0bGUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICB9XG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS1pY29uIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6LjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLm1vYmlsZS1zdW1tYXJ5LXRvdGFsIHtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtYWN0aXZlIHtcbiAgICAgICAgLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnXFxmMTA2JztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaW52ZW50b3J5IHtcbiAgICAgICYtaXRlbSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBwYWRkaW5nOi43NXJlbTtcbiAgICAgIH1cbiAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgd2lkdGg6MTIlO1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6NzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1pbmZvIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgZmxvYXQ6bGVmdDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6ODglOyAgXG4gICAgICAgIH1cbiAgICAgICAgJi10b3Age1xuICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgfVxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gIFxuICAgIH1cblxuXG4gICAgLm1vYmlsZS1jaGVja291dC1jdGEsIC5tb2JpbGUtY2FydC1jdGEge1xuICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgcGFkZGluZzouNzVyZW0gMXJlbTtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICAgICYuZWRpdC1jYXJ0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0Oi43NXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLmNoZWNrb3V0LWJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6Ljc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tb2JpbGUtY2hlY2tvdXQtdG90YWwsIC5tb2JpbGUtY2FydC10b3RhbCB7XG4gICAgICBwYWRkaW5nOi43NXJlbTtcbiAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuXG4gIH1cbiAgLm1vYmlsZS1jYXJ0LXRhYmxlLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1ib3R0b206MDtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgfVxuICAubW9iaWxlLWNhcnQge1xuICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAgIC5pbnZlbnRvcnktaXRlbSB7XG4gICAgICAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20ge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubW9iaWxlLWNhcnQtY3RhIHtcbiAgICAgIHBhZGRpbmc6MS4yNXJlbSAuNzVyZW07XG4gICAgfVxuICAgIC5tb2JpbGUtY2FydC10b3RhbCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG5cbiNpbnZlbnRvcnkge1xuICAvLyBwYWdpbmF0aW9uXG4gIC5wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzozcmVtIDA7XG4gICAgLy9ib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTU7XG4gICAgbWFyZ2luOjNyZW0gMDtcbiAgfVxuICAvLyBzY3JvbGwgbmF2aWdhdGlvbiBwYWdpbmF0aW9uXG4gIC5uYXZpZ2F0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuI2ludmVudG9yeSB7XG4jYm94IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogb3JhbmdlO1xuICBib3JkZXI6IDRweCBzb2xpZCBwaW5rO1xuICB0cmFuc2l0aW9uOlxuICAgIGJhY2tncm91bmQtY29sb3IgMXMsXG4gICAgYm9yZGVyIDFzO1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4udmVydGljYWwge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQ6IDMycHggXCJBcmlhbFwiO1xufVxuXG4uZXh0cmEge1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7XG4gIGJvcmRlcjogNHB4IHNvbGlkIGJsdWU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbn1cbn0iLCIubG9naW4ge1xuICBsYWJlbCB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6NDAlO1xuICAgIH1cbiAgfVxuICAuaW52LWxvZ2luLC5pbnYtbXNnLCNsb2dpbl9mb3JtLC5pbnYtbGlua3Mge1xuICAgIHBhZGRpbmc6MCAycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZzowO1xuICAgIH1cbiAgfVxuICAuaW52LWxpbmtzIHtcbiAgICB1bCB7XG4gICAgICBtYXJnaW46MDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbnYtZGlzY2xhaW1lciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC50aXRsZSB7XG4gICAgaDMge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIH1cbiAgfVxuICAjbG9naW5fZm9ybSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAuaW52LW1zZyB7XG4gICAgPiBwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGNvbG9yOiRyZWQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gd2VsY29tZSBodWJcbiNpbnZlbnRvcnkuaHViIHtcbiAgcGFkZGluZy10b3A6MnJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDo1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjVyZW07XG4gIH1cbiAgLmh1Yi1jdGEge1xuICAgIG1heC13aWR0aDo3MHJlbTtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgIG1hcmdpbi1ib3R0b206NXJlbTsgICBcbiAgICB9XG4gICAgLnJvdyA+IC5jb2x1bW4ge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206LTIuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6LTFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOjc1JTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIub3JkZXJzIHtcbiAgLnBhZ2UtY29udGVudCwgLmludmVudG9yeS1oZWFkIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgICAjaW52ZW50b3J5LWZpbHRlci1zZWFyY2gge1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAgIGJvcmRlcjowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIFxuICAgIC5zdWJoZWFkZXIge1xuICAgICAgZm9udC13ZWlnaHQ6MXJlbTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgLy9wYWRkaW5nLWxlZnQ6IC45Mzc1cmVtO1xuICAgICAgLy9wYWRkaW5nLXJpZ2h0OiAuOTM3NXJlbTtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgLy9wYWRkaW5nLWxlZnQ6LjYyNXJlbTtcbiAgICAgICAgLy9wYWRkaW5nLXJpZ2h0Oi42MjVyZW07XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjFyZW07XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnNlYXJjaC1maWx0ZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICYucG8tbnVtYmVyIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICAvKlxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHdpZHRoOjM3JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgd2lkdGg6NSU7XG4gICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICB3aWR0aDoyMCU7XG4gICAgICAgICAgICB9Ki9cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgcGFkZGluZzouN3JlbSAxLjVyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRhdGVzIHtcbiAgICAgICAgPiBsYWJlbCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICB9XG4gIH1cblxuXG4gIC8vIHRhYmxlXG4gIC5vcmRlci1xdWVyeSB7XG4gICAgcGFkZGluZzoxcmVtIDJyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgY29sb3I6JHJlZDtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICB9XG4gIH1cblxuICAub3JkZXItdGFibGUge1xuICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIC8vbWF4LWhlaWdodDo4MDBweDtcbiAgICAgIG92ZXJmbG93LXk6YXV0bztcbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgdGhlYWQsdGJvZHkge1xuICAgICAgYm9yZGVyOjA7XG4gICAgICBib3JkZXItYm90dG9tOjEwcHggc29saWQgJGJsYWNrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICB9XG4gICAgdHIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICB9XG4gICAgdGQge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBwYWRkaW5nOi43NXJlbSAxcmVtO1xuICAgICAgJi50cmFja2luZy1vcmRlci1idXR0b24ge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuXG5cbiAgLy8gZGlzY2xhaW1lciBcbiAgLmRpc2NsYWltZXIge1xuICAgIGNvbG9yOiRyZWQ7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgfVxuICB9XG59XG5cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscywjaW52LW9yZGVyLXByaW50IHtcbiAgY29sb3I6JGJsYWNrO1xuICAuaXRlbS1wb3B1cCB7XG4gICAgYm9yZGVyLXJhZGl1czo1cHg7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjJyZW07XG4gICAgICB3aWR0aDo5MDBweDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1sZWZ0Oi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICB9XG4gIH1cbiAgLmhlYWRlciB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgID4gZGl2IHtcbiAgICAgIHdpZHRoOjM1JTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHdpZHRoOjQ1JTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS40O1xuICAgICAgfVxuICAgIH1cbiAgICAuYWRkcmVzcyB7XG4gICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICBsaW5lLWhlaWdodDoxLjE7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vcmRlci1pbmZvIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOi45cmVtXG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuICAucHJvZHVjdC1saXN0IHtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICB9XG4gIH1cbiAgdGFibGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGhlYWQsdGJvZHkge1xuICAgICAgYm9yZGVyOjA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbToxMHB4IHNvbGlkICRibGFjaztcbiAgICB9XG4gICAgdGQge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gIH1cblxuXG4gIC5jdGEge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgID4gZGl2IHtcbiAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgfVxufVxuXG4udXNlci1vcHRpb25zID4gZGl2IHtcbiAgJi51c2VyLW9wdGlvbnMtaW52ZW50b3J5IHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgYSxpIHtcbiAgICAgIGNvbG9yOiRyZWQ7XG4gICAgfVxuICAgIGE6aG92ZXIge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnVzZXItb3B0aW9ucy1pbnZlbnRvcnkge1xuICBkaXNwbGF5Om5vbmU7XG59XG5cblxuLy8gcHJpbnRcbi5wcmludC1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbn1cbiNpbnYtb3JkZXItcHJpbnQge1xuICAuaXRlbS1wb3B1cCB7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICB3aWR0aDoxMDAlO1xuICB9XG4gIC5vcmRlci1pbmZvLHRhYmxlIHtcbiAgICBmb250LXNpemU6LjlyZW07XG4gIH1cbn0iLCIuY2FydCB7XG4gICNsb2dpbiB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIC5jYXJ0LXRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICB9XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgJi5jYXJ0LXRhYmxlLWNvbnRhaW5lciB7XG4gICAgICBmb3JtIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNhcnQtbGlzdGluZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgYm9yZGVyLXRvcDo1cHggc29saWQgJHJlZDtcbiAgICAgIC52ZWhpY2xlLW1lc3NhZ2Uge1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgIGNvbG9yOiRncmF5NTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gIHRoIHtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRkYXJrLWdyYXk7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICB9XG4gIHRkIHtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gIH1cbiAgXG4gICYtYnV0dG9ucywgJi10b3RhbCB7XG4gICAgcGFkZGluZzoycmVtO1xuICB9XG4gIFxuICBcbiAgJi1idXR0b25zIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6Ljc1cmVtIDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5uZXctc2VhcmNoIHtcbiAgICAvL3RleHQtYWxpZ246bGVmdDtcbiAgfVxuICAudXBkYXRlLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBjb2xvcjokZ3JlZW47XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG4gIC51cGRhdGUtY2hlY2tvdXQge1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgLmJ1dHRvbiB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6YmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5lZGl0LWNhcnQge1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgLmJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgXG4gICYtcXR5IHtcbiAgICB3aWR0aDo2MHB4O1xuICAgIG1hcmdpbjowIGF1dG87XG4gIH1cbiAgXG4gICYtdG90YWwge1xuICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICYtdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICB9XG4gIH1cbiAgLmRpc2NsYWltZXIge1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIGJvcmRlci10b3A6NXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tdG9wOjVyZW07XG4gICAgfVxuICB9XG4gIC5pbnYtYnRuLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICB9XG4gIH1cbiAgLmNoZWNrb3V0LWVycm9yIHtcbiAgICBjb2xvcjokbGlnaHQtcmVkO1xuICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gIH1cbn1cblxuXG5cbi8vLy8vLyBDaGVja291dCBGb3JtIC8vLy8vXG4ucGFnZS1jb250ZW50IHtcbiAgLmNoZWNrb3V0LWZvcm0ge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgLmJ1dHRvbnMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jY2hlY2tvdXQsICNjYXJ0IHtcbiAgaDEsaDIge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgXG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gIGgxIHtcbiAgICBjb2xvcjokcmVkO1xuICAgIFxuICB9XG59XG4gIC5jaGVja291dC10aXRsZSwuY2FydC10aXRsZSB7ICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHBhZGRpbmc6MCAuNzVyZW07XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNoZWNrb3V0LWZvcm0ge1xuICAgIGgyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIGNoZWNrb3V0IHRvcFxuLmNoZWNrb3V0LXRvcCB7XG4gIGRpc3BsYXk6ZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLy8gY2hlY2tvdXQgbGVmdFxuLmNoZWNrb3V0IHtcbiAgJi1mb3JtIHtcbiAgICBwYWRkaW5nOi43NXJlbTtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRncmF5O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBwYWRkaW5nOjJyZW07XG4gICAgfVxuICAgIC5idXR0b25zIHtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXgtd2lkdGg6MTUwcHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjA7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnZhbGlkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGxpZ2h0LXJlZDtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB9XG4gIH1cbiAgbGFiZWwge1xuICAgIG1heC13aWR0aDoyMDBweDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAvKmZvbnQtc2l6ZToxcmVtOyovXG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cbiAgLmZpZWxkIHtcbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDozNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgdGV4dGFyZWEge1xuICAgICAgbWF4LXdpZHRoOjUwMHB4O1xuICAgICAgbWluLWhlaWdodDoxNTBweDtcbiAgICB9XG4gIH1cblxuICAuY3VzdG9tZXItYWRkcmVzcyB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICB9XG59XG5cbiNjaGVja291dCAuc3VtbWFyeSB7XG4gIHBhZGRpbmc6MnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gIGJvcmRlcjoxcHggc29saWQgJGRhcmstZ3JheTtcbiAgYm9yZGVyLWxlZnQ6MDtcbiAgZm9udC1zaXplOjFyZW07XG4gIC5jYXJ0LWxpc3Rpbmcge1xuICAgIG1hcmdpbi10b3A6Mi41cmVtO1xuICB9XG4gIHRhYmxlIHtcbiAgICBsaW5lLWhlaWdodDoxLjI1O1xuICB9XG4gIHRoIHtcbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICBtaW4td2lkdGg6MTAwcHg7XG4gICAgfVxuICB9XG59XG5cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0LCAjY2FydCAubW9iaWxlLWNhcnQge1xuICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JheTtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5O1xuICAgICAgcGFkZGluZzoxcmVtIC43NXJlbTtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAubW9iaWxlLXN1bW1hcnktdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICB9XG4gICAgICAubW9iaWxlLXN1bW1hcnktaWNvbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDouNXJlbTtcbiAgICAgIH1cbiAgICAgIC5tb2JpbGUtc3VtbWFyeS10b3RhbCB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjEwNic7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbnZlbnRvcnkge1xuICAgICYtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmF5O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgIH1cbiAgICAmLXRodW1ibmFpbCB7XG4gICAgICB3aWR0aDoxMiU7XG4gICAgICBmbG9hdDpsZWZ0O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDo3MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLWluZm8ge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1kZXNjcmlwdGlvbiB7XG4gICAgICBmbG9hdDpsZWZ0O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOjg4JTsgIFxuICAgICAgfVxuICAgICAgJi10b3Age1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB9XG4gICAgICAmLWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOjUwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmludmVudG9yeS1kZXNjcmlwdGlvbi1sZWZ0IHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnZlbnRvcnktcXVhbnRpdHkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC5jYXJ0LXF0eSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnZlbnRvcnktdmVoaWNsZSB7XG4gICAgICAgIGNvbG9yOiRncmF5NTtcbiAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgfVxuICAgIH0gIFxuICB9XG4gIFxuICBcbiAgLm1vYmlsZS1jaGVja291dC1jdGEsIC5tb2JpbGUtY2FydC1jdGEge1xuICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC5idXR0b24ge1xuICAgICAgcGFkZGluZzouNzVyZW0gMXJlbTtcbiAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgICAgJi5lZGl0LWNhcnQge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICAgICAgLy9tYXJnaW4tbGVmdDouNzVyZW07XG4gICAgICB9XG4gICAgICAmLmNoZWNrb3V0LWJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyZWVuO1xuICAgICAgICAvL21hcmdpbi1sZWZ0Oi43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1vYmlsZS1jaGVja291dC10b3RhbCwgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgICBwYWRkaW5nOi43NXJlbTtcbiAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxuICBcbn1cbi8qLy8vLy8gTW9iaWxlIC0gQ2FydCAvLy8vLyovXG4jY2FydCAubW9iaWxlLWNhcnQtdGFibGUtY29udGFpbmVyIHtcbiAgcGFkZGluZy1ib3R0b206MDtcbiAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk7XG59XG4jY2FydCAubW9iaWxlLWNhcnQge1xuICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JheTtcbiAgLmludmVudG9yeS1pdGVtIHtcbiAgICAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20ge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICYtYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tb2JpbGUtY2FydC1jdGEge1xuICAgIHBhZGRpbmc6MS4yNXJlbSAuNzVyZW07XG4gIH1cbiAgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCB7XG4gIC5pdGVtLXVwZGF0ZSB7XG4gICAgZGlzcGxheTpub25lO1xuICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICB9XG4gIC5tb2JpbGUtdXBkYXRlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBib3JkZXI6MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiRncmVlbjtcbiAgICBmb250LXdlaWdodDo4MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cbn1cblxuLyovLy8vLyBSZW1vdmUgSXRlbSBQb3B1cCAvLy8vLyovXG4jd2FyZS1ib3gyLmNhcnQge1xuICAuaXRlbS1wb3B1cC1jdGEge1xuICAgIHBhZGRpbmctbGVmdDowO1xuICB9XG59XG5cblxuIiwiI2ludmVudG9yeSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgfVxufVxuXG4vLyBSZXN1bHRzIC8gZmlsdGVyXG4jaW52ZW50b3J5LC5pbnZlbnRvcnktaGVhZCB7XG4gIC5maWx0ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgJi1zZWxlY3Rpb24ge1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheTtcbiAgICAgIGg1IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICBmb250LXNpemU6Ljg3NXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MDtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNzVyZW07XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjA7XG4gICAgICB9XG4gICAgfVxuICAgICYtYWN0aXZlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDonJztcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgd2lkdGg6NzUlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgICBoZWlnaHQ6MXB4O1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRibHVlO1xuICAgICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjVyZW07XG4gICAgICAgICYjY2xlYXIge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1zZWxlY3RlZCB7XG4gICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1idXR0b24ge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIH1cbiAgICAmLXBhcnQtbnVtYmVyIHtcbiAgICAgIG1heC13aWR0aDo4MCU7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBpbnB1dCB7XG4gICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICB9XG4gICAgfVxuICAgICYtc2hvcGJ5IHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBib3JkZXItYm90dG9tOjVweCBzb2xpZCAkZ3JheTsgIFxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgbWF4LXdpZHRoOjgwJTtcbiAgICAgIH1cbiAgICAgIGxhYmVsLHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDUge1xuICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOjFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjY2xlYXJTS1Uge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuXG4vLyBpbnZlbnRvcnkgb3B0aW9ucyBiYXJcbiNpbnZlbnRvcnkge1xuICAub3B0aW9ucy1iYXIge1xuICAgIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRncmF5O1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICBzZWxlY3QsaW5wdXQge1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICB9XG4gICAgPiBkaXYge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRncmF5O1xuICAgICAgfVxuICAgIH0gXG4gICAgJi12aWV3IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICBjb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIH1cbiAgICAgIH0gICBcbiAgICAgIGJ1dHRvbi5hY3RpdmUtdmlldyB7XG4gICAgICAgIGkge1xuICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi1pbnN0b2NrIHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXNvcnQge1xuICAgICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJlc3VsdC1jb3VudCwgLnJlc3VsdC1jb3VudC1lbXB0eSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0Oi4yNXJlbTtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIG1vYmlsZSBcbiNpbnZlbnRvcnksLmludmVudG9yeS1oZWFkIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAuZmlsdGVyIHtcbiAgICAgICYtc2VsZWN0aW9uIHtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgICAgICBoZWlnaHQ6NTB2aDtcbiAgICAgICAgb3ZlcmZsb3cteDpzY3JvbGw7XG4gICAgICB9XG4gICAgfVxuICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5O1xuICAgIH1cbiAgfVxuICAuYWNjb3JkaW9uIHtcbiAgICAmLWl0ZW0ge1xuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLXRpdGxlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGJvcmRlcjowO1xuICAgIH1cbiAgfVxufSIsIi5pbnYudGhhbmtzIHtcbi8qICAucGFnZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICB9Ki9cbiAgaDMge1xuICAgIGNvbG9yOiRncmVlbjtcbiAgICBmb250LXNpemU6NHJlbTtcbiAgfVxuICAuYnV0dG9ucyA+IGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHJlZDtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzoxcmVtIDEuNXJlbTtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICB9XG4gIC50aGFua3MtdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OjNyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICB9XG4gIH1cbn0iXX0= */
