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

.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);
}
.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;
  -webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 15.625em) {
  .position-top {
    -webkit-transform: translateY(-);
            transform: translateY(-);
  }
}
@media screen and (min-width: 15.625em) {
  .off-canvas-content .off-canvas.position-top {
    -webkit-transform: translateY(-);
            transform: translateY(-);
  }
}
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

.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;
}
@media screen and (min-width: 15.625em) {
  .position-bottom {
    -webkit-transform: translateY();
            transform: translateY();
  }
}
@media screen and (min-width: 15.625em) {
  .off-canvas-content .off-canvas.position-bottom {
    -webkit-transform: translateY();
            transform: translateY();
  }
}
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

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

/* 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: "DM Sans", 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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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: #d00204;
  font-size: 1.5rem;
}

p {
  color: #0a0a0a;
}

a {
  color: #d00204;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}
a:hover {
  color: #666666;
}
a:focus {
  background-color: transparent;
}
a:active {
  background-color: #0a0a0a;
}

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: #d00204;
  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: #d00204;
}

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

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

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

.black-font {
  color: #333;
}

.red {
  color: #d00204;
}

.white {
  color: #fefefe;
}

.button {
  background-color: #333333;
  font-size: 1rem;
  font-weight: 400;
  padding: 1.25rem 1.5rem;
  letter-spacing: 0.05rem;
}
.button:hover {
  background-color: #d00204;
}

.pill {
  text-transform: uppercase;
  font-size: 0.75rem;
  display: inline-block;
  background-color: #0a0a0a;
  text-decoration: none;
  color: #fefefe;
  padding: 0.65rem 1rem;
  border-radius: 25px;
  font-weight: 600;
  letter-spacing: 0.1rem;
}
@media print, screen and (min-width: 64em) {
  .pill {
    font-size: 0.85rem;
  }
}
.pill:hover {
  background-color: #d00204;
}

.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:hover {
  background-color: #000000;
}

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

.menu > li:not(.menu-text) > a {
  padding: 0.5rem 1rem;
}
@media print, screen and (min-width: 64em) {
  .menu > li:not(.menu-text) > a {
    padding: 1rem;
  }
}

.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: #d00204 transparent transparent;
  right: 0px;
  display: none;
}

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

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

.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: "DM Sans", sans-serif;
  color: #0a0a0a;
  font-size: 2rem;
  margin-bottom: 0.5rem;
  font-weight: 300;
  letter-spacing: 0.1rem;
}
@media print, screen and (min-width: 40em) {
  .page-header h1 {
    margin-bottom: 1rem;
  }
}
@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 #d00204;
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.loading-page.close {
  border: 0px solid #d00204;
}
.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: #d00204;
  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: #d00204;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
}
#fitment-popup .button:hover {
  background-color: #0a0a0a;
}
#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: #d00204;
}

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

#newsletter-popup {
  text-align: center;
  max-width: 580px;
  padding: 3rem;
}
#newsletter-popup i {
  color: #d00204;
  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;
}

/* ==========================================================================
   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);
  }
}
.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%;
}
header.main {
  padding: 0.75rem 0;
}
@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 {
  height: 80px;
}
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;
  font-weight: 600;
}
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-center .header-logo img {
  max-height: 42px;
}
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;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-transform: uppercase;
  font-size: 0.85rem;
}
header .header-right a span {
  margin-right: 0.5rem;
}
@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: 600;
  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 {
  color: #fefefe;
  height: 100vh;
  position: relative;
  background-color: #0a0a0a;
  overflow: auto;
  padding-bottom: 3rem;
}
@media print, screen and (min-width: 40em) {
  header .megamenu {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  header .megamenu {
    padding-left: 3rem;
    padding-right: 3rem;
    padding-bottom: 3rem;
    height: auto;
  }
}
header .megamenu .dropdown.menu > li {
  display: block;
}
header .megamenu .dropdown.menu > li > a {
  background-color: transparent;
}
header .megamenu a {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 1rem;
  background: transparent;
}
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: "DM Sans", 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-title {
  font-size: 1.125rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 0 1rem;
  margin-bottom: 0.5rem;
}
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 .is-drilldown {
  max-width: 370px !important;
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  header .is-drilldown {
    min-height: 466.125px !important;
  }
}

/* ==========================================================================
   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%;
  }
}

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: 80px;
  }
}
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;
  }
}

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;
    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: #d00204;
  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 .nav-menu-right li {
  display: inline-block;
}
header .nav-menu-right li a {
  font-size: 1.25rem;
  padding: 1rem;
}

.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: 64em) {
  .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;
  */
  /*&:hover {
    color:$primary-color;
  }*/
}
.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: "DM Sans", 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: 64em) {
  .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: 64em) {
  .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: 64em) {
  .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: 64em) {
  .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 {
  padding: 1rem 0.5rem 0;
  background-color: #0a0a0a;
  color: #0a0a0a;
  letter-spacing: 0.05rem;
}
@media print, screen and (min-width: 64em) {
  .footer {
    padding: 0;
    padding-top: 4rem;
  }
}
.footer a, .footer p {
  color: #fefefe;
  letter-spacing: 0.05rem;
}
.footer h5 {
  font-family: "DM Sans", sans-serif;
  color: #fefefe;
  font-size: 1.25rem;
  letter-spacing: 0;
  font-weight: 400;
  text-transform: capitalize;
}
@media print, screen and (min-width: 64em) {
  .footer h5 {
    font-size: 1.5rem;
    letter-spacing: 0.05rem;
    font-weight: 500;
  }
}
.footer ul {
  list-style: none;
  margin: 0;
}
.footer li {
  margin-bottom: 1.25rem;
  line-height: 1;
}
.footer a {
  font-weight: 400;
  color: #fefefe;
}
.footer a:hover {
  color: #d00204;
}
@media print, screen and (max-width: 39.99875em) {
  .footer-logo {
    text-align: center;
    margin-bottom: 4rem;
  }
}
.footer-logo img {
  max-width: 25%;
}
@media print, screen and (min-width: 40em) {
  .footer-logo img {
    max-width: 50%;
  }
}
.footer-contact {
  margin-bottom: 3rem;
  color: #fefefe;
  padding: 0 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .footer-contact {
    padding: 0;
  }
}
.footer-social {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .footer-social {
    padding: 0;
  }
}
.footer-social ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.footer-social li {
  margin-right: 1.25rem;
}
.footer-social a {
  font-size: 1.75rem;
  font-weight: 400;
  color: #fefefe;
}
.footer-social a:hover {
  color: #d00204;
}
.footer-top {
  margin-bottom: 1.5rem;
}
.footer-menu {
  /*
  @include breakpoint (medium only) {
    margin-bottom:3rem;
  }*/
}
.footer-menu-collection {
  display: table;
  width: 100%;
  padding-bottom: 2rem;
}
.footer-menu-collection .accordion {
  background-color: transparent;
  margin-bottom: 1.25rem;
}
@media print, screen and (max-width: 39.99875em) {
  .footer-menu-collection .accordion h5 {
    margin-bottom: 0;
    padding-bottom: 0.5rem;
  }
}
.footer-menu-collection .accordion .fas {
  padding-right: 1rem;
  color: #0a0a0a;
}
.footer-menu-collection .accordion-title {
  font-size: 1rem;
  color: #0a0a0a;
  border: 0;
  text-transform: uppercase;
  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: 0;
  padding-top: 1rem;
}
.footer-menu-collection .accordion-title::before {
  content: "";
}
.footer-menu-collection .accordion-content {
  border: 0;
  padding: 0;
  background-color: transparent;
  color: #666666;
}
@media print, screen and (max-width: 39.99875em) {
  .footer-menu-collection .accordion-item .accordion-title {
    border-bottom: 1px solid #333333;
    background: transparent;
  }
}
@media print, screen and (max-width: 39.99875em) {
  .footer-menu-collection .footer-menu-list {
    padding-top: 1rem;
  }
}
.footer-menu.small-15 {
  width: 50%;
  padding-left: 0;
  padding-right: 0;
}
@media print, screen and (min-width: 40em) {
  .footer-menu.small-15 {
    width: 25%;
  }
}
@media print, screen and (min-width: 64em) {
  .footer-menu.small-15 {
    width: 12.5%;
  }
}
.footer-bottom {
  text-align: center;
  color: #fefefe;
  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) {
  .footer-bottom {
    height: 85px;
  }
}
.footer-bottom p {
  text-transform: uppercase;
  color: #999999;
  font-weight: 500;
  margin-bottom: 0;
  font-size: 0.75rem;
  letter-spacing: 0.1rem;
}
@media print, screen and (min-width: 64em) {
  .footer-bottom p {
    font-size: 0.85rem;
    letter-spacing: 0.2rem;
  }
}

/*.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);
}
@media print, screen and (min-width: 64em) {
  .section-content {
    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: #d00204;
  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-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 .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-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: 0;
  padding-right: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
.hp .pencil h2, .hp .pencil p, .hp .pencil a {
  line-height: 1;
}
.hp .pencil h2 {
  margin-bottom: 0.5rem;
  line-height: 0.8;
  font-size: 1.65rem;
  text-transform: capitalize;
  font-weight: 400;
  font-family: "DM Sans", sans-serif;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil h2 {
    font-size: 4.5rem;
    line-height: 1;
    margin-bottom: 0;
  }
}
.hp .pencil p {
  font-size: 1.125rem;
  font-weight: 400;
  line-height: 1.5;
  font-family: "DM Sans", sans-serif;
}
@media print, screen and (min-width: 40em) {
  .hp .pencil p {
    font-size: 1.25rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .pencil p {
    font-size: 1.55rem;
    line-height: 1;
    font-weight: 500;
  }
}
.hp .pencil a {
  color: #0a0a0a;
}
.hp .pencil a:hover {
  color: #d00204;
}
.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: 0.85rem;
  min-width: 140px;
  background-color: #0a0a0a;
  color: #fefefe;
  letter-spacing: 0.2rem;
  text-transform: uppercase;
  font-weight: 500;
  padding: 1.25rem 2rem;
  white-space: nowrap;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil .button {
    height: 66px;
    min-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 .pencil .button:hover {
  color: #fefefe;
  background-color: #d00204;
}
.hp .pencil.dealers {
  padding-left: 1rem;
  padding-right: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil.dealers {
    padding-left: 0;
    padding-right: 0;
  }
}
.hp .pencil.dealers h2 {
  font-weight: 300;
  letter-spacing: 0.1rem;
}
@media print, screen and (min-width: 40em) {
  .hp .pencil.dealers h2 {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .pencil.dealers h2 {
    font-size: 4.75rem;
  }
}
.hp .pencil.dealers .title {
  margin-bottom: 1rem;
}
.hp .pencil.information {
  background-color: #0a0a0a;
  text-align: center;
}
.hp .pencil.information h2, .hp .pencil.information p {
  color: #fefefe;
}
.hp .pencil.information h2 {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil.information h2 {
    font-size: 0.85rem;
  }
}
.hp .pencil.information p {
  font-family: "DM Sans", sans-serif;
  font-size: 1.75rem;
  line-height: 1.35;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil.information p {
    font-size: 2.25rem;
    letter-spacing: 0.1rem;
  }
}
.hp .pencil.information .title {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .pencil.information .title {
    margin-bottom: 4rem;
  }
}

.hp .wheels {
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@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 h2 {
  font-size: 1.75rem;
  font-weight: 400;
  font-family: "DM Sans", sans-serif;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels h2 {
    font-size: 2.5rem;
    letter-spacing: 0.1rem;
  }
}
.hp .wheels .wheels-header .title {
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-header .title {
    text-align: left;
    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: "DM Sans", 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;
}
@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;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list .row {
    padding-left: 4rem;
    padding-right: 4rem;
  }
}
.hp .wheels .wheels-list .product-info {
  padding: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  .hp .wheels .wheels-list .product-info {
    padding: 0;
  }
}
.hp .wheels .wheels-list .product-item {
  padding: 1rem;
}
.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: #d00204;
}
.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;
  }
}
.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: "DM Sans", sans-serif;
  color: #0a0a0a;
  font-size: 1rem;
  font-weight: 500;
  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: 1.25rem;
    font-weight: 700;
  }
}
.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;
  }
}

.hp .series {
  padding-top: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .series {
    padding: 4.5rem 0;
  }
}
.hp .series .series-header {
  text-align: center;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-header {
    margin-bottom: 2rem;
  }
}
.hp .series .series-header h2 {
  font-size: 0.75rem;
  letter-spacing: 0.125rem;
  font-weight: 700;
  text-transform: uppercase;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-header h2 {
    font-size: 1rem;
    letter-spacing: 0.2rem;
  }
}
.hp .series .series-header p {
  font-size: 2rem;
  font-weight: 300;
  line-height: 1.25;
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-header p {
    font-size: 3.75rem;
    letter-spacing: 0.2rem;
  }
}
.hp .series .series-header .title {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-header .title {
    margin-bottom: 3rem;
  }
}
.hp .series .series-list .series-item a {
  display: block;
  position: relative;
  color: #fefefe;
  margin-bottom: 2rem;
}
.hp .series .series-list .series-item a:hover .text {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}
.hp .series .series-list .series-item .image img {
  width: 100%;
}
.hp .series .series-list .series-item .content {
  position: relative;
}
.hp .series .series-list .series-item .content .text {
  position: absolute;
  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;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border: 1px solid #999999;
  inset: 1rem;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-list .series-item .content .text {
    inset: 2rem;
  }
}
.hp .series .series-list .series-item .content .wheel-name {
  font-family: "DM Sans", sans-serif;
  font-size: 3.5rem;
  letter-spacing: 0.2rem;
  font-weight: 300;
  text-align: center;
  line-height: 1;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  .hp .series .series-list .series-item .content .wheel-name {
    font-size: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  .hp .series .series-list .series-item .content .wheel-name {
    font-size: 3.5rem;
  }
}
.hp .series .series-list .series-item .content .subtitle {
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.2rem;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
}

@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: #d00204;
}
.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: #d00204;
  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 #d00204;
  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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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: #d00204;
  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: #d00204;
  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 {
  position: relative;
}
.hp .about .background {
  background-image: url("/images/home/about-us.jpg");
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 3rem;
  padding-bottom: 3rem;
  height: 50vh;
}
@media print, screen and (min-width: 64em) {
  .hp .about .background {
    background-size: 150%;
    height: auto;
  }
}
.hp .about .background img {
  width: 100%;
  opacity: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .about .background {
    padding-top: 0;
    padding-bottom: 0;
  }
  .hp .about .background img {
    opacity: 1;
  }
}
.hp .about .foreground {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 2rem 0;
  bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .about .foreground {
    text-align: left;
    padding: 4.5rem 0;
    bottom: auto;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.hp .about .foreground .row {
  width: 100%;
}
.hp .about h2 {
  color: #0a0a0a;
  font-size: 0.75rem;
  font-weight: 700;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 0.125rem;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
@media print, screen and (min-width: 64em) {
  .hp .about h2 {
    font-size: 0.85rem;
    letter-spacing: 0.2rem;
  }
}
.hp .about p {
  color: #0a0a0a;
  font-size: 2.5rem;
  font-weight: 300;
  margin-bottom: 2rem;
  font-family: "DM Sans", sans-serif;
  line-height: 1;
  letter-spacing: 0.1rem;
}
@media print, screen and (min-width: 64em) {
  .hp .about p {
    font-size: 4.5rem;
    margin-bottom: 1rem;
    line-height: 1.5;
    letter-spacing: 0;
  }
}
.hp .about .about-right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.hp .about .button {
  background-color: #0a0a0a;
  letter-spacing: 2px;
  font-size: 0.85rem;
  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;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  .hp .about .button {
    width: 264px;
    height: 74px;
    margin: unset;
  }
}
.hp .about .button:hover {
  background-color: #cccccc;
}

.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: #d00204;
}
.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;
}

.hp .gallery {
  padding: 2rem 0;
  background-color: #0a0a0a;
  color: #fefefe;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  .hp .gallery {
    padding: 4rem 0;
  }
}
.hp .gallery h2, .hp .gallery p {
  color: #fefefe;
}
.hp .gallery h2 {
  font-size: 0.75rem;
  letter-spacing: 0.125rem;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 0;
}
@media print, screen and (min-width: 64em) {
  .hp .gallery h2 {
    font-size: 0.85rem;
    letter-spacing: 0.2rem;
    margin-bottom: 1rem;
  }
}
.hp .gallery p {
  font-size: 2.5rem;
  font-weight: 300;
  letter-spacing: 0.125rem;
}
@media print, screen and (min-width: 64em) {
  .hp .gallery p {
    font-size: 4.25rem;
    letter-spacing: 0.25rem;
  }
}
.hp .gallery .text {
  margin-bottom: 2rem;
}
@media print, screen and (min-width: 64em) {
  .hp .gallery .text {
    margin-bottom: 4rem;
  }
}
.hp .gallery a {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.hp .gallery a:hover .photo-image-container {
  -webkit-filter: blur(3px);
          filter: blur(3px);
}
.hp .gallery .gallery-list {
  padding: 0 1.25rem;
}
@media print, screen and (max-width: 63.99875em) {
  .hp .gallery .gallery-list .column, .hp .gallery .gallery-list .columns {
    padding: 0 0.35rem;
  }
}
.hp .gallery img {
  opacity: 0;
}
.hp .gallery .photo-image {
  margin-bottom: 0.75rem;
}
@media print, screen and (min-width: 64em) {
  .hp .gallery .photo-image {
    margin-bottom: 2rem;
  }
}
.hp .gallery .photo-image-container {
  background-size: cover;
  background-position: center;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

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

#wheels h2, #wheels h3 {
  line-height: 1;
}
#wheels h2 {
  color: #333333;
  font-size: 5.5rem;
  margin-bottom: 0;
  letter-spacing: -5px;
}
#wheels h3 {
  color: #d00204;
  font-style: normal;
  text-transform: uppercase;
}
#wheels h4 {
  font-size: 1.75rem;
  color: #0a0a0a;
  line-height: 1;
}
@media print, screen and (min-width: 40em) {
  #wheels h4 {
    font-size: 2.65rem;
  }
}
#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 .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 .products-list {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list {
    margin-bottom: 2rem;
    max-width: none;
  }
}
@media screen and (min-width: 75em) {
  #wheels .products-list {
    padding-left: 5rem;
    padding-right: 5rem;
  }
}
#wheels .products-list .column, #wheels .products-list .columns {
  margin-bottom: 1rem;
}
#wheels .products-list a {
  color: #0a0a0a;
  font-weight: 400;
  letter-spacing: 0.05rem;
}
#wheels .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;
}
@media print, screen and (min-width: 64em) {
  #wheels .products-list a .hover-item img {
    width: 100%;
  }
}
#wheels .products-list a .hover-item:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#wheels .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 {
    font-size: 0.85rem;
    margin-bottom: 0.5rem;
  }
}
#wheels .products-list .info .wheel-name {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  #wheels .products-list .info .wheel-name {
    font-size: 1.5rem;
  }
}
#wheels .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 {
    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 {
    width: 25%;
    margin-right: 6px;
  }
}
#wheels .products-list .other-finishes-container {
  display: grid;
}
#wheels .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 {
  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 {
  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 {
  background-color: #cccccc;
}
#wheels .products-list .other-finishes .more-finishes {
  text-align: 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 {
    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 {
  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 {
    padding-top: 3rem;
    padding-left: 0;
    padding-right: 0;
  }
}
#wheel .label {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.85rem;
  text-transform: uppercase;
  background-color: transparent;
  font-weight: 700;
  color: #0a0a0a;
  letter-spacing: 0.25rem;
  padding: 0;
  margin-bottom: 0.5rem;
}
#wheel .label i {
  color: #d00204;
}
#wheel .button, #wheel input, #wheel select {
  max-width: 370px;
  width: 100%;
}
#wheel .button {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.85rem;
  letter-spacing: 0.2rem;
  font-weight: 500;
}
#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: #d00204;
  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 {
  background-color: #fefefe;
}
#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;
}

@media print, screen and (min-width: 40em) {
  .accordion-content {
    padding: 0;
    border: 0;
    border-bottom: 0 !important;
  }
}
.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;
  }
}
#detail-quote-popup {
  max-width: 75rem;
}
#detail-quote-popup h2, #detail-quote-popup h4, #detail-quote-popup h5 {
  font-family: "DM Sans", sans-serif;
  color: #0a0a0a;
  text-transform: uppercase;
}
#detail-quote-popup label {
  text-transform: uppercase;
}
#detail-quote-popup .option-two {
  display: none;
}

.main-image {
  margin-bottom: 0;
  padding-right: 0;
  margin: 0 auto;
}
@media print, screen and (min-width: 64em) {
  .main-image {
    padding-right: 2rem;
  }
}
.main-image img {
  margin: 0 auto;
}

.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: #d00204;
  color: #fff;
  font-weight: 500;
}
.detail-spec-tabs a:hover {
  background-color: #000;
  color: #fff;
}

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

.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 > div {
  margin-bottom: 2rem;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-info .finish {
    display: none;
  }
}
.wheel-info .sizes {
  margin-bottom: 1rem;
}
.wheel-info .sizes .title {
  display: block;
}
.wheel-info .sizes-list {
  font-size: 1rem;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 500;
  color: #0a0a0a;
}
.wheel-info .sizes-list span {
  margin-right: 0.5rem;
}
#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;
  margin-bottom: 1rem;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
}
@media print, screen and (min-width: 64em) {
  .cta-buttons {
    margin-bottom: 3rem;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.cta-buttons .pill {
  color: #0a0a0a;
  background-color: #ededed;
}
@media print, screen and (min-width: 64em) {
  .cta-buttons > div:first-child {
    margin-right: 1rem;
  }
}
.cta-buttons > div:first-child .pill {
  background-color: #fefefe;
  border: 1px solid #0a0a0a;
}
.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: #d00204;
}

.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: #d00204;
}

.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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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 {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

@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;
  border: 1px solid #cccccc;
  padding: 1rem 2rem;
}
#specs .tabs {
  border: 0;
  border-bottom: 1px solid #cccccc;
  padding-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #specs .tabs {
    padding-bottom: 1.5rem;
  }
}
#specs table tr th, #specs table tr td {
  padding: 0.75rem 1rem;
  text-align: left;
  font-size: 0.875rem;
}
#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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.2rem;
  text-transform: uppercase;
  padding-top: 0.9rem;
  padding-bottom: 0.9rem;
}
#specs .tabs-content {
  border: 0;
}
#specs .tabs-content a {
  color: #0a0a0a;
}
#specs .tabs-content a:hover {
  text-decoration: underline;
}

.wheel-spec-tabs {
  display: inline-block;
  text-align: center;
  margin-right: 0.75rem;
}
.wheel-spec-tabs > a {
  font-size: 1.6rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
  color: #0a0a0a;
  padding: 0;
}
.wheel-spec-tabs.is-active {
  border-bottom: 5px solid #d00204;
}
.wheel-spec-tabs.is-active a {
  color: #d00204;
  background-color: transparent;
}
.wheel-spec-panel {
  overflow: auto;
}

/*
.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;
}
@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: "DM Sans", 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-detail-gallery {
  background-color: #fefefe;
}
.wheel-detail-gallery h3 {
  margin-bottom: 0;
  color: #fefefe;
}
.wheel-detail-gallery img {
  width: 100%;
}
.wheel-detail-gallery .photo {
  border: 1px solid #fefefe;
  border-left: 0;
}
.wheel-detail-gallery .photo:last-child {
  border-right: 0;
}
.wheel-detail-gallery .photo span {
  background-position: center;
  background-size: cover;
  padding-bottom: 75%;
  display: block;
}
.wheel-detail-gallery .navigation {
  margin-top: 1rem;
  margin-bottom: 1rem;
}
.wheel-detail-gallery .navigation .button {
  margin-bottom: 0;
  letter-spacing: 0.15rem;
  font-weight: 500;
  font-size: 0.9rem;
}
.wheel-detail-gallery .navigation .button:focus, .wheel-detail-gallery .navigation .button:active {
  background-color: #d00204;
}

.js-slider {
  padding: 0 3rem;
}
.js-slider .slick-track {
  margin: 0;
}
.js-slider .slick-slide {
  padding: 0.25rem;
}
.js-slider .slick-slide > a {
  width: 100%;
  position: relative;
}
.js-slider .slick-slide > a.galleryViewVideo-open .wheel-galleryImage img {
  opacity: 0;
}
.js-slider .slick-slide .wheel-galleryImage {
  border: 1px solid #dddddd;
}
.js-slider .slick-slide .video-icon {
  position: absolute;
  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;
  color: #d00204;
  font-size: 2.25rem;
  width: 100%;
  height: 100%;
}
.js-slider .slick-arrow {
  position: absolute;
  height: 30px;
  width: 30px;
  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;
  z-index: 1;
  opacity: 1;
  -webkit-transition: all 0.3s ease-in;
  transition: all 0.3s ease-in;
  top: 35%;
}
.js-slider .slick-arrow i {
  font-size: 1.5rem;
  color: #0a0a0a;
}
@media print, screen and (min-width: 64em) {
  .js-slider .slick-arrow i {
    font-size: 2.5rem;
  }
}
@media print, screen and (min-width: 40em) {
  .js-slider .slick-arrow {
    height: 40px;
    width: 40px;
  }
}
.js-slider .slick-arrow.slick-disabled {
  opacity: 0.5;
}
.js-slider .slick-arrow.featured-next {
  right: 0px;
}
.js-slider .slick-arrow.featured-prev {
  left: 0px;
}
.js-slider .slick-arrow {
  /*
  @include breakpoint (large) {
    &.featured-next {
      right:-25px;
    }
    &.featured-prev {
      left:-25px;
    }
  }
  */
}

.wheel-gallery__header {
  font-size: 1.5rem;
  text-transform: none;
  font-weight: 700;
}
.wheel-galleryList {
  display: inline-block;
  margin: 0;
  width: 100%;
}
.wheel-galleryList__item {
  list-style: none;
  margin-right: 0.5rem;
  float: left;
  width: 49%;
}
.wheel-galleryList__item:nth-child(2n) {
  margin-right: 0;
}
@media print, screen and (min-width: 40em) {
  .wheel-galleryList__item {
    max-width: 180px;
    width: 100%;
  }
  .wheel-galleryList__item:nth-child(2n) {
    margin-right: 0.5rem;
  }
}
.wheel-galleryList__item a {
  display: block;
  width: 100%;
}

.popup-wheelimage {
  max-height: 800px;
  max-width: 100%;
  line-height: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1rem;
  margin: 0 auto;
  background-color: #fefefe;
}

.wheel-galleryImage {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  margin-bottom: 0.5rem;
}
.wheel-galleryImage img {
  width: 100%;
}

.wheel-galleryTxt {
  font-size: 1rem;
  display: block;
  line-height: 1.25;
}
@media print, screen and (max-width: 39.99875em) {
  .wheel-galleryTxt {
    font-size: 0.8rem;
  }
}

.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 {
  padding-bottom: 0;
}
@media print, screen and (min-width: 40em) {
  .wheel-title {
    padding-bottom: 1rem;
  }
}
.wheel-title h2, .wheel-title p {
  margin-bottom: 0;
}
.wheel-title h2 {
  font-size: 2.25rem;
  font-family: "DM Sans", sans-serif;
  font-weight: 500;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
  line-height: 1;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .wheel-title h2 {
    font-size: 3rem;
  }
}
.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: 0.9rem;
  color: #d00204;
  margin-bottom: 0.25rem;
}
.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 .red {
  color: #d00204;
}
.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: #d00204;
  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 #d00204;
  -webkit-transform: skewY(10deg);
  transform: skewY(10deg);
}
.wheel-title .msrp-display {
  display: none;
}

#wheel .wheel-content-container .cart {
  margin-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
@media print, screen and (min-width: 40em) {
  #wheel .wheel-content-container .cart {
    margin-bottom: 3rem;
  }
}
#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-information-rear {
  margin-top: 2rem;
  padding-top: 0.5rem;
}
#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: #d00204;
  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;
  margin-bottom: 1rem;
}
@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: #d00204;
  letter-spacing: 0.1rem;
  padding: 1rem;
  font-size: 0.8rem;
}
#wheel .cart .pricing-section .bottom .button:hover {
  background-color: #0a0a0a;
}

@media print, screen and (min-width: 64em) {
  #wheels .filter {
    width: 85%;
  }
}
#wheels .filter .reference-vehicle .fitment-menu a {
  display: block;
}
#wheels .filter h3 {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  margin-bottom: 2rem;
  display: inline-block;
}
@media print, screen and (min-width: 64em) {
  #wheels .filter h3 {
    font-size: 1.25rem;
  }
}
#wheels .filter ul {
  margin: 0;
  list-style: none;
}
#wheels .filter .filter-active li {
  display: inline-block;
  margin-right: 0.25rem;
  margin-bottom: 1rem;
}
#wheels .filter .filter-active a {
  border-radius: 10px;
  background-color: #d00204;
  padding: 0.25rem 0.5rem;
  color: #fefefe;
  display: block;
  font-size: 0.75rem;
  -webkit-transform: all 0.3s ease-in-out;
          transform: all 0.3s ease-in-out;
}
#wheels .filter .filter-active a:hover {
  background-color: #d00204;
  color: #0a0a0a;
}
#wheels .filter .filter-active-title h4 {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 700;
}
#wheels .filter .filter-active-clear {
  padding-bottom: 1rem;
  margin-bottom: 1rem;
  border-bottom: 1px solid #cccccc;
}
#wheels .filter .filter-active-clear a {
  text-transform: uppercase;
  background-color: transparent;
  color: #d00204;
  display: inline-block;
}
#wheels .filter h4 {
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  margin-bottom: 0;
}
#wheels .filter .icon-product-filter {
  margin-bottom: 2rem;
  border-bottom: 1px solid #cccccc;
}
#wheels .filter .icon-product-filter.filter-brands-opts {
  display: none;
}
#wheels .filter .icon-product-filter.filter-active {
  border-bottom: 0;
  padding: 0;
  margin: 0;
}
#wheels .filter .icon-product-filter.filter-active .filter-active-title {
  margin-bottom: 2rem;
}
#wheels .filter .icon-product-filter .icon-filter-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 500;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 1rem;
}
#wheels .filter .icon-product-filter .icon-filter-title i {
  font-size: 0.85rem;
}
#wheels .filter .icon-product-filter .icon-filter-items {
  margin-bottom: 1rem;
}
#wheels .filter .icon-product-filter .icon-filter-items label {
  color: #0a0a0a;
}
#wheels .filter .icon-product-filter .icon-filter-items .filter-button {
  text-transform: uppercase;
  font-size: 0.75rem;
  color: #d00204;
  margin: 1rem 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#wheels .filter .icon-product-filter .icon-filter-items .filter-button:hover {
  color: #cccccc;
}
#wheels .filter .icon-product-filter.filter-fitment {
  margin-bottom: 2rem;
  padding-bottom: 1rem;
  border-bottom: 8px solid #999999;
}
#wheels .filter .icon-product-filter.filter-fitment .fitment-search-button .button {
  border-radius: 5px;
  color: #fefefe;
  font-size: 0.85rem;
  width: 100%;
  padding: 1rem 0;
}
#wheels:not(.wheels-searched-by-vehicle) .fitment-header {
  padding-top: 1rem;
  border-top: 1px solid #7f8283;
  margin-top: 1rem;
}
@media print, screen and (min-width: 64em) {
  #wheels:not(.wheels-searched-by-vehicle) .fitment-header {
    padding: 0;
    border-top: 0;
    margin-top: 1rem;
  }
}
#wheels:not(.wheels-searched-by-vehicle) .fitment-header .mobile-only-slide-filter-search {
  width: 100%;
}
#wheels:not(.wheels-searched-by-vehicle) .fitment-header .column, #wheels:not(.wheels-searched-by-vehicle) .fitment-header .columns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#wheels:not(.wheels-searched-by-vehicle) .fitment-header .button {
  margin-bottom: 0;
}
#wheels:not(.wheels-searched-by-vehicle) .fitment-header .button.fitment-open {
  color: #fefefe;
}
#wheels:not(.wheels-searched-by-vehicle) .filter .fitment-search-button .button {
  color: #fefefe;
}
#wheels:not(.wheels-searched-by-vehicle) .filter .filter-items {
  display: none;
}

.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: flex;
    justify-content: space-between;
    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;
  }
}

.js-off-canvas-overlay {
  background: rgba(0, 0, 0, 0.75);
}

.off-canvas-content .off-canvas.position-left, .position-left {
  -webkit-transform: translateX(-485px);
          transform: translateX(-485px);
}

.off-canvas {
  color: #0a0a0a;
}
.off-canvas > div > div {
  padding-left: 2rem;
  padding-right: 2rem;
}
.off-canvas.position-left {
  /*width:445px; // Need to update js before applying....*/
  width: 100%;
}
@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: #d00204;
}
.off-canvas .close-button.orange {
  background-color: #d00204;
}
.off-canvas .close-button.orange:hover {
  color: #0a0a0a;
}
.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: "DM Sans", 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 .product-filters .icon-product-filter {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.off-canvas .product-filters .filter-brands-opts {
  display: none;
}
.off-canvas .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;
}
.off-canvas .icon-filter-title i {
  color: #999999;
  font-size: 0.85rem;
}
.off-canvas .icon-filter-items {
  padding-top: 1rem;
}
.off-canvas .icon-filter-items li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  line-height: 1;
}
.off-canvas .icon-filter-items input {
  margin-bottom: 0;
}
.off-canvas .icon-filter-items label {
  line-height: 1;
}
.off-canvas .wheels-slide-filter .product-filters, .off-canvas .tires-slide-filter .product-filters {
  display: block !important;
}
.off-canvas .wheels-slide-filter, .off-canvas .tires-slide-filter {
  padding-left: 2rem;
  padding-right: 2rem;
}
.off-canvas .wheels-slide-filter h4, .off-canvas .tires-slide-filter h4 {
  text-transform: uppercase;
  font-family: "DM Sans", sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.1rem;
  color: #0a0a0a;
  margin-bottom: 0;
  font-weight: 700;
}
.off-canvas .wheels-slide-filter ul, .off-canvas .tires-slide-filter ul {
  list-style: none;
}
.off-canvas .wheels-slide-filter label, .off-canvas .tires-slide-filter label {
  font-weight: 700;
  text-transform: uppercase;
}
.off-canvas .wheels-slide-filter i.fa-minus, .off-canvas .wheels-slide-filter i.fa-plus, .off-canvas .tires-slide-filter i.fa-minus, .off-canvas .tires-slide-filter i.fa-plus {
  color: #888888;
}
.off-canvas .wheels-slide-filter i.fa-minus:hover, .off-canvas .wheels-slide-filter i.fa-plus:hover, .off-canvas .tires-slide-filter i.fa-minus:hover, .off-canvas .tires-slide-filter i.fa-plus:hover {
  color: #d00204;
}
.off-canvas .wheels-slide-filter .filter-title, .off-canvas .tires-slide-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;
}
.off-canvas .wheels-slide-filter .filter-button, .off-canvas .tires-slide-filter .filter-button {
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: 600;
  color: #444444;
}
.off-canvas .wheels-slide-filter .filter-button:hover, .off-canvas .tires-slide-filter .filter-button:hover {
  color: #d00204;
}
.off-canvas .wheels-slide-filter .filter-items, .off-canvas .tires-slide-filter .filter-items {
  padding-top: 1rem;
  display: none;
}
.off-canvas .wheels-slide-filter .filter-items li, .off-canvas .tires-slide-filter .filter-items li {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 1rem;
  line-height: 1;
}
.off-canvas .wheels-slide-filter .filter-items input, .off-canvas .tires-slide-filter .filter-items input {
  margin-bottom: 0;
}
.off-canvas .wheels-slide-filter .filter-items label, .off-canvas .tires-slide-filter .filter-items label {
  line-height: 1;
}
.off-canvas .wheels-slide-filter .product-filters .product-filter, .off-canvas .tires-slide-filter .product-filters .product-filter {
  border-bottom: 1px solid #cccccc;
  padding-bottom: 1.5rem;
  margin-bottom: 1.5rem;
}
.off-canvas .wheels-slide-filter .filter-active, .off-canvas .tires-slide-filter .filter-active {
  display: none;
  margin-bottom: 1rem;
}
.off-canvas .wheels-slide-filter .filter-active ul, .off-canvas .tires-slide-filter .filter-active ul {
  margin-bottom: 1rem;
}
.off-canvas .wheels-slide-filter .filter-active a, .off-canvas .tires-slide-filter .filter-active a {
  background-color: #cccccc;
  color: #0a0a0a;
  border-radius: 5px;
  padding: 0.25rem 0.5rem;
  font-weight: 600;
}
.off-canvas .wheels-slide-filter .filter-active a i, .off-canvas .tires-slide-filter .filter-active a i {
  color: #d00204;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  font-size: inherit;
}
.off-canvas .wheels-slide-filter .filter-active a:hover, .off-canvas .tires-slide-filter .filter-active a:hover {
  background-color: #d00204;
  color: #fefefe;
}
.off-canvas .wheels-slide-filter .filter-active a:hover i, .off-canvas .tires-slide-filter .filter-active a:hover i {
  color: #fefefe;
}
.off-canvas .wheels-slide-filter .filter-active a.fitmentSet, .off-canvas .tires-slide-filter .filter-active a.fitmentSet {
  pointer-events: none;
  background-color: #999999;
}
.off-canvas .wheels-slide-filter .filter-active a.fitmentSet i, .off-canvas .tires-slide-filter .filter-active a.fitmentSet i {
  color: #666666;
}
.off-canvas .wheels-slide-filter .filter-active ul li, .off-canvas .tires-slide-filter .filter-active ul li {
  display: inline-block;
  margin-bottom: 0.5rem;
  margin-right: 10px;
}
.off-canvas .wheels-slide-filter .filter-active-clear, .off-canvas .tires-slide-filter .filter-active-clear {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  .off-canvas .wheels-slide-filter .filter-active-clear, .off-canvas .tires-slide-filter .filter-active-clear {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
  }
}
.off-canvas .wheels-slide-filter .filter-active-clear a, .off-canvas .tires-slide-filter .filter-active-clear a {
  font-size: 0.75rem;
  font-weight: 600;
  color: #444444;
  text-transform: uppercase;
  border: none;
  background-color: transparent;
  padding: 0;
}
.off-canvas .wheels-slide-filter .filter-active-clear a:hover, .off-canvas .tires-slide-filter .filter-active-clear a:hover {
  border: none;
  background-color: transparent;
  color: #0a0a0a;
}
.off-canvas .wheels-slide-filter .filter-active .filter-active-title, .off-canvas .tires-slide-filter .filter-active .filter-active-title {
  margin-bottom: 1rem;
}
.off-canvas .wheels-slide-filter .filter-active .filter-active-title h4, .off-canvas .tires-slide-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;
}
.off-canvas .wheels-slide-filter .filter-brands label, .off-canvas .tires-slide-filter .filter-brands label {
  max-width: 260px;
  line-height: 1;
  vertical-align: middle;
}
.off-canvas .slide-filter-gallery {
  margin-top: 2rem;
}

@media print, screen and (max-width: 63.99875em) {
  .int .page-content > div:first-child {
    padding-top: 1rem;
  }
}
.int .mobile-only-slide-filter-search > .row {
  margin-left: 0;
  margin-right: 0;
}
.int .mobile-only-slide-filter-search .button {
  border-radius: 5px;
  color: #0a0a0a;
  width: 100%;
  padding: 1rem 0.5rem;
}
.int .mobile-only-slide-filter-search .button.fitment-open {
  color: #fefefe;
}
.int .mobile-only-slide-filter-search .button:not(.search-by-vehicle) {
  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;
  background-color: #cccccc;
}
.int .mobile-only-slide-filter-search .button:not(.search-by-vehicle) .button-text {
  width: 100%;
}
@media print, screen and (max-width: 74.99875em) {
  .int .listing-search-bar > .column:first-child, .int .listing-search-bar > .columns:first-child {
    padding: 0;
  }
}

@media print, screen and (max-width: 63.99875em) {
  #wheels.wheels-searched-by-vehicle .page-header .page-title {
    height: auto;
  }
}
@media print, screen and (min-width: 64em) {
  #wheels.wheels-searched-by-vehicle .page-header h1 {
    font-size: 2rem;
  }
}
#wheels.wheels-searched-by-vehicle .page-header .background-image {
  background-position: center top;
  background-size: cover;
  background-repeat: no-repeat;
}
@media screen and (min-width: 1200px) {
  #wheels.wheels-searched-by-vehicle .page-header .background-image {
    background-attachment: fixed;
  }
}
#wheels.wheels-searched-by-vehicle .pagination .current {
  background-color: #d00204;
}

#wheel.detail-by-vehicle .vov-call {
  position: relative;
}
#wheel.detail-by-vehicle .vov-call a {
  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;
  border-radius: 5px;
  font-family: "DM Sans", sans-serif;
  letter-spacing: 0;
}
#wheel.detail-by-vehicle .vov-call a i {
  font-size: 1.125rem;
  margin-right: 0.5rem;
}
#wheel.detail-by-vehicle .vov-call {
  /*
  .fitment-button {
    text-align:center;
    position:absolute;
    left:0;
    right:0;
    bottom:-300px;
    z-index:1;
    @include breakpoint (large) {
      bottom:-400px;
    }
    a {
      text-transform: uppercase;
      color:$black;
      background-color:$white;
      border-radius: 8px;
      border:1px solid $black;
      padding:.5rem;
      font-size:.8rem;
      display:inline-flex;
      align-items:center;
      justify-content: center;
      i {
        font-size:1.5rem;
        margin-right:.5rem;
      }
    }
  }*/
}
#wheel.detail-by-vehicle .cta {
  padding-top: 2rem;
  margin-top: 2rem;
  border-top: 1px solid #0a0a0a;
}

.white-popup .fitmentCheck_Button {
  font-weight: 600;
  font-size: 0.85rem;
}

.vehicle-fitment {
  margin-bottom: 2rem;
}
.vehicle-fitment .fitment-selected {
  border-radius: 5px;
  border: 1px solid #ededed;
  background-color: #f6f6f6;
  padding: 1rem;
  margin-bottom: 1.25rem;
}
.vehicle-fitment .fitment-selected .vehicle {
  margin-bottom: 0.5rem;
}
.vehicle-fitment .fitment-selected-other-specs {
  margin-bottom: 1rem;
}
.vehicle-fitment .fitment-selected-sku span {
  font-weight: 600;
  text-transform: uppercase;
  color: #0a0a0a;
}
.vehicle-fitment .label {
  background-color: transparent;
  text-transform: uppercase;
  color: #0a0a0a;
  font-weight: 600;
  font-size: 1rem;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.5rem;
}
.vehicle-fitment i {
  font-size: 1.25rem;
  color: #33cc33;
  margin-right: 0.5rem;
}
.vehicle-fitment p, .vehicle-fitment a {
  display: inline-block;
}
.vehicle-fitment p {
  font-weight: 600;
  color: #0a0a0a;
  margin-bottom: 0;
  margin-right: 0.5rem;
}
.vehicle-fitment .remove-fitment {
  font-size: 0.85rem;
  color: #0a0a0a;
  text-decoration: underline;
}
.vehicle-fitment .vov-link {
  background-color: #d00204;
  color: #0a0a0a;
  border-radius: 10px;
  display: block;
  text-align: center;
  text-transform: uppercase;
  padding: 0.75rem;
  font-weight: 600;
}

#see-on-vehicle-detail h5 {
  font-size: 1.5rem;
  font-size: 1rem;
  line-height: 1.25;
}
#see-on-vehicle-detail h6 {
  font-family: "DM Sans", sans-serif;
}
#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;
}

.open-see-on-vehicle-popup {
  font-weight: 500;
  color: #0a0a0a;
  font-size: 0.825rem;
  cursor: pointer;
  text-align: right;
}
.open-see-on-vehicle-popup:hover {
  color: #d00204;
}
.open-see-on-vehicle-popup-container {
  text-align: right;
}

#see-on-vehicle-popup {
  padding: 0;
  max-width: 1200px;
  font-size: 0.825rem;
}
#see-on-vehicle-popup .vehicle-popup-image {
  text-align: center;
}
#see-on-vehicle-popup .vehicle-popup-information {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 0.5rem;
  padding-top: 0;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vehicle-popup-information {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 0 0.25rem 0.5rem;
  }
}
#see-on-vehicle-popup .vehicle-popup-information > div {
  padding: 0.75rem;
  background-color: #fefefe;
  border-radius: 8px;
  width: 100%;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vehicle-popup-information > div {
    margin: 0 0.375rem;
    margin-bottom: 0;
  }
}
#see-on-vehicle-popup .vehicle-popup-information > div label, #see-on-vehicle-popup .vehicle-popup-information > div .info-display {
  font-weight: 600;
}
#see-on-vehicle-popup .vehicle-popup-information > div label {
  color: #666666;
  text-transform: uppercase;
}
#see-on-vehicle-popup .vehicle-popup-information > div .info-display {
  line-height: 1;
}
#see-on-vehicle-popup .vehicle-popup-information > div i {
  color: #d00204;
  margin-left: 0.5rem;
}
#see-on-vehicle-popup .vehicle-popup-information > div.paint-info-container {
  cursor: pointer;
}
#see-on-vehicle-popup .vehicle-popup-information > div.paint-info-container:hover {
  color: #767676;
}
#see-on-vehicle-popup .vehicle-popup-information > div.paint-info-container label {
  cursor: pointer;
}
#see-on-vehicle-popup .vehicle-popup-information > div.paint-info-container #icm-change-color {
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#see-on-vehicle-popup .vehicle-popup-information > div.paint-info-container #icm-change-color:hover {
  color: #767676;
}
#see-on-vehicle-popup .vehicle-popup-information > div.wheel-info-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0;
}
#see-on-vehicle-popup .vehicle-popup-information > div.wheel-info-container img {
  height: 50px;
}
#see-on-vehicle-popup .vehicle-popup-information > div.wheel-info-container .right {
  margin-left: 0.5rem;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vehicle-popup-information > div.wheel-info-container .right {
    width: 80%;
  }
}
#see-on-vehicle-popup .vehicle-popup-information .wheel-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0;
  width: 100%;
}
#see-on-vehicle-popup .vehicle-popup-information .wheel-info .thumb {
  width: 100px;
  height: 100px;
  margin-right: 1rem;
  background-position: top right;
  background-size: 160%;
}
#see-on-vehicle-popup .vehicle-popup-information .wheel-info .wheel {
  color: #0a0a0a;
  font-weight: 600;
  text-transform: uppercase;
}
#see-on-vehicle-popup .vehicle-popup-information .wheel-info .specs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#see-on-vehicle-popup .vehicle-popup-information .wheel-info .specs .divider {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}
#see-on-vehicle-popup .vehicle-popup-information .vehicle-info {
  color: #0a0a0a;
  padding: 0.5rem;
  font-weight: 600;
}
#see-on-vehicle-popup .mfp-close {
  font-size: 2rem;
}

#see-on-vehicle-popup {
  border: 0;
  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);
  background-color: #d1d1d1;
}
@media print, screen and (max-width: 39.99875em) {
  #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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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;
  padding: 0.5rem;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vehicle-popup-image {
    padding: 0.75rem 0.7125rem 0.75rem;
  }
}
#see-on-vehicle-popup .vehicle-popup-image .vov-vehicle-image-container {
  background-color: #fefefe;
  border-radius: 8px;
  height: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#see-on-vehicle-popup .vehicle-popup-image .vov-vehicle-image-container img {
  padding: 2.25rem 0;
}
@media screen and (min-width: 75em) {
  #see-on-vehicle-popup .vehicle-popup-image .vov-vehicle-image-container img {
    width: 1100px;
  }
}
#see-on-vehicle-popup .vov-angle-arrow {
  position: absolute;
  top: 50%;
  font-size: 1.5rem;
  padding: 0;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 0.9;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup .vov-angle-arrow {
    top: 48%;
  }
}
#see-on-vehicle-popup .vov-angle-arrow i {
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
#see-on-vehicle-popup .vov-angle-arrow:hover {
  cursor: pointer;
  opacity: 1;
}
#see-on-vehicle-popup .vov-angle-arrow:hover i {
  color: #cccccc;
}
#see-on-vehicle-popup #vov-previous-angle {
  left: 0;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup #vov-previous-angle {
    margin-left: 2rem;
    padding: 0;
  }
}
#see-on-vehicle-popup #vov-next-angle {
  right: 0;
  padding: 1rem;
}
@media print, screen and (min-width: 64em) {
  #see-on-vehicle-popup #vov-next-angle {
    margin-right: 2rem;
    padding: 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 h4 {
  font-size: 1rem;
}
#swatches-dialog .icm-vov-swatch-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: 1fr 1fr;
}
#swatches-dialog .icm-vov-swatch-description {
  font-size: 0.85rem;
}

#wheels .wheel-filters h3, #wheel-brands .wheel-filters h3 {
  font-size: 1.15rem;
  color: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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: #d00204;
  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: #d00204;
  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: 1px solid #cccccc;
  margin-bottom: 1rem;
  padding: 1.25rem 1rem;
}
.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-family: "DM Sans", sans-serif;
  font-size: 0.8rem;
  margin-bottom: 0;
  letter-spacing: 0.1rem;
  color: #0a0a0a;
}

.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: #0a0a0a;
  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: #d00204;
}
#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: #d00204;
}
#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;
  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: #d00204;
  -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: #d00204;
  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: #d00204;
}
#wheel .wheel-info .pricing-specs .bottom .pricing-starting .call-for, #wheel .accessory-info .pricing-specs .bottom .pricing-starting .call-for {
  color: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
}
#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: #d00204;
  text-decoration: underline;
  font-weight: 700;
}
#wheel .wheel-info .cta .button, #wheel .accessory-info .cta .button {
  background-color: #d00204;
  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: #d00204;
}
#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: #d00204;
  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 .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: #d00204;
}
.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;
}
.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: #d00204;
  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: #d00204;
  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, #d00204 0, #d00204 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: #d00204;
  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: #d00204;
}
#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: #d00204;
}
#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: #d00204;
}

.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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  font-style: normal;
  text-transform: uppercase;
}
#accessories a {
  font-size: 1.15rem;
  color: #666666;
}
#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 .products-list {
  margin-bottom: 1rem;
  max-width: 80rem;
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list {
    margin-bottom: 2rem;
  }
}
@media print, screen and (min-width: 64em) {
  #accessories .products-list .column, #accessories .products-list .columns {
    margin-bottom: 2rem;
  }
}
#accessories .products-list a {
  color: #0a0a0a;
  font-weight: 500;
  letter-spacing: 0.05rem;
}
#accessories .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;
}
#accessories .products-list a .hover-item:hover img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#accessories .products-list .info {
  text-transform: uppercase;
  font-size: 0.75rem;
  line-height: 1.35;
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 40em) {
  #accessories .products-list .info {
    font-size: 0.85rem;
  }
}
#accessories .products-list .info .wheel-name {
  font-weight: 700;
  font-size: 1rem;
}
@media print, screen and (min-width: 40em) {
  #accessories .products-list .info .wheel-name {
    font-size: 1.15rem;
  }
}

.accessory-image {
  max-width: 500px;
}

.accessory-name {
  font-weight: 700;
  font-size: 1.5rem;
}

.accessory-details {
  background: #f1f1f1;
  padding: 1rem 1.5rem;
}

.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 #d00204;
  color: #d00204;
  -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: #d00204;
}
#gallery-filter .accordion-title::before {
  left: auto;
}
#gallery-filter select {
  padding-left: 0.5rem;
  background-position: right center;
}

#gallery-header .accordion {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #gallery-header .accordion {
    margin-bottom: 0;
  }
}
#gallery-header .accordion-title {
  color: #0a0a0a;
  font-family: "DM Sans", sans-serif;
  font-weight: 600;
  letter-spacing: 0.1rem;
  font-size: 0.85rem;
}

#gallery .page-header {
  padding: 0;
}
#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: #d00204;
}
#gallery .slick-slide img {
  width: 100%;
}
#gallery .gallery-list .photo, #gallery .gallery-list .video {
  display: block;
  position: relative;
  color: #fefefe;
  overflow: hidden;
}
#gallery .gallery-list .photo:hover .photo-image-container, #gallery .gallery-list .video:hover .photo-image-container {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
#gallery .gallery-list .photo:hover .photo-information, #gallery .gallery-list .video:hover .photo-information {
  top: 0;
}
#gallery .gallery-list .photo-image-container {
  background-size: cover;
  background-position: center;
  padding-bottom: 12rem;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
@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;
}
#gallery .gallery-list .photo-information {
  text-align: left;
  color: #fefefe;
  line-height: 1;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
  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.7);
  font-family: "DM Sans", sans-serif;
  text-align: center;
  padding: 1rem;
}
#gallery .gallery-list .photo-information .vehicle {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.25rem;
  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 .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: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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 {
  padding: 2rem 0;
  text-align: center;
}
#gallery .navigation a {
  margin-bottom: 0;
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 600;
  font-size: 0.85rem;
  letter-spacing: 0.125rem;
  padding: 1.25rem 2rem;
}
#gallery .navigation a:focus, #gallery .navigation a:active {
  background-color: #d00204;
}

#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;
  font-size: 1.075rem;
  font-weight: 500;
  letter-spacing: normal;
  text-transform: none;
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle .page-header h1 {
    font-size: 2rem;
  }
}
#gallery-vehicle .page-header h3 {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
}
#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;
  padding: 1rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 40em) {
  #gallery-vehicle #gallery-details {
    max-width: 54rem;
  }
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle #gallery-details {
    max-width: 75rem;
    margin-bottom: 4rem;
  }
}
#gallery-vehicle #gallery-details .row {
  border: 1px solid #cccccc;
}
#gallery-vehicle #gallery-details .row .columns:first-child {
  text-align: center;
  border-bottom: 1px solid #cccccc;
}
@media print, screen and (min-width: 64em) {
  #gallery-vehicle #gallery-details .row .columns:first-child {
    border-bottom: 0;
    border-right: 1px solid #cccccc;
  }
}
#gallery-vehicle #gallery-details .right {
  padding: 1rem 0.5rem;
}
#gallery-vehicle #gallery-details .right .wheel-name {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 0;
}
#gallery-vehicle #gallery-details .right .wheel-sizes {
  font-size: 1.25rem;
  margin-bottom: 0.5rem;
}
#gallery-vehicle #gallery-details .right .wheel-description {
  margin-bottom: 1.5rem;
}
#gallery-vehicle #gallery-details .right p {
  font-size: 1.075rem;
  font-weight: 300;
  line-height: 1.3;
}
#gallery-vehicle #gallery-details .right .button {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 0.9rem;
  letter-spacing: 0.2rem;
  font-weight: 600;
  background-color: #0a0a0a;
}
@media print, screen and (max-width: 39.99875em) {
  #gallery-vehicle #gallery-details .right .button {
    width: 100%;
  }
}
#gallery-vehicle #gallery-details .right .button:hover {
  background-color: #d00204;
}
#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-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 600;
  text-transform: uppercase;
}

@media screen and (min-width: 1200px) {
  #contact .page-header .background-image, #thanks .page-header .background-image {
    background-size: 160%;
  }
}
#contact h4, #contact h5, #thanks h4, #thanks h5 {
  font-family: "DM Sans", sans-serif;
  color: #0a0a0a;
  text-transform: uppercase;
}
#contact label, #thanks label {
  text-transform: uppercase;
}
#contact .option-two, #thanks .option-two {
  display: none;
}
#contact hr, #thanks hr {
  margin: 2.5rem auto;
}

#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;
  font-family: "DM Sans", sans-serif;
}

#contact p.red {
  color: #d00204;
  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 .row {
  max-width: 75rem;
}
#page h1 {
  font-weight: 500;
  font-size: 2rem;
}
@media print, screen and (min-width: 64em) {
  #page h1 {
    font-size: 3rem;
  }
}
#page .page-header h1 {
  text-align: left;
}
#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: 200px;
}
@media print, screen and (min-width: 64em) {
  #page .page-header .page-title {
    height: 230px;
  }
}
#page .page-content > .row {
  max-width: 75rem;
  border-left: 3px solid #cccccc;
  padding-left: 1rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content > .row {
    padding-left: 3rem;
  }
}
#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;
  font-weight: 500;
  color: #0a0a0a;
  margin-bottom: 0rem;
  font-family: "DM Sans", sans-serif;
  margin-bottom: 1.75rem;
}
#page .page-content h2 {
  font-size: 1.6rem;
}
#page .page-content h3 {
  font-size: 1.125rem;
}
#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: 1rem;
  margin-bottom: 1.75rem;
}
@media print, screen and (min-width: 64em) {
  #page .page-content p, #page .page-content ul {
    font-size: 1.1rem;
  }
}
#page .page-content ul {
  margin-left: 2rem;
  list-style: disc;
}

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

*/
.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 #d00204;
}
.news-article .news-sidebar {
  padding: 1rem;
  background: #fbfbfb;
}
.news-article .news-sidebar li a {
  color: #505050;
}
.news-article .news-sidebar li a:hover {
  color: #d00204;
}

#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 {
  font-weight: 500;
}
#dealers h2 {
  font-size: 1.5rem;
  margin-bottom: 0;
}
#dealers h3 {
  font-family: "DM Sans", sans-serif;
  font-weight: 400;
  text-transform: uppercase;
}
#dealers label {
  text-transform: uppercase;
  font-weight: 700;
}
#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 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;
  }
}
@media print, screen and (min-width: 40em) {
  #dealers .right {
    text-align: right;
  }
}
#dealers #dealers-middle h2 {
  font-family: "DM Sans", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  text-align: center;
}
@media print, screen and (min-width: 64em) {
  #dealers #dealers-middle h2 {
    font-size: 1.9375rem;
  }
}
#dealers #dealers-middle h3 {
  text-transform: capitalize;
  font-size: 1.5rem;
  text-align: center;
}
#dealers #dealers-middle h4 {
  font-weight: 500;
  font-family: "DM Sans", sans-serif;
}

.vue-map {
  width: 100%;
  height: 100%;
}

.vue-map-container {
  height: 100%;
}

:root {
  --vt-c-white: #ffffff;
  --vt-c-white-soft: #f8f8f8;
  --vt-c-white-mute: #f2f2f2;
  --vt-c-black: #181818;
  --vt-c-black-soft: #222222;
  --vt-c-black-mute: #282828;
  --vt-c-indigo: #2c3e50;
  --vt-c-divider-light-1: rgba(60, 60, 60, .29);
  --vt-c-divider-light-2: rgba(60, 60, 60, .12);
  --vt-c-divider-dark-1: rgba(84, 84, 84, .65);
  --vt-c-divider-dark-2: rgba(84, 84, 84, .48);
  --vt-c-text-light-1: var(--vt-c-indigo);
  --vt-c-text-light-2: rgba(60, 60, 60, .66);
  --vt-c-text-dark-1: var(--vt-c-white);
  --vt-c-text-dark-2: rgba(235, 235, 235, .64) ;
}

:root {
  --color-background: var(--vt-c-white);
  --color-background-soft: var(--vt-c-white-soft);
  --color-background-mute: var(--vt-c-white-mute);
  --color-border: var(--vt-c-divider-light-2);
  --color-border-hover: var(--vt-c-divider-light-1);
  --color-heading: var(--vt-c-text-light-1);
  --color-text: var(--vt-c-text-light-1);
  --section-gap: 160px ;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-background: var(--vt-c-black);
    --color-background-soft: var(--vt-c-black-soft);
    --color-background-mute: var(--vt-c-black-mute);
    --color-border: var(--vt-c-divider-dark-2);
    --color-border-hover: var(--vt-c-divider-dark-1);
    --color-heading: var(--vt-c-text-dark-1);
    --color-text: var(--vt-c-text-dark-2) ;
  }
}
/*
*,*:before,*:after {
  box-sizing: border-box;
  margin: 0;
  position: relative;
  font-weight: 400
}

body {
  min-height: 100vh;
  color: var(--color-text);
  //background: var(--color-background);
  transition: color .5s,background-color .5s;
  line-height: 1.6;
  font-family: Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
  font-size: 15px;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
*/
:root {
  --white: #ffffff;
  --black: #000000;
  --whiteF4: #f4f4f4;
  --whiteF7: #f7f7f7;
  --grayC: #cccccc;
  --gray5: #555555;
  --gray6: #666666;
  --red: #c10031;
  --green: #43d034 ;
}

/*
body {
  background-color: var(--white);
  color: var(--black)
}
*/
#imapp-dealer-locator {
  color: var(--gray5);
}

#imapp-dealer-locator h1 {
  text-align: center;
  text-transform: uppercase;
}

#imapp-dealer-locator .dealer-locator {
  max-width: 90rem;
  margin: 0 auto;
}

#imapp-dealer-locator .dealer-locator-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  height: 94vh;
  padding: 1rem;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media (min-width: 64em) {
  #imapp-dealer-locator .dealer-locator-content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    height: auto;
    max-height: 460px;
    padding: 0;
  }
}
#imapp-dealer-locator .dealer-locator-content > div {
  margin-bottom: 1rem;
}

@media (min-width: 64em) {
  #imapp-dealer-locator .dealer-locator-content > div {
    padding-left: 1rem;
    padding-right: 1rem;
  }
}
#imapp-dealer-locator .dealer-locator-content > div:first-child {
  width: 100%;
  overflow: auto;
  border: 1px solid var(--grayC);
}

@media (min-width: 64em) {
  #imapp-dealer-locator .dealer-locator-content > div:first-child {
    width: 30%;
  }
}
#imapp-dealer-locator .dealer-locator-content > div:last-child {
  width: 100%;
  height: 400px;
}

@media (min-width: 64em) {
  #imapp-dealer-locator .dealer-locator-content > div:last-child {
    width: 70%;
    height: auto;
  }
}
#imapp-dealer-locator .dealer-locator i:before, #imapp-dealer-locator .dealer-locator i:after, #imapp-dealer-locator .dealer-locator i:before, #imapp-dealer-locator .dealer-locator i:after {
  font-weight: 900;
}

#imapp-dealer-locator .locator-left {
  background-color: var(--whiteF4);
  padding-top: 1rem;
  padding-left: 1rem;
  padding-right: 1rem;
}

#imapp-dealer-locator .location {
  border: 1px solid var(--grayC);
  padding: 1rem;
  background-color: var(--white);
  margin-bottom: 1rem;
}

#imapp-dealer-locator .location > div {
  margin-bottom: 0.5rem;
}

#imapp-dealer-locator .location .name {
  text-transform: uppercase;
  font-weight: 800;
}

#imapp-dealer-locator .isOpen {
  background-color: var(--whiteF7);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 10px;
  line-height: 1;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#imapp-dealer-locator .isOpen i {
  color: var(--green);
  margin-right: 0.5rem;
  font-size: 0.5rem;
}

#imapp-dealer-locator .w-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

#imapp-dealer-locator .w-icon .icon {
  margin-right: 0.5rem;
}

#imapp-dealer-locator .w-icon a {
  color: var(--gray5);
  text-decoration: none;
}

#imapp-dealer-locator .w-icon.website a {
  color: var(--red);
  text-decoration: underline;
}

#imapp-dealer-locator .vue-map {
  width: 100% !important;
  height: 100% !important;
}

#imapp-dealer-locator .vue-map-container {
  border: 1px solid var(--grayC);
}

#dealers.dealer-locator h3 {
  font-size: 1.25rem;
  text-align: center;
}
#dealers.dealer-locator .page-header p {
  max-width: none;
}
#dealers.dealer-locator .phone {
  color: #0a0a0a;
}
#dealers.dealer-locator .phone:hover {
  color: #d00204;
}
#dealers.dealer-locator #imapp-dealer-locator {
  height: 55vh;
}
@media print, screen and (min-width: 64em) {
  #dealers.dealer-locator #imapp-dealer-locator {
    height: 80vh;
  }
}
#dealers.dealer-locator #imapp-dealer-locator .dealer-locator-header {
  display: none;
}
#dealers.dealer-locator #imapp-dealer-locator .locator-left {
  display: none;
}
#dealers.dealer-locator #imapp-dealer-locator .dealer-locator-content > div:last-child {
  width: 100%;
  height: 50vh;
}
@media print, screen and (min-width: 64em) {
  #dealers.dealer-locator #imapp-dealer-locator .dealer-locator-content > div:last-child {
    height: 75vh;
  }
}
#dealers.dealer-locator #imapp-dealer-locator .locator-cta-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 1rem;
  text-align: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 40em) {
  #dealers.dealer-locator #imapp-dealer-locator .locator-cta-buttons {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
#dealers.dealer-locator #imapp-dealer-locator .locator-cta-buttons > a {
  border-radius: 10px;
  background-color: #d00204;
  color: #fefefe;
  font-weight: 600;
  text-transform: uppercase;
  padding: 0.5rem 0;
  width: 100%;
  font-size: 1rem;
  margin-bottom: 0.5rem;
}
@media print, screen and (min-width: 40em) {
  #dealers.dealer-locator #imapp-dealer-locator .locator-cta-buttons > a {
    padding: 0.75rem 0;
    margin-bottom: 0;
    max-width: 120px;
  }
}

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

#downloads .page-header .subtitle p {
  max-width: none;
}
#downloads .wheel-container .column, #downloads .wheel-container .columns, #downloads .logo-container .column, #downloads .logo-container .columns {
  margin-bottom: 1rem;
}
@media print, screen and (min-width: 64em) {
  #downloads .wheel-container .column, #downloads .wheel-container .columns, #downloads .logo-container .column, #downloads .logo-container .columns {
    margin-bottom: 2rem;
  }
}
#downloads .wheel-container .column a, #downloads .wheel-container .columns a, #downloads .logo-container .column a, #downloads .logo-container .columns a {
  display: inline-block;
  padding: 0 0.25rem;
}
@media print, screen and (min-width: 64em) {
  #downloads .wheel-container .column a, #downloads .wheel-container .columns a, #downloads .logo-container .column a, #downloads .logo-container .columns a {
    padding: 0 1rem;
  }
}
#downloads .wheel-container .column a img, #downloads .wheel-container .columns a img, #downloads .logo-container .column a img, #downloads .logo-container .columns a img {
  margin-bottom: 1rem;
}
#downloads .page-content .download-item {
  text-align: center;
  margin-bottom: 4rem;
}
#downloads .page-content .download-item h3 {
  font-weight: 400;
}
#downloads.downloads-collection .content-header {
  text-align: center;
  margin-bottom: 2rem;
}
#downloads.downloads-collection .content-header h2 {
  font-weight: 400;
}
#downloads.downloads-collection .downloads-section {
  padding: 2rem 0 4rem;
}
#downloads.downloads-collection .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.downloads-collection .button:hover {
  background-color: #d00204;
}
#downloads.downloads-collection .button span {
  margin-right: 0.25rem;
}
#downloads.downloads-collection .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-collection .return span {
  color: #d00204;
  margin-right: 0.5rem;
}
#downloads.downloads-collection .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-collection .downloads-section-brands .content-list .brand-item {
    padding: 2rem;
    margin-bottom: 2rem;
  }
}
#downloads.downloads-collection .downloads-section-brands .content-list .brand-item p {
  margin-bottom: 0;
}
#downloads.downloads-collection .downloads-section-brands .content-list .brand-item .logo, #downloads.downloads-collection .downloads-section-brands .content-list .brand-item .excerpt {
  margin-bottom: 1rem;
}
#downloads.downloads-collection .downloads-section-brands .content-list .brand-item .break {
  width: 100%;
  height: 1px;
  background-color: #e6e6e6;
  margin: 1rem 0;
}
#downloads.downloads-collection .downloads-section-assets .content-header {
  text-align: center;
}
#downloads.downloads-collection .downloads-section-assets .content-header .image {
  margin-bottom: 2rem;
}
#downloads.downloads-collection .downloads-section-assets .content-header img {
  max-height: 200px;
}
#downloads.downloads-collection .downloads-section-assets .content-list-assets {
  text-align: center;
}
#downloads.downloads-collection .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-collection .downloads-section-assets .content-list-assets a {
    margin-bottom: 2rem;
  }
}
#downloads.downloads-collection .downloads-section-assets .content-list-assets .wheel-name {
  font-weight: 600;
}
#downloads.downloads-collection .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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
  font-weight: 600;
  margin-top: 1.5rem;
  margin-bottom: 2rem;
}
.fitmentCheck__btn {
  background-color: #d00204;
  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: #d00204;
}
@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: "DM Sans", 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: #d00204;
}
.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: "DM Sans", sans-serif;
}
@media print, screen and (max-width: 63.99875em) {
  .user-options > div a {
    font-weight: 500;
  }
}
.user-options > div a:hover {
  color: #d00204;
}
.user-options > div a:hover i {
  color: #d00204;
}
.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: "DM Sans", 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: #d00204;
}
@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: #d00204;
}
#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: #d00204;
}
@media print, screen and (max-width: 63.99875em) {
  #inventory .inventory-purchase {
    margin-top: 0.5rem;
  }
}
#inventory .inventory-purchase > button {
  background-color: #d00204;
  font-family: "DM Sans", 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: #d00204;
}
#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: #d00204;
}
#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: #d00204;
}
#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: #d00204;
}

#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: "DM Sans", 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: #d00204;
}
#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: #d00204;
  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: #d00204;
  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: #d00204;
}
.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 #d00204;
}
.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: #d00204;
}
@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: #d00204;
}
#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: #d00204;
  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: #d00204;
  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: #d00204;
  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: #d00204;
}
#inventory .options-bar-view button.active-view i {
  color: #d00204;
}
#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: #d00204;
}
#inventory .accordion-title, .inventory-head .accordion-title {
  font-family: "Montserrat", "Roboto Condensed", "Helvetica Neue", Helvetica, Arial, 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: #d00204;
  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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLmNzcyIsInN0eWxlLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3VuZGF0aW9uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19icmVha3BvaW50LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL19nbG9iYWwuc2NzcyIsIl9zZXR0aW5ncy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fbGFiZWwuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2ZpZWxkc2V0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2Jhc2Uuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19hbGlnbm1lbnQuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jbGFzc2VzLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19yb3cuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fY29sdW1uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19zaXplLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fbGF5b3V0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19idXR0b24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2xvc2UtYnV0dG9uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19sYWJlbC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zbGlkZXIuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N3aXRjaC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2JhZGdlLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FyZC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJvcGRvd24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Rvb2x0aXAuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGh1bWJuYWlsLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi1tZW51LnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19kcmlsbGRvd24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29mZi1jYW52YXMuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3N0aWNreS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19mbG9hdC5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdmlzaWJpbGl0eS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy9fY2xhc3Nlcy5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2tleWZyYW1lLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2ZhZGUuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9faGluZ2Uuc2NzcyIsIlVzZXJzL2RvbmFsZGljb25tZWRpYS9EZXNrdG9wL2Rldi92ZWxsYW5vd2hlZWxzLmNvbS9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fem9vbS5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3RyYW5zaXRpb25zL19zcGluLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdXRpbC9fYW5pbWF0aW9uLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLXRoZW1lLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL3NsaWNrLWNhcm91c2VsL3NsaWNrL3NsaWNrLnNjc3MiLCJVc2Vycy9kb25hbGRpY29ubWVkaWEvRGVza3RvcC9kZXYvdmVsbGFub3doZWVscy5jb20vbm9kZV9tb2R1bGVzL21hZ25pZmljLXBvcHVwL3NyYy9jc3MvbWFpbi5zY3NzIiwiVXNlcnMvZG9uYWxkaWNvbm1lZGlhL0Rlc2t0b3AvZGV2L3ZlbGxhbm93aGVlbHMuY29tL25vZGVfbW9kdWxlcy9tYWduaWZpYy1wb3B1cC9zcmMvY3NzL19zZXR0aW5ncy5zY3NzIiwiX2dlbmVyYWwuc2NzcyIsIl91dGlsaXR5LnNjc3MiLCJfaGVhZGVyLnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJob21lL19zZWN0aW9ucy5zY3NzIiwiaG9tZS9faGVyby5zY3NzIiwiaG9tZS9fZXhwbG9yZS5zY3NzIiwiaG9tZS9fcGVuY2lsLnNjc3MiLCJob21lL193aGVlbHMuc2NzcyIsImhvbWUvX3Nlcmllcy5zY3NzIiwiaG9tZS9fdGlyZXMtYWNjZXNzb3JpZXMuc2NzcyIsImhvbWUvX2N0YS5zY3NzIiwiaG9tZS9fZGVhbGVycy5zY3NzIiwiaG9tZS9fYWJvdXQuc2NzcyIsImhvbWUvX2luc3RhZ3JhbS5zY3NzIiwiaG9tZS9fZ2FsbGVyeS5zY3NzIiwiX2ZpbHRlcnMuc2NzcyIsIl92ZWhpY2xlLWJhci5zY3NzIiwiX25hdi1zZWFyY2guc2NzcyIsIndoZWVsL193aGVlbHMuc2NzcyIsIndoZWVsL193aGVlbC5zY3NzIiwid2hlZWwvX3N0YWdlLnNjc3MiLCJ3aGVlbC9fc3BlY3Muc2NzcyIsIndoZWVsL19pbmZvLnNjc3MiLCJ3aGVlbC9fY3RhLnNjc3MiLCJ3aGVlbC9fZGV0YWlscy1tZWRpYS5zY3NzIiwid2hlZWwvX3ZpZXctb24tdmVoaWNsZS5zY3NzIiwid2hlZWwvX3ZpZXctb24tdmVoaWNsZS1wb3B1cC5zY3NzIiwid2hlZWwvX3ZlaGljbGUtZ2FsbGVyeS5zY3NzIiwid2hlZWwvX3NwZWMtdGFicy5zY3NzIiwid2hlZWwvX2ZpbmlzaGVzLnNjc3MiLCJ3aGVlbC9fZ2FsbGVyeS5zY3NzIiwid2hlZWwvX25hdmlnYXRpb24uc2NzcyIsIndoZWVsL190aXRsZS5zY3NzIiwid2hlZWwvX2NhcnQuc2NzcyIsImVsaXRlLWZsb3cvX2ZpbHRlcnMuc2NzcyIsImVsaXRlLWZsb3cvX2xpc3Rpbmcuc2NzcyIsImVsaXRlLWZsb3cvX2RldGFpbC5zY3NzIiwiZWxpdGUtZmxvdy9fZml0bWVudC5zY3NzIiwiZWxpdGUtZmxvdy9fdmlldy1vbi12ZWhpY2xlLnNjc3MiLCJ3aGVlbC9maXRtZW50L19maWx0ZXIuc2NzcyIsIndoZWVsL2ZpdG1lbnQvX2luZm8uc2NzcyIsIndoZWVsL2ZpdG1lbnQvX3NwZWNzLnNjc3MiLCJ3aGVlbC9maXRtZW50L19zdGFnZS5zY3NzIiwid2hlZWwvZml0bWVudC9fd2hlZWxzLnNjc3MiLCJ0aXJlL190aXJlLnNjc3MiLCJ0aXJlL19pbmZvLnNjc3MiLCJ0aXJlL19jdGEuc2NzcyIsInRpcmUvX3NwZWNzLnNjc3MiLCJ0aXJlL190aXJlcy5zY3NzIiwiYWNjZXNzb3J5L19hY2Nlc3Nvcmllcy5zY3NzIiwiYWNjZXNzb3J5L19hY2Nlc3Nvcnkuc2NzcyIsImFjY2Vzc29yeS9fY3RhLnNjc3MiLCJhY2Nlc3NvcnkvX2Jhci5zY3NzIiwiZ2FsbGVyeS9fZmlsdGVyLnNjc3MiLCJnYWxsZXJ5L19sYW5kaW5nLnNjc3MiLCJnYWxsZXJ5L19kZXRhaWwuc2NzcyIsImNvbnRlbnQvX2NvbnRhY3Quc2NzcyIsImNvbnRlbnQvX3BhZ2Uuc2NzcyIsImNvbnRlbnQvX25ld3Muc2NzcyIsImNvbnRlbnQvX2Fib3V0LnNjc3MiLCJjb250ZW50L19kZWFsZXJzLnNjc3MiLCJjb250ZW50L19kZWFsZXItbG9jYXRvci5zY3NzIiwiY29udGVudC9fZml0bWVudC5zY3NzIiwiY29udGVudC9fZXJyb3Iuc2NzcyIsImNvbnRlbnQvX2Rvd25sb2Fkcy5zY3NzIiwicG9wdXBzL19wYWNrYWdlLnNjc3MiLCJwb3B1cHMvX2FjY2Vzc29yeS5zY3NzIiwicG9wdXBzL19nYWxsZXJ5LXF1b3RlLnNjc3MiLCJwb3B1cHMvX2ZpdG1lbnQtY2hlY2suc2NzcyIsInV0aWxpdHkvX2ZveHljYXJ0LnNjc3MiLCJvdmVycmlkZXMvX3NuaXBjYXJ0LnNjc3MiLCJpbnZlbnRvcnkvX2hlYWRlci5zY3NzIiwiaW52ZW50b3J5L19mb290ZXIuc2NzcyIsImludmVudG9yeS9faW52ZW50b3J5LnNjc3MiLCJpbnZlbnRvcnkvX2xvZ2luLnNjc3MiLCJpbnZlbnRvcnkvX29yZGVycy5zY3NzIiwiaW52ZW50b3J5L19jYXJ0LnNjc3MiLCJpbnZlbnRvcnkvX2ZpbHRlci5zY3NzIiwiaW52ZW50b3J5L190aGFua3Muc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxnQkFBZ0I7QUNBaEI7Ozs7Q0FBQTtBQ0FBOzs7OztFQUFBO0FDbUxRO0VDdElOO0lBQ0UsV0FBQTtJQUNBLFVBQUE7SUFDQSxjQUFBO0VKL0JGO0FBQ0Y7QUtm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UzlLRTs7RUFFRSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUF2Q0YsY0FBQTtFQUNBLDhCQUFBO1VBQUEsc0JBQUE7RUFDQSxXQUFBO0VBQ0EsaUJBTFM7RUFNVCxnQkFBQTtFQUNBLGVBdENjO0VBd0NkLHlCRjhSYTtFRTdSYixnQkZ4QmM7RUV5QmQseUJGbENNO0VFbUNOLHlERjZSYTtVRTdSYixpREY2UmE7RUUzUmIsb0JGbVJrQjtFRWxSbEIsZUZtUmdCO0VFbFJoQixtQkZoQ3FCO0VFaUNyQixnQkZwRGtCO0VFcURsQixjRjFDTTtFRTZDSiwyRUZ1UmU7RUV2UmYsbUVGdVJlO0VFdlJmLDJERnVSZTtFRXZSZixvRkZ1UmU7QVBsRW5CO0FTak5FOztFQUNFLGFBQUE7RUFDQSx5QkY2UWlCO0VFNVFqQix5QkZuREk7RUVvREosbUNGNlFpQjtVRTdRakIsMkJGNlFpQjtFRTFRZiwyRUY0UWE7RUU1UWIsbUVGNFFhO0VFNVFiLDJERjRRYTtFRTVRYixvRkY0UWE7QVAxRG5COztBU3BNRTtFQUNFLGVBQUE7QVR1TUo7QVNyTUk7RUFDRSxZQUFBO0FUdU1OOztBU2hNSTs7O0VBRUUseUJGdEZPO0VFdUZQLG1CRitPa0I7QVAzQ3hCOztBUy9MRTs7RUFFRSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSxnQkZsRlk7QVBvUmhCOztBUzlMRTtFQUNFLDhCQUFBO1VBQUEsc0JBQUE7QVRpTUo7O0FTaExFO0VBQ0UsY0ZySFU7QVB3U2Q7O0FTcExFO0VBQ0UsY0ZySFU7QVB3U2Q7O0FTcExFO0VBQ0UsY0ZySFU7QVB3U2Q7O0FTcExFO0VBQ0UsY0ZySFU7QVB3U2Q7O0FTcExFO0VBQ0UsY0ZySFU7QVB3U2Q7O0FVMVZFOzs7RUFHRSxnQkFBQTtBVjZWSjs7QVV6VkU7O0VBRUUscUJBQUE7RUFDQSx3QkFBQTtFQUVBLG1CQUFBO0VBQ0Esa0JIK1VXO0VHOVVYLGdCQUFBO0FWMlZKO0FVelZJOztFQUNFLGVBQUE7QVY0Vk47O0FVdlZFOztFQUVFLG9CQUFBO0FWMFZKOztBVXRWRTtFQUNFLFdBQUE7QVZ5Vko7O0FXcFZFO0VBbEJBLGNBQUE7RUFDQSxTQUFBO0VBRUEsbUJKa1ZxQjtFSWpWckIsbUJKd0NxQjtFSXZDckIsZ0JKa1Z1QjtFSWpWdkIsY0o4Qk07QVAyVVI7QVcxVkk7RUFURixnQkFBQTtFQUNBLGdCSllrQjtFSVhsQixvQkFBQTtBWHNXRjs7QVl4WEU7RUFHRSxtQkFGYTtFQUdiLG9CTDhVaUI7RUs3VWpCLGtCTDhVa0I7RUs3VWxCLGNMa0NJO0FQdVZSOztBYTFYRTtFQUNFLGNBQUE7RUFDQSxXQUFBO0VBQ0EsbUJOd1VXO0FQcURmO0FhdFhNO0VBQ0Usc0JBQUE7QWJ3WFI7QWFuWE07RUFDRSxzQkFBQTtBYnFYUjs7QWFoWEU7Ozs7RUFDRSxTQUFBO0VBQ0EsbUJBQUE7RUFHRSxtQkFBQTtFQUNBLHNCQUFBO0Fib1hOOztBYWhYRTtFQUVFLGVBQUE7RUFDQSx5Qk44U2tCO0VNN1NsQixtQk5KUztFTU1ULGNOSEk7RU1JSixrQkFBQTtFQUNBLG1CQUFBO0VBUUUsU0FBQTtFQUNBLFlBQUE7QWIwV047QWF0V007RUFDRSxlQUFBO0Fid1dSO0FhcldNO0VBQ0UsY0FBQTtBYnVXUjs7QWFsV0U7RUFFRSxnQkFBQTtBYm9XSjs7QWE1VkU7RUFFRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQU9FLFNBQUE7RUFDQSxZQUFBO0Fid1ZOO0FhclZJOzs7O0VBV0ksaUJBckdHO0VBdUdMLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGVOc1BZO0FQeUZsQjs7QWF4VU07RUFDRSxtQkFBQTtBYjJVUjs7QWM5YUU7RUFDRSxTQUFBO0VBQ0EsVUFBQTtFQUNBLFNBQUE7QWRpYko7O0FjOWFFO0VBQ0UsZUFBQTtFQUNBLHFCQUFBO0FkaWJKOztBYzlhRTtFQXhCQSxrQlAwVWdCO0VPelVoQixnQlB3VWlCO0VPdlVqQix5QlBzVWdCO0FQb0lsQjtBY3hjRTtFQUVFLFNBQUE7RUFDQSx1QkFBQTtFQUNBLG9CUG1VYTtBUHNJakI7O0FlblpFO0VBaEVBLGlCQUZTO0VBR1QsZ0JBQUE7RUFDQSxlTjZCYztFTTNCZCx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSx5QlJnV2E7RVEvVmIsZ0JSMENjO0VRekNkLHlCUmdDTTtFUTlCTixvQlJzVmtCO0VRclZsQixlUnNWZ0I7RVFyVmhCLG1CUm1DcUI7RVFsQ3JCLGdCUmVrQjtFUWRsQixjUnlCTTtFUXRCSiwyRVIwVmU7RVExVmYsbUVSMFZlO0VRMVZmLDJEUjBWZTtFUTFWZixvRlIwVmU7RVF0VmYsOEJBQUE7RUFDQSx1Q0FBQTtFQUNBLDRCQUFBO0VBQ0Esd0JBQUE7RUFFQSxxQkFBQTtFUDJHRix3T0FBQTtBUnFXRjtBUW5XRTtFT3RFQTtJUHlFSSx1V0FBQTtFUm9XSjtBQUNGO0FlL2NFO0VBQ0UsYUFBQTtFQUNBLHlCUnFVaUI7RVFwVWpCLHlCUktJO0VRSkosbUNScVVpQjtVUXJVakIsMkJScVVpQjtFUWxVZiwyRVJvVWE7RVFwVWIsbUVSb1VhO0VRcFViLDJEUm9VYTtFUXBVYixvRlJvVWE7QVAySW5CO0FlMWNFO0VBQ0UseUJSVFM7RVFVVCxtQlI0VG9CO0FQZ0p4QjtBZXhjRTtFQUNFLGFBQUE7QWYwY0o7QWV2Y0U7RUFDRSxZQUFBO0VBQ0Esc0JBQUE7QWZ5Y0o7QWV2Y0U7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QWZ5Y0o7O0FnQi9lRTtFQUNFLHFCVGdKdUI7RVMvSXZCLHdDQUFBO0FoQmtmSjtBZ0JoZkk7RUFDRSxjVDRJcUI7QVBzVzNCO0FnQm5mSTtFQUNFLGNUNElxQjtBUHNXM0I7QWdCbmZJO0VBQ0UsY1Q0SXFCO0FQc1czQjtBZ0JuZkk7RUFDRSxjVDRJcUI7QVBzVzNCO0FnQm5mSTtFQUNFLGNUNElxQjtBUHNXM0I7O0FnQnhkSTtFQUNFLGNUa0hxQjtBUHlXM0I7O0FnQnRkRTtFQXpCQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQlQyU2E7RVN6U2Isa0JUb0lzQjtFU25JdEIsaUJUU21CO0VTUm5CLGNUaUlrQjtBUGlYcEI7QWdCNWRJO0VBQ0UsY0FBQTtBaEI4ZE47O0FpQmhWRTs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQW1CRSxTQUFBO0VBQ0EsVUFBQTtBakJtVko7O0FpQi9VRTtFQUNFLG1CVnJIc0I7RVV1SHRCLGtCQUFBO0VBQ0EsZ0JWekhtQjtFVTBIbkIsa0NWeEh1QjtBUHljM0I7O0FpQjdVRTs7RUFFRSxrQkFBQTtFQUNBLG9CQUFBO0FqQmdWSjs7QWlCNVVFOztFQUVFLGlCVnZNaUI7RVV3TWpCLG9CQUFBO0FqQitVSjs7QWlCM1VFO0VBQ0UsY1YvSWM7RVVnSmQsb0JBQUE7QWpCOFVKOztBaUIxVUU7Ozs7OztFQU1FLG1FVjdOZTtFVThOZixrQlZuTGdCO0VVb0xoQixtQlYzTm1CO0VVNE5uQixjVm5MVztFVW9MWCxrQ1YvSm9CO0FQNGV4QjtBaUIzVUk7Ozs7OztFQUNFLGNBQUE7RUFDQSxjVjNPUTtBUDZqQmQ7O0FpQnpVUTtFQUlJLGlCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakJpVFo7O0FpQmhWUTtFQUlJLGtCQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakJ3VFo7O0FpQnZWUTtFQUlJLG9CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakIrVFo7O0FpQjlWUTtFQUlJLG1CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakJzVVo7O0FpQnJXUTtFQUlJLG9CQURpQjtFQWFqQixnQkFBQTtFQVFBLGFBQUE7RUFPQSxxQkFBQTtBakI2VVo7O0FpQjVXUTtFQUlJLGVBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQm9WWjs7QUcvZVE7RWM0SEE7SUFJSSxlQURpQjtFakJxWDNCO0VpQnhYTTtJQUlJLGlCQURpQjtFakJ3WDNCO0VpQjNYTTtJQUlJLG9CQURpQjtFakIyWDNCO0VpQjlYTTtJQUlJLG9CQURpQjtFakI4WDNCO0VpQmpZTTtJQUlJLGtCQURpQjtFakJpWTNCO0VpQnBZTTtJQUlJLGVBRGlCO0VqQm9ZM0I7QUFDRjtBaUJqV0U7RUFDRSxvQkFBQTtFQUNBLGNDMU5nQjtFRDJOaEIscUJWeE1xQjtFVTBNckIsZUFBQTtBakJrV0o7QWlCaFdJO0VBRUUsaUNWL01lO0FQZ2pCckI7QWlCM1ZJO0VBQ0UsU0FBQTtBakI2Vk47O0FpQnhWRTtFQUNFLFdBQUE7RUFFQSxnQlY3VFc7RVU4VFgsU0FBQTtFQUNBLG9CVjNOUTtFVTZOUixhQUFBO0VBQ0EsZUFBQTtFQUNBLGdDVmhPUTtFVWlPUixjQUFBO0FqQnlWSjs7QWlCclZFOzs7RUFHRSxtQlZyUHNCO0VVc1B0Qiw0QlZwT2tCO0VVcU9sQixnQlZ4UG1CO0FQZ2xCdkI7O0FpQnBWRTtFQUNFLGtCQUFBO0FqQnVWSjs7QWlCblZFO0VBQ0Usb0JWOU9lO0VVK09mLHFCVmpQYztBUHVrQmxCOztBaUJsVkU7RUFDRSxvQlZwUGU7QVB5a0JuQjs7QWlCaFZJO0VBQ0Usb0JWelBvQjtFVTBQcEIsZ0JBQUE7QWpCbVZOOztBaUI5VUU7RUFDRSxtQlYvUHFCO0FQZ2xCekI7QWlCL1VJO0VBQ0UscUJWaFF3QjtFVWlReEIsaUJWelZlO0FQMHFCckI7O0FpQjVVRTtFQUNFLGdCQUFBO0VBQ0Esc0NWdFFpQjtFVXVRakIsOEJWdFFnQjtBUHFsQnBCO0FpQjdVSTtFQUNFLGdCVnBTaUI7RVVxU2pCLGNWL1dNO0FQOHJCWjs7QWlCalVFO0VBQ0UsaUNWaFJhO0VVaVJiLFlBQUE7RUFDQSxxQkFBQTtBakJvVUo7O0FpQmhVRTtFQUNFLFNBQUE7QWpCbVVKOztBaUJ4VEU7RUFDRSxTQUFBO0VBQ0EsMkJWdFNnQjtFVXdTaEIseUJWdFpTO0VVd1pULDREVnJXb0I7RVVzV3BCLGNWdFpJO0FQK3NCUjs7QW1Cdm9CRTtFQUNFLGtCWjhDbUI7RVk3Q25CLHFCWjhDc0I7RVk1Q3RCLG1CWnBFbUI7RVlxRW5CLGdCWnVDbUI7RVl0Q25CLGNaL0VRO0FQd3RCWjs7QW1Ccm9CRTtFQUNFLGVaK0JhO0VZOUJiLGdCWitCYztBUHltQmxCOztBbUJwb0JFO0VBQ0UsaUJaZ0NhO0VZL0JiLGNBQUE7QW5CdW9CSjtBbUJyb0JJO0VBQ0UsaUJBQUE7QW5CdW9C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N0JJO0VDaURGLGVBSFM7QXZCaTVCWDtBc0I1N0JNO0VBQ0Usa0JBQUE7RUFDQSxpQkFBQTtBdEI4N0JSO0FzQjE3Qkk7RUN3Q0YsZUFIUztBdkJ3NUJYO0FzQnA3QlU7RUU1Q04sdUJBRlU7RUFHVixzQkFIVTtBeEJzK0JkO0FzQng3QlU7RUU1Q04sd0JBRlU7RUFHVix1QkFIVTtBeEIwK0JkOztBc0JuN0JFO0VHOUNBLFduQmlHWTtFb0JoSFosV0FBQTtFRlFFLHVCQUZVO0VBR1Ysc0JBSFU7QXhCaS9CZDtBR2wxQlE7RW1CeEdOO0lFckRFLHdCQUZVO0lBR1YsdUJBSFU7RXhCcy9CWjtBQUNGO0EyQngvQkk7RUFDRSxXckIwR1E7RXFCekdSLFdBQUE7QTNCMC9CTjtBMkJyL0JNO0VBQ0UsWXJCb0dPO0FObTVCZjtBMkIxOEJFO0VBQ0UsV3JCcURVO0FOdTVCZDs7QXNCOTdCRTtFQUNFLFdBQUE7QXRCaThCSjs7QXNCNzdCRTtFQUNFLGVBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0F0Qmc4Qko7O0FzQjE3Qk07RUl4Rkosb0JBQUE7QTFCc2hDRjs7QXNCdjdCVTtFS3pFTixrQkFBQTtFQUNBLG1CQUhTO0EzQnVnQ2I7O0FzQnQ3QlU7RUsvRU4sa0JBQUE7RUFDQSxvQkFIUztBM0I0Z0NiOztBc0JqN0JRO0VLM0ROLGVBQUE7QTNCZy9CRjs7QXNCNThCTTtFSXhGSixxQkFBQTtBMUJ3aUNGOztBc0J6OEJVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCeWhDYjs7QXNCeDhCVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjhoQ2I7O0FzQm44QlE7RUszRE4sMEJBQUE7QTNCa2dDRjs7QXNCOTlCTTtFSXhGSixVQUFBO0ExQjBqQ0Y7O0FzQjM5QlU7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQjJpQ2I7O0FzQjE5QlU7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQmdqQ2I7O0FzQnI5QlE7RUszRE4sMkJBQUE7QTNCb2hDRjs7QXNCaC9CTTtFSXhGSixxQkFBQTtBMUI0a0NGOztBc0I3K0JVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCNmpDYjs7QXNCNStCVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQmtrQ2I7O0FzQnYrQlE7RUszRE4sZ0JBQUE7QTNCc2lDRjs7QXNCbGdDTTtFSXhGSixxQkFBQTtBMUI4bENGOztBc0IvL0JVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCK2tDYjs7QXNCOS9CVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQm9sQ2I7O0FzQnovQlE7RUszRE4sMkJBQUE7QTNCd2pDRjs7QXNCcGhDTTtFSXhGSixVQUFBO0ExQmduQ0Y7O0FzQmpoQ1U7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQmltQ2I7O0FzQmhoQ1U7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQnNtQ2I7O0FzQjNnQ1E7RUszRE4sMkJBQUE7QTNCMGtDRjs7QXNCdGlDTTtFSXhGSixxQkFBQTtBMUJrb0NGOztBc0JuaUNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCbW5DYjs7QXNCbGlDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQnduQ2I7O0FzQjdoQ1E7RUszRE4sZ0JBQUE7QTNCNGxDRjs7QXNCeGpDTTtFSXhGSixxQkFBQTtBMUJvcENGOztBc0JyakNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCcW9DYjs7QXNCcGpDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjBvQ2I7O0FzQi9pQ1E7RUszRE4sMkJBQUE7QTNCOG1DRjs7QXNCMWtDTTtFSXhGSixVQUFBO0ExQnNxQ0Y7O0FzQnZrQ1U7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQnVwQ2I7O0FzQnRrQ1U7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQjRwQ2I7O0FzQmprQ1E7RUszRE4sMkJBQUE7QTNCZ29DRjs7QXNCNWxDTTtFSXhGSixxQkFBQTtBMUJ3ckNGOztBc0J6bENVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCeXFDYjs7QXNCeGxDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjhxQ2I7O0FzQm5sQ1E7RUszRE4sZ0JBQUE7QTNCa3BDRjs7QXNCOW1DTTtFSXhGSixxQkFBQTtBMUIwc0NGOztBc0IzbUNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCMnJDYjs7QXNCMW1DVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQmdzQ2I7O0FzQnJtQ1E7RUszRE4sMkJBQUE7QTNCb3FDRjs7QXNCaG9DTTtFSXhGSixXQUFBO0ExQjR0Q0Y7O0FzQjdtQ1E7RUszRE4sMkJBQUE7QTNCNHFDRjs7QTRCenRDRTtFQUNFLFd0QndHVTtFc0J2R1YsV0FBQTtBNUI0dENKO0E0QnRzQ0k7RUFDRSxXQUFBO0E1QndzQ047QTRCcnNDSTtFQUNFLFdBQUE7QTVCdXNDTjtBNEJwc0NJO0VBQ0UsV3RCd0VRO0FOOG5DZDs7QTRCdnVDRTtFQUNFLFd0QndHVTtFc0J2R1YsVUFBQTtBNUIwdUNKO0E0QnB0Q0k7RUFDRSxXQUFBO0E1QnN0Q047QTRCbnRDSTtFQUNFLFdBQUE7QTVCcXRDTjtBNEJsdENJO0VBQ0UsV3RCd0VRO0FONG9DZDs7QTRCcnZDRTtFQUNFLFd0QndHVTtFc0J2R1YscUJBQUE7QTVCd3ZDSjtBNEJsdUNJO0VBQ0UsV0FBQTtBNUJvdUNOO0E0Qmp1Q0k7RUFDRSxXQUFBO0E1Qm11Q047QTRCaHVDSTtFQUNFLFd0QndFUTtBTjBwQ2Q7O0E0Qm53Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLFVBQUE7QTVCc3dDSjtBNEJodkNJO0VBQ0UsV0FBQTtBNUJrdkNOO0E0Qi91Q0k7RUFDRSxXQUFBO0E1Qml2Q047QTRCOXVDSTtFQUNFLFd0QndFUTtBTndxQ2Q7O0E0Qmp4Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLFVBQUE7QTVCb3hDSjtBNEI5dkNJO0VBQ0UsV0FBQTtBNUJnd0NOO0E0Qjd2Q0k7RUFDRSxXQUFBO0E1Qit2Q047QTRCNXZDSTtFQUNFLFd0QndFUTtBTnNyQ2Q7O0E0Qi94Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLHFCQUFBO0E1Qmt5Q0o7QTRCNXdDSTtFQUNFLFdBQUE7QTVCOHdDTjtBNEIzd0NJO0VBQ0UsV0FBQTtBNUI2d0NOO0E0QjF3Q0k7RUFDRSxXdEJ3RVE7QU5vc0NkOztBNEI3eUNFO0VBQ0UsV3RCd0dVO0VzQnZHVixxQkFBQTtBNUJnekNKO0E0QjF4Q0k7RUFDRSxXQUFBO0E1QjR4Q047QTRCenhDSTtFQUNFLFdBQUE7QTVCMnhDTjtBNEJ4eENJO0VBQ0UsV3RCd0VRO0FOa3RDZDs7QTRCM3pDRTtFQUNFLFd0QndHVTtFc0J2R1YsWUFBQTtBNUI4ekNKO0E0Qnh5Q0k7RUFDRSxXQUFBO0E1QjB5Q047QTRCdnlDSTtFQUNFLFdBQUE7QTVCeXlDTjtBNEJ0eUNJO0VBQ0UsV3RCd0VRO0FOZ3VDZDs7QXNCbHRDTTtFRXRIRixnQkFGVTtFQUdWLGVBSFU7QXhCKzBDZDtBc0JydENNO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QXRCdXRDUjs7QXNCbnRDSTtFQUNFLGVBQUE7RUFDQSxjQUFBO0F0QnN0Q047O0FzQmx0Q007RUVwSUYsdUJBRlU7RUFHVixzQkFIVTtBeEI2MUNkOztBc0JsdENNO0VLckhGLGlCQUFBO0VBQ0Esa0JBQUE7QTNCMjBDSjtBMkIxMENJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7QTNCNDBDTjs7QXNCL3NDTTtFS2xISixnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0EzQnEwQ0Y7QTJCNzJDSTtFQUNFLFdyQjBHUTtFcUJ6R1IsV0FBQTtBM0IrMkNOO0EyQjEyQ007RUFDRSxZckJvR087QU53d0NmOztBR3B0Q1E7RW1CN0VGO0lJeEZKLG9CQUFBO0UxQjgzQ0E7RXNCL3hDUTtJS3pFTixrQkFBQTtJQUNBLG1CQUhTO0UzQjgyQ1g7RXNCN3hDUTtJSy9FTixrQkFBQTtJQUNBLG9CQUhTO0UzQmszQ1g7RXNCdnhDTTtJSzNETixlQUFBO0UzQnExQ0E7RXNCanpDSTtJSXhGSixxQkFBQTtFMUI0NENBO0VzQjd5Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0I0M0NYO0VzQjN5Q1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0JnNENYO0VzQnJ5Q007SUszRE4sMEJBQUE7RTNCbTJDQTtFc0IvekNJO0lJeEZKLFVBQUE7RTFCMDVDQTtFc0IzekNRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0IwNENYO0VzQnp6Q1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQjg0Q1g7RXNCbnpDTTtJSzNETiwyQkFBQTtFM0JpM0NBO0VzQjcwQ0k7SUl4RkoscUJBQUE7RTFCdzZDQTtFc0J6MENRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCdzVDWDtFc0J2MENRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCNDVDWDtFc0JqMENNO0lLM0ROLGdCQUFBO0UzQiszQ0E7RXNCMzFDSTtJSXhGSixxQkFBQTtFMUJzN0NBO0VzQnYxQ1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0JzNkNYO0VzQnIxQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0IwNkNYO0VzQi8wQ007SUszRE4sMkJBQUE7RTNCNjRDQTtFc0J6MkNJO0lJeEZKLFVBQUE7RTFCbzhDQTtFc0JyMkNRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0JvN0NYO0VzQm4yQ1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQnc3Q1g7RXNCNzFDTTtJSzNETiwyQkFBQTtFM0IyNUNBO0VzQnYzQ0k7SUl4RkoscUJBQUE7RTFCazlDQTtFc0JuM0NRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCazhDWDtFc0JqM0NRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCczhDWDtFc0IzMkNNO0lLM0ROLGdCQUFBO0UzQnk2Q0E7RXNCcjRDSTtJSXhGSixxQkFBQTtFMUJnK0NBO0VzQmo0Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0JnOUNYO0VzQi8zQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0JvOUNYO0VzQnozQ007SUszRE4sMkJBQUE7RTNCdTdDQTtFc0JuNUNJO0lJeEZKLFVBQUE7RTFCOCtDQTtFc0IvNENRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0I4OUNYO0VzQjc0Q1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQmsrQ1g7RXNCdjRDTTtJSzNETiwyQkFBQTtFM0JxOENBO0VzQmo2Q0k7SUl4RkoscUJBQUE7RTFCNC9DQTtFc0I3NUNRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCNCtDWDtFc0IzNUNRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCZy9DWDtFc0JyNUNNO0lLM0ROLGdCQUFBO0UzQm05Q0E7RXNCLzZDSTtJSXhGSixxQkFBQTtFMUIwZ0RBO0VzQjM2Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0IwL0NYO0VzQno2Q1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0I4L0NYO0VzQm42Q007SUszRE4sMkJBQUE7RTNCaStDQTtFc0I3N0NJO0lJeEZKLFdBQUE7RTFCd2hEQTtFc0J6NkNNO0lLM0ROLDJCQUFBO0UzQnUrQ0E7RTRCcGhEQTtJQUNFLFd0QndHVTtJc0J2R1YsV0FBQTtFNUJzaERGO0U0QmhnREU7SUFDRSxXQUFBO0U1QmtnREo7RTRCLy9DRTtJQUNFLFdBQUE7RTVCaWdESjtFNEI5L0NFO0lBQ0UsV3RCd0VRO0VOdzdDWjtFNEJqaURBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1Qm1pREY7RTRCN2dERTtJQUNFLFdBQUE7RTVCK2dESjtFNEI1Z0RFO0lBQ0UsV0FBQTtFNUI4Z0RKO0U0QjNnREU7SUFDRSxXdEJ3RVE7RU5xOENaO0U0QjlpREE7SUFDRSxXdEJ3R1U7SXNCdkdWLHFCQUFBO0U1QmdqREY7RTRCMWhERTtJQUNFLFdBQUE7RTVCNGhESjtFNEJ6aERFO0lBQ0UsV0FBQTtFNUIyaERKO0U0QnhoREU7SUFDRSxXdEJ3RVE7RU5rOUNaO0U0QjNqREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCNmpERjtFNEJ2aURFO0lBQ0UsV0FBQTtFNUJ5aURKO0U0QnRpREU7SUFDRSxXQUFBO0U1QndpREo7RTRCcmlERTtJQUNFLFd0QndFUTtFTis5Q1o7RTRCeGtEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUIwa0RGO0U0QnBqREU7SUFDRSxXQUFBO0U1QnNqREo7RTRCbmpERTtJQUNFLFdBQUE7RTVCcWpESjtFNEJsakRFO0lBQ0UsV3RCd0VRO0VONCtDWjtFNEJybERBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJ1bERGO0U0QmprREU7SUFDRSxXQUFBO0U1Qm1rREo7RTRCaGtERTtJQUNFLFdBQUE7RTVCa2tESjtFNEIvakRFO0lBQ0UsV3RCd0VRO0VOeS9DWjtFNEJsbURBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJvbURGO0U0QjlrREU7SUFDRSxXQUFBO0U1QmdsREo7RTRCN2tERTtJQUNFLFdBQUE7RTVCK2tESjtFNEI1a0RFO0lBQ0UsV3RCd0VRO0VOc2dEWjtFNEIvbURBO0lBQ0UsV3RCd0dVO0lzQnZHVixZQUFBO0U1QmluREY7RTRCM2xERTtJQUNFLFdBQUE7RTVCNmxESjtFNEIxbERFO0lBQ0UsV0FBQTtFNUI0bERKO0U0QnpsREU7SUFDRSxXdEJ3RVE7RU5taERaO0VzQnJnREk7SUV0SEYsZ0JBRlU7SUFHVixlQUhVO0V4QmlvRFo7RXNCdmdESTtJQUNFLGVBQUE7SUFDQSxjQUFBO0V0QnlnRE47RXNCcmdERTtJQUNFLGVBQUE7SUFDQSxjQUFBO0V0QnVnREo7RXNCbmdESTtJRXBJRix3QkFGVTtJQUdWLHVCQUhVO0V4QjZvRFo7RXNCbGdESTtJS3JIRixpQkFBQTtJQUNBLGtCQUFBO0UzQjBuREY7RTJCem5ERTtJQUNFLFdBQUE7SUFDQSxXQUFBO0UzQjJuREo7RXNCOS9DSTtJS2xISixnQkFBQTtJQUNBLGVBQUE7SUFDQSxjQUFBO0UzQm1uREE7RTJCM3BERTtJQUNFLFdyQjBHUTtJcUJ6R1IsV0FBQTtFM0I2cERKO0UyQnhwREk7SUFDRSxZckJvR087RU5zakRiO0FBQ0Y7QUduZ0RRO0VtQjdFRjtJSXhGSixvQkFBQTtFMUI0cURBO0VzQjdrRFE7SUt6RU4sa0JBQUE7SUFDQSxtQkFIUztFM0I0cERYO0VzQjNrRFE7SUsvRU4sa0JBQUE7SUFDQSxvQkFIUztFM0JncURYO0VzQnJrRE07SUszRE4sZUFBQTtFM0Jtb0RBO0VzQi9sREk7SUl4RkoscUJBQUE7RTFCMHJEQTtFc0IzbERRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCMHFEWDtFc0J6bERRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCOHFEWDtFc0JubERNO0lLM0ROLDBCQUFBO0UzQmlwREE7RXNCN21ESTtJSXhGSixVQUFBO0UxQndzREE7RXNCem1EUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCd3JEWDtFc0J2bURRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0I0ckRYO0VzQmptRE07SUszRE4sMkJBQUE7RTNCK3BEQTtFc0IzbkRJO0lJeEZKLHFCQUFBO0UxQnN0REE7RXNCdm5EUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQnNzRFg7RXNCcm5EUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQjBzRFg7RXNCL21ETTtJSzNETixnQkFBQTtFM0I2cURBO0VzQnpvREk7SUl4RkoscUJBQUE7RTFCb3VEQTtFc0Jyb0RRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCb3REWDtFc0Jub0RRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCd3REWDtFc0I3bkRNO0lLM0ROLDJCQUFBO0UzQjJyREE7RXNCdnBESTtJSXhGSixVQUFBO0UxQmt2REE7RXNCbnBEUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCa3VEWDtFc0JqcERRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0JzdURYO0VzQjNvRE07SUszRE4sMkJBQUE7RTNCeXNEQTtFc0JycURJO0lJeEZKLHFCQUFBO0UxQmd3REE7RXNCanFEUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQmd2RFg7RXNCL3BEUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQm92RFg7RXNCenBETTtJSzNETixnQkFBQTtFM0J1dERBO0VzQm5yREk7SUl4RkoscUJBQUE7RTFCOHdEQTtFc0IvcURRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCOHZEWDtFc0I3cURRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCa3dEWDtFc0J2cURNO0lLM0ROLDJCQUFBO0UzQnF1REE7RXNCanNESTtJSXhGSixVQUFBO0UxQjR4REE7RXNCN3JEUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCNHdEWDtFc0IzckRRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0JneERYO0VzQnJyRE07SUszRE4sMkJBQUE7RTNCbXZEQTtFc0Ivc0RJO0lJeEZKLHFCQUFBO0UxQjB5REE7RXNCM3NEUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQjB4RFg7RXNCenNEUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQjh4RFg7RXNCbnNETTtJSzNETixnQkFBQTtFM0Jpd0RBO0VzQjd0REk7SUl4RkoscUJBQUE7RTFCd3pEQTtFc0J6dERRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCd3lEWDtFc0J2dERRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCNHlEWDtFc0JqdERNO0lLM0ROLDJCQUFBO0UzQit3REE7RXNCM3VESTtJSXhGSixXQUFBO0UxQnMwREE7RXNCdnRETTtJSzNETiwyQkFBQTtFM0JxeERBO0U0QmwwREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFdBQUE7RTVCbzBERjtFNEI5eURFO0lBQ0UsV0FBQTtFNUJnekRKO0U0Qjd5REU7SUFDRSxXQUFBO0U1Qit5REo7RTRCNXlERTtJQUNFLFd0QndFUTtFTnN1RFo7RTRCLzBEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUJpMURGO0U0QjN6REU7SUFDRSxXQUFBO0U1QjZ6REo7RTRCMXpERTtJQUNFLFdBQUE7RTVCNHpESjtFNEJ6ekRFO0lBQ0UsV3RCd0VRO0VObXZEWjtFNEI1MURBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUI4MURGO0U0QngwREU7SUFDRSxXQUFBO0U1QjAwREo7RTRCdjBERTtJQUNFLFdBQUE7RTVCeTBESjtFNEJ0MERFO0lBQ0UsV3RCd0VRO0VOZ3dEWjtFNEJ6MkRBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1QjIyREY7RTRCcjFERTtJQUNFLFdBQUE7RTVCdTFESjtFNEJwMURFO0lBQ0UsV0FBQTtFNUJzMURKO0U0Qm4xREU7SUFDRSxXdEJ3RVE7RU42d0RaO0U0QnQzREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCdzNERjtFNEJsMkRFO0lBQ0UsV0FBQTtFNUJvMkRKO0U0QmoyREU7SUFDRSxXQUFBO0U1Qm0yREo7RTRCaDJERTtJQUNFLFd0QndFUTtFTjB4RFo7RTRCbjREQTtJQUNFLFd0QndHVTtJc0J2R1YscUJBQUE7RTVCcTRERjtFNEIvMkRFO0lBQ0UsV0FBQTtFNUJpM0RKO0U0QjkyREU7SUFDRSxXQUFBO0U1QmczREo7RTRCNzJERTtJQUNFLFd0QndFUTtFTnV5RFo7RTRCaDVEQTtJQUNFLFd0QndHVTtJc0J2R1YscUJBQUE7RTVCazVERjtFNEI1M0RFO0lBQ0UsV0FBQTtFNUI4M0RKO0U0QjMzREU7SUFDRSxXQUFBO0U1QjYzREo7RTRCMTNERTtJQUNFLFd0QndFUTtFTm96RFo7RTRCNzVEQTtJQUNFLFd0QndHVTtJc0J2R1YsWUFBQTtFNUIrNURGO0U0Qno0REU7SUFDRSxXQUFBO0U1QjI0REo7RTRCeDRERTtJQUNFLFdBQUE7RTVCMDRESjtFNEJ2NERFO0lBQ0UsV3RCd0VRO0VOaTBEWjtFc0JuekRJO0lFdEhGLGdCQUZVO0lBR1YsZUFIVTtFeEIrNkRaO0VzQnJ6REk7SUFDRSxlQUFBO0lBQ0EsY0FBQTtFdEJ1ekROO0VzQm56REU7SUFDRSxlQUFBO0lBQ0EsY0FBQTtFdEJxekRKO0VzQmp6REk7SUVwSUYsd0JBRlU7SUFHVix1QkFIVTtFeEIyN0RaO0VzQmh6REk7SUtySEYsaUJBQUE7SUFDQSxrQkFBQTtFM0J3NkRGO0UyQnY2REU7SUFDRSxXQUFBO0lBQ0EsV0FBQTtFM0J5NkRKO0VzQjV5REk7SUtsSEosZ0JBQUE7SUFDQSxlQUFBO0lBQ0EsY0FBQTtFM0JpNkRBO0UyQno4REU7SUFDRSxXckIwR1E7SXFCekdSLFdBQUE7RTNCMjhESjtFMkJ0OERJO0lBQ0UsWXJCb0dPO0VObzJEYjtBQUNGO0FzQmx6REU7RUV0SEUsc0JBRGdC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O0VBQ0EsY3RCM0xpQjtBUGd5RXJCO0E2QmxtRUU7RUFDRSxpQ0FaWTtFQWFaLDBCQWJZO0E3QmluRWhCO0E2QjltRUU7RUFJRSx5QkFBQTtFQUNBLGN0QjNMaUI7QVB3eUVyQjtBNkIxbUVFO0VBQ0UscUJBWlk7RUFhWixjQWJZO0E3QnluRWhCO0E2QnRuRUU7RUFJRSx5QkFBQTtFQUNBLGN0QjNMaUI7QVBnekVyQjtBNkJsbkVFO0VBQ0UsK0RBWlk7RUFhWix3REFiWTtBN0Jpb0VoQjtBNkI5bkVFO0VBSUUseUJBQUE7RUFDQSxjdEIzTGlCO0FQd3pFckI7QTZCMW5FRTtFQUNFLCtCQVpZO0VBYVosd0JBYlk7QTdCeW9FaEI7QTZCdG9FRTtFQUlFLHlCQUFBO0VBQ0EsY3RCM0xpQjtBUGcwRXJCO0E2QmxvRUU7RUFDRSw2REFaWTtFQWFaLHNEQWJZO0E3QmlwRWhCO0E2QjVuRUk7RUFDRSx5QkFBQTtFQUNBLDZCQUFBO0E3QjhuRU47QTZCL21FRTtFQUlFLGNYbEpnQjtBbEJnd0VwQjtBNkIzbUVFO0VBQ0UsMEJBWFk7QTdCd25FaEI7QTZCcm5FRTtFQUlFLGN0QjdOaUI7QVBpMUVyQjtBNkJqbkVFO0VBQ0UsMEJBWFk7QTdCOG5FaEI7QTZCM25FRTtFQUlFLGN0QjdOaUI7QVB1MUVyQjtBNkJ2bkVFO0VBQ0UsY0FYWTtBN0Jvb0VoQjtBNkJqb0VFO0VBSUUsY3RCN05pQjtBUDYxRXJCO0E2QjduRUU7RUFDRSx3REFYWTtBN0Iwb0VoQjtBNkJ2b0VFO0VBSUUsY3RCN05pQjtBUG0yRXJCO0E2Qm5vRUU7RUFDRSx3QkFYWTtBN0JncEVoQjtBNkI3b0VFO0VBSUUsY3RCN05pQjtBUHkyRXJCO0E2QnpvRUU7RUFDRSxzREFYWTtBN0JzcEVoQjtBOEJyMEVFO0VBQ0Usd0JBQUE7QTlCdTBFSjtBOEJyMEVJO0VBQ0UsOEJBQUE7QTlCdTBFTjtBOEIxd0VFO0VBS0ksV0FBQTtBOUJ3d0VOO0E4QnJ3RUk7RUFDRSxnQkFBQTtBOUJ1d0VOO0E4QjlwRU07RUFqS0Ysa0JBQUE7QTlCazBFSjtBOEJoMEVJO0VBRUUsYUFBQTtBOUJpMEVOO0E4QnR6RVE7RUFDRSx1QkFBQTtBOUJ3ekVWO0E4Qmp6RVU7RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsaUJ2Qm9JVTtBUCtxRXRCO0E4Qmp6RVk7RUFDRSxrQkFBQTtBOUJtekVkO0E4Qnp6RVU7RUFDRSxxQkFBQTtFQUNBLGlDQUFBO0VBQ0EsaUJ2Qm9JVTtBUHVyRXRCO0E4Qnp6RVk7RUFDRSxrQkFBQTtBOUIyekVkO0E4QmowRVU7RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsaUJ2Qm9JVTtBUCtyRXRCO0E4QmowRVk7RUFDRSxrQkFBQTtBOUJtMEVkO0E4QnowRVU7RUFDRSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0EsaUJ2Qm9JVTtBUHVzRXRCO0E4QnowRVk7RUFDRSxrQkFBQTtBOUIyMEVkO0E4QmoxRVU7RUFDRSxxQkFBQTtFQUNBLGlDQUFBO0VBQ0EsaUJ2Qm9JVTtBUCtzRXRCO0E4QmoxRVk7RUFDRSxrQkFBQTtBOUJtMUVkO0FHenlFUTtFMkJTTjtJQUtJLFdBQUE7SUFFRixnQkFBQTtFOUI4eEVGO0FBQ0Y7QUcveUVRO0UyQlNOO0lBS0ksV0FBQTtJQUVGLGdCQUFBO0U5Qm95RUY7QUFDRjtBR3J6RVE7RTJCMkdKO0lBRUksY0FBQTtFOUI0c0VOO0U4QjFzRU07SUFDRSxjQUFBO0lBQ0EsZUFBQTtFOUI0c0VSO0FBQ0Y7QUc5ekVRO0UyQnNISjtJQUVJLGNBQUE7RTlCMHNFTjtFOEJ4c0VNO0lBQ0UsY0FBQTtJQUNBLGVBQUE7RTlCMHNFUjtBQUNGOztBK0I5NEVFO0VBZEEsa0JBQUE7RUFDQSxXQWpGb0I7RUFrRnBCLGN4QnBDVTtFd0JxQ1YsZUFBQTtBL0JnNkVGO0FRbnpFRTtFQUNFLFVBQUE7QVJxekVKO0ErQi81RUU7RUFFRSxjeEIxQ0k7QVAwOEVSO0ErQmw1RVE7RUFsQ04sY0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtFQUNBLGNBQUE7QS9CdTdFRjs7QStCeDVFUTtFQWxDTixXQUFBO0VBQ0EsV0FBQTtFQUNBLGNBQUE7RUFDQSxjQUFBO0EvQjg3RUY7O0FnQ2wrRUU7RUFaQSxxQkFBQTtFQUNBLDBCekJ1V2M7RXlCcldkLGdCekI4QmM7RXlCNUJkLGlCekJrV2dCO0V5QmpXaEIsY0FBQTtFQUNBLG1CQUFBO0VBQ0EsZUFBQTtFQU9FLG1CZHlFZ0I7RWN4RWhCLGN6QlFJO0FQaytFUjtBZ0N2K0VNO0VBQ0UsbUJ6QlBhO0V5QlFiLGNBQUE7QWhDeStFUjtBZ0MzK0VNO0VBQ0UsbUJ6QlBhO0V5QlFiLGNBQUE7QWhDNitFUjtBZ0MvK0VNO0VBQ0UsbUJ6QlBhO0V5QlFiLGNBQUE7QWhDaS9FUjtBZ0NuL0VNO0VBQ0UsbUJ6QlBhO0V5QlFiLGNBQUE7QWhDcS9FUjtBZ0N2L0VNO0VBQ0UsbUJ6QlBhO0V5QlFiLGNBQUE7QWhDeS9FUjs7QWlDM2dGRTtFQW5DQSxZMUI2ZGdCO0UwQjVkaEIsbUIxQjREYztFMEIzRGQsZ0IxQitEYztFMEI5RGQseUIxQmtEWTtBUGdnRmQ7QWlDN2dGUTtFQUNFLHlCMUJJVztBUDJnRnJCO0FpQ2hoRlE7RUFDRSx5QjFCSVc7QVA4Z0ZyQjtBaUNuaEZRO0VBQ0UseUIxQklXO0FQaWhGckI7QWlDdGhGUTtFQUNFLHlCMUJJVztBUG9oRnJCO0FpQ3poRlE7RUFDRSx5QjFCSVc7QVB1aEZyQjs7QWlDcGhGRTtFQXhDQSxrQkFBQTtFQUNBLGNBQUE7RUFDQSxTQUFBO0VBQ0EsWUFBQTtFQUNBLHlCZjRHa0I7QWxCbzlFcEI7O0FpQ3ZoRkU7RXpCOE1BLGtCQUFBO0VBQ0EsUUFBQTtFQUNBLFNBQUE7RUFDQSx3Q0FBQTtVQUFBLGdDQUFBO0V5QmhQQSxTQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLGMxQitCTTtFMEI5Qk4sbUJBQUE7QWpDOGpGRjs7QWtDbC9FRTtFQXZGQSxrQkFBQTtFQUNBLGMzQjZlYztFMkI1ZWQsbUJBQUE7RUFDQSxzQkFBQTtFQUVBLHlCM0JnQ1c7RTJCL0JYLGVBQUE7RUFDQSx5QkFBQTtLQUFBLHNCQUFBO01BQUEscUJBQUE7VUFBQSxpQkFBQTtFQUNBLHNCQUFBO01BQUEsa0JBQUE7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O0FtQzlpRkU7RUFDRSxXQVJhO0VBU2IsYzVCcVRpQjtFNEJwVGpCLG1CQW1EcUI7QW5DNi9FekI7QW1DN2lGRTtFQUNFLFk1QnNUbUI7RTRCclRuQixhNUJxVG1CO0U0QnBUbkIsV0FmYTtFQWdCYixZQWZjO0FuQzhqRmxCO0FtQzVpRkU7RUFDRSxhQWxCcUI7QW5DZ2tGekI7O0FtQ25nRkU7RUEzREEsZTVCMFRvQjtBUHd3RXRCO0FtQ2hrRkU7RUFDRSxhQVJhO0VBU2IsZTVCc1RrQjtFNEJyVGxCLGtCQXVEcUI7QW5DMmdGekI7QW1DL2pGRTtFQUNFLFk1QnNUbUI7RTRCclRuQixhNUJxVG1CO0U0QnBUbkIsY0FmYTtFQWdCYixlQWZjO0FuQ2dsRmxCO0FtQzlqRkU7RUFDRSxVQWxCcUI7QW5Da2xGekI7O0FtQ2poRkU7RUEvREEsYzVCMlRvQjtBUHl4RXRCO0FtQ2xsRkU7RUFDRSxXQVJhO0VBU2IsYzVCdVRrQjtFNEJ0VGxCLGVBMkRxQjtBbkN5aEZ6QjtBbUNqbEZFO0VBQ0UsWTVCc1RtQjtFNEJyVG5CLGE1QnFUbUI7RTRCcFRuQixXQWZhO0VBZ0JiLFlBZmM7QW5Da21GbEI7QW1DaGxGRTtFQUNFLGFBbEJxQjtBbkNvbUZ6Qjs7QW9DemdGRTtFQTlHQSx5QkFBQTtFQUNBLFdBQUE7RUFDQSxtQjdCbkljO0U2Qm9JZCxnQjdCaEljO0FQMnZGaEI7QW9DbnRGRTs7O0VBR0UsMEM3QithVztFNkI5YVgseUI3QnJESTtBUDB3RlI7O0FvQ2p0RkU7RUFDRSxpQzdCMGFZO0U2QnphWixpQjdCbkRpQjtBUHV3RnJCOztBb0NodEZFO0VBQ0UsdUM3QjJhb0I7RTZCMWFwQixjN0JsRUk7QVBxeEZSOztBb0Mvc0ZFO0VBQ0Usb0M3QnVhb0I7RTZCdGFwQixjN0J4RUk7QVAweEZSOztBb0Mzc0ZJOztFQUNFLHVCQUFBO0FwQytzRk47QW9DM3NGSTs7OztFQUVFLGlDN0IrWVU7RTZCOVlWLGlCN0I5RWU7RTZCK0VmLGdCQUFBO0FwQytzRk47O0FvQ3pzRkk7O0VBRUUsaUM3QnFZVTtBUHUwRWhCOztBb0NqeEZNO0VBQ0UsZ0JBQUE7RUFDQSwwQzdCNmNtQjtBUHUwRTNCOztBb0N0c0ZNO0VBQ0UseUI3QjNHQTtBUG96RlI7QW9DMXdGRTtFQUNFLGlEN0J3Ylc7RTZCdmJYLHlCN0I1Q0k7QVB3ekZSOztBR25zRlE7RWlDMEdKO0lBQ0UsYUFBQTtFcEM2bEZKO0VvQ3psRkE7SUFDRSxhQUFBO0VwQzJsRkY7RW9DeGxGQTs7O0lBR0UsY0FBQTtFcEMwbEZGO0VvQ3ZsRkE7SUFDRSxhQUFBO0VwQ3lsRkY7QUFDRjs7QW9DM2tGRTtFQXZHQSxjQUFBO0VBQ0EsV0FBQTtFQUNBLGdCQUFBO0FwQ3NyRkY7O0FvQy9xRkk7RUFDRSw2QzdCMlVpQjtBUHUyRXZCO0FvQzVxRkk7RUFDRSwwQzdCc1VpQjtBUHcyRXZCO0FvQ3hxRkk7RUFDRSwwQzdCdVRZO0FQbTNFbEI7QW9DbnFGTTtFQUNFLDZDN0JnVGlCO0FQcTNFekI7O0FvQ3RsRkU7RUFDRSxnQkFBQTtBcEN5bEZKOztBcUM3MkZFO0VBWEEscUJBQUE7RUFDQSxnQjlCeUxlO0U4QnhMZixjOUJ1TGM7RThCckxkLGtCQUFBO0VBRUEsaUI5QnFMZ0I7RThCcExoQixrQkFBQTtFQU9FLG1CbkIwRWdCO0VtQnpFaEIsYzlCU0k7QVAyMkZSO0FxQ2ozRk07RUFDRSxtQjlCTmE7RThCT2IsY0FBQTtBckNtM0ZSO0FxQ3IzRk07RUFDRSxtQjlCTmE7RThCT2IsY0FBQTtBckN1M0ZSO0FxQ3ozRk07RUFDRSxtQjlCTmE7RThCT2IsY0FBQTtBckMyM0ZSO0FxQzczRk07RUFDRSxtQjlCTmE7RThCT2IsY0FBQTtBckMrM0ZSO0FxQ2o0Rk07RUFDRSxtQjlCTmE7RThCT2IsY0FBQTtBckNtNEZSOztBc0M5MEZFO0VBL0NBLGtCL0JzS21CO0UrQnJLbkIsZ0JBQUE7QXRDaTRGRjtBUXB4RkU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtBUnF4Rko7QVE3d0ZFO0VBQ0UsV0FBQTtBUit3Rko7QXNDbjRGRTtFQUNFLFdBQUE7RUFFQSxvQi9COEp5QjtFK0I3SnpCLGMvQmJJO0UrQmNKLGVBQUE7RUFHRSx5QkFBQTtBdENrNEZOO0FzQzEzRlE7RUFDRSxrQkFBQTtFQUNBLGlCQUFBO0VBQ0EsVUFBQTtFQUNBLFlBUFE7RUFRUixjL0JoQ0k7QVA0NUZkO0FzQ2wzRkU7RUFDRSxjcEJ3QmdCO0FsQjQxRnBCO0FzQ2wzRkk7RUFDRSwwQkFBQTtBdENvM0ZOO0FzQzMyRkk7RUFDRSxjL0J4RFE7RStCeURSLG1CQUFBO0F0QzYyRk47O0F1Q3I0RkU7RUFwQkEsNkNBRmE7RUFHYixjQUFBO0VBdkJBLGtCQUFBO0VBQ0Esa0JoQ2tPZTtFZ0NqT2YsYUFBQTtFQUVBLHdDaEM4TmU7RWdDN05mLGdCaENnQmM7QVBvNkZoQjtBdUNqN0ZFO0VBQ0UsYUFBQTtBdkNtN0ZKO0F1Q2g3RkU7RUFDRSxnQkFBQTtBdkNrN0ZKO0F1Q2o1Rk07RUF4QkoscUVBRmE7RUFHYixjQUFBO0F2QzQ2RkY7QXVDcjVGTTtFQXhCSiw2Q0FGYTtFQUdiLGNBQUE7QXZDZzdGRjtBdUN6NUZNO0VBeEJKLDRDQUZhO0VBR2IsY0FBQTtBdkNvN0ZGO0F1Qzc1Rk07RUF4QkosMENBRmE7RUFHYixjQUFBO0F2Q3c3RkY7QXVDajZGTTtFQXhCSix1Q0FGYTtFQUdiLGNBQUE7QXZDNDdGRjtBdUMvNUZNO0VBekJKLG1CQXdCMkI7RUF2QjNCLHFCQXVCMkI7RUF0QjNCLHNCQXNCMkI7RUFyQjNCLG9CQXFCMkI7QXZDczZGN0I7QXVDcjZGTTtFQXpCSixpQkF3QjJCO0VBdkIzQixtQkF1QjJCO0VBdEIzQixvQkFzQjJCO0VBckIzQixrQkFxQjJCO0F2QzQ2RjdCOztBd0NsNkZFO0VBbERBLG1CakNNYztFaUNKZCx5QmpDbU9ZO0VpQ2xPWixnQmpDT2M7RWlDTGQsbUJqQ0pNO0VpQ0tOLHdCakNnT1k7VWlDaE9aLGdCakNnT1k7RWlDOU5aLGdCQUFBO0VBQ0EsY2pDVE07QVA4OUZSO0F3Q245RkU7RUFDRSxnQkFBQTtBeENxOUZKOztBd0MzNkZFO0VBNUJBLGFqQ25CZTtFaUNvQmYsbUJqQzlCVztBUHkrRmI7QXdDejhGRTtFQUNFLGdCQUFBO0F4QzI4Rko7O0F3Qy82RkU7RUFoQkEsYWpDbkNlO0FQcytGakI7QXdDajhGRTtFQUNFLGdCQUFBO0F4Q204Rko7O0F3Q2g3RkU7RUFDRSxlQUFBO0F4Q203Rko7O0F5QzMrRkU7RUE1QkEsa0JBQUE7RUFDQSxXQUFBO0VBRUEsYUFBQTtFQUVBLFlsQzZSZTtFa0M1UmYsYWxDd1JpQjtFa0N0UmpCLGtCQUFBO0VBQ0EseUJsQ3VSZ0I7RWtDdFJoQixnQmxDbUJjO0VrQ2xCZCx5QmxDU007RWtDUE4sZWxDb1JtQjtBUG12RnJCO0F5Q25nR0U7RUFDRSxjQUFBO0F6Q3FnR0o7QXlDbGdHRTtFQUNFLGNBQUE7RUFDQSxtQkFBQTtBekNvZ0dKOztBeUN6L0ZNO0VBQ0UsWWxDaVFTO0FQMnZGakI7O0F5QzcvRk07RUFDRSxZbENpUVM7QVArdkZqQjs7QXlDamdHTTtFQUNFLFlsQ2lRUztBUG13RmpCOztBMEN4NkZFO0VBcEZBLGNBQUE7RUFDQSxtQm5DbkJjO0FQbWhHaEI7QVF4NkZFO0VBRUUsY0FBQTtFQUNBLFlBQUE7QVJ5NkZKO0FRajZGRTtFQUNFLFdBQUE7QVJtNkZKO0EwQ25nR0U7RUFDRSx1Qm5DMFhzQjtFbUN6WHRCLGdCbkNyQlk7RW1Dc0JaLG1CbkNvWG1CO0VtQzlXakIsYUFBQTtBMUNnZ0dOO0EwQzkvRk07RUFFRSxxQkFBQTtBMUMrL0ZSO0FHbjdGUTtFdUN6Rk47SUF1Qk0scUJBQUE7RTFDeS9GTjtBQUNGO0EwQ3AvRkU7O0VBRUUsY0FBQTtFQUNBLDJCbkMwVnNCO0VtQ3pWdEIsZ0JuQ3BEWTtFbUNxRFosY25DL0RJO0FQcWpHUjtBMENwL0ZJOztFQUNFLG1CbkNyRU87QVA0akdiO0EwQzE4Rkk7RUFsQ0YsMkJuQzBVd0I7RW1DelV4QixtQnhCYmtCO0V3QmNsQixjbkM5RU07RW1DK0VOLGVBQUE7QTFDKytGRjtBMEM1OEZJO0VBM0JGLDJCbkMrVHdCO0VtQzlUeEIsY25DM0ZZO0VtQzRGWixtQkFBQTtBMUMwK0ZGO0EwQ3grRkU7RUFDRSx1QkFBQTtBMUMwK0ZKO0EwQ2g5Rkk7RUFq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NkdJO0VBQ0UsbUJ6Q25DRTtFeUNvQ0YsaUNBQUE7QWhEbzZHTjtBZ0RqNkdJO0VBRUUsbUJ6QzdDTztFeUM4Q1AsYzlCc0JjO0FsQjQ0R3BCOztBZ0RyMUdFO0VBbEVBLHlCQUFBO0VBQ0EsYUFBQTtFQUNBLG1CekN2RE07RXlDd0ROLGN6Q3pETTtFeUMwRE4saUNBQUE7RUFBQSx5QkFBQTtBaEQyNUdGOztBZ0R6MUdFO0VBM0RBLHlCQUFBO0VBQ0EsY0FBQTtBaER3NUdGOztBZ0QxMUdFO0VBdkRBLGFBQUE7RUFDQSxhekN5Ym9CO0FQNDlGdEI7QWdEbjVHRTtFQUNFLGNBQUE7QWhEcTVHSjs7QWlEcCtHRTtFQXpCQSxxQkFBQTtFQUNBLGVBQUE7RUFDQSxtQjFDK0JjO0UwQzdCZCx5QjFDK2hCaUI7RTBDOWhCakIsZ0IxQ2dDYztFMEMvQmQsbUQxQytoQmlCO1UwQy9oQmpCLDJDMUMraEJpQjtFMEM3aEJqQixjQUFBO0FqRCsvR0Y7O0FpRDErR0U7RUFqQkEscUQxQzJoQnFCO0UwQzNoQnJCLDZDMUMyaEJxQjtFMEMzaEJyQixxQzFDMmhCcUI7RTBDM2hCckIsd0UxQzJoQnFCO0FQbytGdkI7QWlENy9HRTtFQUVFLHVEMUNzaEJxQjtVMEN0aEJyQiwrQzFDc2hCcUI7QVB3K0Z6QjtBaUQzL0dFO0VBQ0Usd0JBQUE7VUFBQSxnQkFBQTtBakQ2L0dKOztBa0RockdFO0VBMVVBLFVBQUE7RUFDQSxTQUFBO0VBQ0EsZ0JBQUE7RUFDQSxrQkFBQTtBbEQ4L0dGO0FRNTJHRTtFQUNFLFVBQUE7QVI4MkdKO0FrRHQvR0U7O0VBRUUsY0FBQTtFQUNBLHFCQUFBO0VBQ0EsY0FBQTtFQUNBLG9CNUN3QmtCO0FOZytHdEI7QWtEcC9HRTs7OztFQUlFLGdCQUFBO0FsRHMvR0o7QWtEbi9HRTtFQUNFLHFCQUFBO0FsRHEvR0o7QWtEcjVHTTtFQUNFLHFCQUFBO0FsRHU1R1I7QWtENzRHTTtFQUNFLGNBQUE7QWxEKzRHUjtBa0Rqc0dJO0VBOVNBLGNBQUE7RUFDQSxXQUFBO0FsRGsvR0o7QWtEaC9HSTtFQUNFLG1C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c0JBQUE7QXhKeWhrQk47O0FHeGhrQlE7RXFKVUY7SUFDRSxTQUFBO0lBQ0EsZ0JBQUE7SUFDQSxZQUFBO0lBQ0Esa0JBQUE7RXhKa2hrQk47RXdKL2drQkU7SUFDRSx5QkFBQTtFeEppaGtCSjtBQUNGO0F3SjVna0JRO0VBQ0UsYzlFbEtKO0ExRWdya0JOO0F3SjFna0JJO0VBQ0UsNkY5RWxLZTtFOEVtS2YseUJBQUE7RUFDQSxnQkFBQTtFQUNBLFNBQUE7QXhKNGdrQk47O0F5Smh1a0JBO0VBQ0E7O01BQUE7QXpKcXVrQkE7QXlKbHVrQkU7RUFDRSxjL0VxREs7RStFcERMLGVBQUE7QXpKb3VrQko7QXlKbHVrQkU7RUFDRSx5Qi9FaUNFO0UrRWhDRixjbEpvREk7RWtKbkRKLG9CQUFBO0VBQ0EsZUFBQTtFQUNBLGlCQUFBO0VBQ0EseUJBQUE7RUFDQSxnQkFBQTtBekpvdWtCSjtBeUpsdWtCRTtFQUNFLGtCQUFBO0VBQ0EsbUJBQUE7QXpKb3VrQko7QUdwa2tCUTtFc0psS047SUFJSSxtQkFBQTtJQUNBLGtCQUFBO0V6SnN1a0JKO0FBQ0YiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyogXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblRhYmxlIG9mIENvbnRlbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG4vKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuOS4wXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbC5sYXJnZSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC50aW55LCAucmV2ZWFsIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4vKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5odG1sIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDtcbn1cblxuaHIge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgaGVpZ2h0OiAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxucHJlIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5hYmJyW3RpdGxlXSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG59XG5cbmNvZGUsXG5rYmQsXG5zYW1wIHtcbiAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3ViIHtcbiAgYm90dG9tOiAtMC4yNWVtO1xufVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTtcbn1cblxuaW1nIHtcbiAgYm9yZGVyLXN0eWxlOiBub25lO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgbWFyZ2luOiAwO1xufVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuYnV0dG9uLFxuW3R5cGU9YnV0dG9uXSxcblt0eXBlPXJlc2V0XSxcblt0eXBlPXN1Ym1pdF0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9YnV0dG9uXTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXJlc2V0XTo6LW1vei1mb2N1cy1pbm5lcixcblt0eXBlPXN1Ym1pdF06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmJ1dHRvbjotbW96LWZvY3VzcmluZyxcblt0eXBlPWJ1dHRvbl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1yZXNldF06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1zdWJtaXRdOi1tb3otZm9jdXNyaW5nIHtcbiAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xufVxuXG5maWVsZHNldCB7XG4gIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbn1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG59XG5cbnByb2dyZXNzIHtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuW3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuW3R5cGU9c2VhcmNoXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cblxuW3R5cGU9c2VhcmNoXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBmb250OiBpbmhlcml0O1xufVxuXG5kZXRhaWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07XG59XG5cbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuW2hpZGRlbl0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5bZGF0YS13aGF0aW50ZW50PW1vdXNlXSAqLCBbZGF0YS13aGF0aW50ZW50PW1vdXNlXSAqOmZvY3VzLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnRlbnQ9dG91Y2hdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdICosXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW5wdXQ9dG91Y2hdICosXG5bZGF0YS13aGF0aW5wdXQ9dG91Y2hdICo6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuXG5bZHJhZ2dhYmxlPWZhbHNlXSB7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLmZvdW5kYXRpb24tbXEge1xuICBmb250LWZhbWlseTogXCJzbWFsbD0wZW0mbWVkaXVtPTQwZW0mbGFyZ2U9NjRlbSZ4bGFyZ2U9NzVlbSZ4eGxhcmdlPTkwZW1cIjtcbn1cblxuaHRtbCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbn1cblxuKixcbio6OmJlZm9yZSxcbio6OmFmdGVyIHtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG59XG5cbnRleHRhcmVhIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5zZWxlY3Qge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5idXR0b24ge1xuICBwYWRkaW5nOiAwO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY3Vyc29yOiBhdXRvO1xufVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLmlzLXZpc2libGUge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG4uaXMtaGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG5bdHlwZT10ZXh0XSwgW3R5cGU9cGFzc3dvcmRdLCBbdHlwZT1kYXRlXSwgW3R5cGU9ZGF0ZXRpbWVdLCBbdHlwZT1kYXRldGltZS1sb2NhbF0sIFt0eXBlPW1vbnRoXSwgW3R5cGU9d2Vla10sIFt0eXBlPWVtYWlsXSwgW3R5cGU9bnVtYmVyXSwgW3R5cGU9c2VhcmNoXSwgW3R5cGU9dGVsXSwgW3R5cGU9dGltZV0sIFt0eXBlPXVybF0sIFt0eXBlPWNvbG9yXSxcbnRleHRhcmVhIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgxMCwgMTAsIDEwLCAwLjEpO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG5bdHlwZT10ZXh0XTpmb2N1cywgW3R5cGU9cGFzc3dvcmRdOmZvY3VzLCBbdHlwZT1kYXRlXTpmb2N1cywgW3R5cGU9ZGF0ZXRpbWVdOmZvY3VzLCBbdHlwZT1kYXRldGltZS1sb2NhbF06Zm9jdXMsIFt0eXBlPW1vbnRoXTpmb2N1cywgW3R5cGU9d2Vla106Zm9jdXMsIFt0eXBlPWVtYWlsXTpmb2N1cywgW3R5cGU9bnVtYmVyXTpmb2N1cywgW3R5cGU9c2VhcmNoXTpmb2N1cywgW3R5cGU9dGVsXTpmb2N1cywgW3R5cGU9dGltZV06Zm9jdXMsIFt0eXBlPXVybF06Zm9jdXMsIFt0eXBlPWNvbG9yXTpmb2N1cyxcbnRleHRhcmVhOmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblxudGV4dGFyZWEge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG50ZXh0YXJlYVtyb3dzXSB7XG4gIGhlaWdodDogYXV0bztcbn1cblxuaW5wdXQ6ZGlzYWJsZWQsIGlucHV0W3JlYWRvbmx5XSxcbnRleHRhcmVhOmRpc2FibGVkLFxudGV4dGFyZWFbcmVhZG9ubHldIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuW3R5cGU9c3VibWl0XSxcblt0eXBlPWJ1dHRvbl0ge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG5pbnB1dFt0eXBlPXNlYXJjaF0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG46OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cblt0eXBlPWZpbGVdLFxuW3R5cGU9Y2hlY2tib3hdLFxuW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbn1cblxuW3R5cGU9Y2hlY2tib3hdICsgbGFiZWwsXG5bdHlwZT1yYWRpb10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbFtmb3JdLFxuW3R5cGU9cmFkaW9dICsgbGFiZWxbZm9yXSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxubGFiZWwgPiBbdHlwZT1jaGVja2JveF0sXG5sYWJlbCA+IFt0eXBlPXJhZGlvXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG5bdHlwZT1maWxlXSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxubGFiZWwubWlkZGxlIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgcGFkZGluZzogMC41NjI1cmVtIDA7XG59XG5cbi5oZWxwLXRleHQge1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQuaW5wdXQtZ3JvdXAtYnV0dG9uID4gKiB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1maWVsZCwgLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgbWFyZ2luOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHdpZHRoOiAxJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwLWxhYmVsOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMSU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBoZWlnaHQ6IDIuNDM3NXJlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICBmb250LXNpemU6IDFyZW07XG59XG5cbi5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbn1cbi5maWVsZHNldCBsZWdlbmQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICBwYWRkaW5nOiAwIDAuMTg3NXJlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDAgKSB7XG4gIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgfVxufVxuc2VsZWN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuc2VsZWN0W211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbnNlbGVjdDpub3QoW211bHRpcGxlXSkge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ5LCAyMzYuMSwgMjM0LjEpO1xufVxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5oMSBzbWFsbCwgLmgxIHNtYWxsLFxuaDIgc21hbGwsIC5oMiBzbWFsbCxcbmgzIHNtYWxsLCAuaDMgc21hbGwsXG5oNCBzbWFsbCwgLmg0IHNtYWxsLFxuaDUgc21hbGwsIC5oNSBzbWFsbCxcbmg2IHNtYWxsLCAuaDYgc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07XG4gIH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzE3NzliYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxOS43OCwgMTA0LjA2LCAxNTkuOTYpO1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhO1xufVxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM4YThhOGE7XG59XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wICsgLnN0YXQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNpdGUtYmxvY2ssIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4YThhOGE7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xufVxuLmNpdGUtYmxvY2s6YmVmb3JlLCBjaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG4uY29kZS1pbmxpbmUsIGNvZGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG59XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgcHJpbnQtY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gIH1cbn1cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLnJvdzo6YmVmb3JlLCAucm93OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5yb3c6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4ucm93LmNvbGxhcHNlID4gLmNvbHVtbiwgLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuLnJvdyAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucm93IC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogLTAuOTM3NXJlbTtcbiAgICBtYXJnaW4tbGVmdDogLTAuOTM3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbi5yb3cgLnJvdy5jb2xsYXBzZSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4ucm93LmV4cGFuZGVkIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuLnJvdy5leHBhbmRlZCAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5yb3c6bm90KC5leHBhbmRlZCkgLnJvdyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItc21hbGwgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xufVxuLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbiwgLnJvdy5ndXR0ZXItbWVkaXVtID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xufVxuXG4uY29sdW1uLCAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICB9XG59XG4uY29sdW1uLCAuY29sdW1ucywgLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xufVxuLmNvbHVtbjpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuY29sdW1uczpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLmNvbHVtbi5lbmQ6bGFzdC1jaGlsZDpsYXN0LWNoaWxkLCAuZW5kLmNvbHVtbnM6bGFzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5jb2x1bW4ucm93LnJvdywgLnJvdy5yb3cuY29sdW1ucyB7XG4gIGZsb2F0OiBub25lO1xufVxuXG4ucm93IC5jb2x1bW4ucm93LnJvdywgLnJvdyAucm93LnJvdy5jb2x1bW5zIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xufVxuXG4uc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC0xIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC0wIHtcbiAgbWFyZ2luLWxlZnQ6IDAlO1xufVxuXG4uc21hbGwtMiB7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtMiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0xNi42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xIHtcbiAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC0zIHtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLnNtYWxsLXB1c2gtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMjUlO1xufVxuXG4uc21hbGwtcHVsbC0zIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMjUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC00IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTMzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogMjUlO1xufVxuXG4uc21hbGwtNSB7XG4gIHdpZHRoOiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtNSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdWxsLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC00MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7XG59XG5cbi5zbWFsbC1wdXNoLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDUwJTtcbn1cblxuLnNtYWxsLXB1bGwtNiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTUwJTtcbn1cblxuLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtNyB7XG4gIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtNyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC02IHtcbiAgbWFyZ2luLWxlZnQ6IDUwJTtcbn1cblxuLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTkge1xuICB3aWR0aDogNzUlO1xufVxuXG4uc21hbGwtcHVzaC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC1wdWxsLTkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC03NSU7XG59XG5cbi5zbWFsbC1vZmZzZXQtOCB7XG4gIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLTEwIHtcbiAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVzaC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTEwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7XG59XG5cbi5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1c2gtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDkxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC0xMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTkxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtMTIge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXVwLTEgPiAuY29sdW1uLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLnNtYWxsLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtMiA+IC5jb2x1bW4sIC5zbWFsbC11cC0yID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDUwJTtcbn1cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5zbWFsbC11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTMgPiAuY29sdW1uLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5zbWFsbC11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTQgPiAuY29sdW1uLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7XG59XG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAuc21hbGwtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC01ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTUgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlO1xufVxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLnNtYWxsLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNiA+IC5jb2x1bW4sIC5zbWFsbC11cC02ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xufVxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLnNtYWxsLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNyA+IC5jb2x1bW4sIC5zbWFsbC11cC03ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xufVxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLnNtYWxsLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtOCA+IC5jb2x1bW4sIC5zbWFsbC11cC04ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEyLjUlO1xufVxuLnNtYWxsLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLnNtYWxsLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5zbWFsbC1jb2xsYXBzZSAucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLmV4cGFuZGVkLnJvdyAuc21hbGwtY29sbGFwc2Uucm93IHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1uLCAuc21hbGwtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG59XG5cbi5zbWFsbC1jZW50ZXJlZCB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc21hbGwtY2VudGVyZWQsIC5zbWFsbC1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IG5vbmU7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXB1c2gtMCwgLnNtYWxsLXB1bGwtMCB7XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uc21hbGwtdW5jZW50ZXJlZCwgLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1c2gtMCwgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVsbC0wLCAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogbGVmdDtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbiAgLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0xNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7XG4gIH1cbiAgLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC00MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlO1xuICB9XG4gIC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtOSB7XG4gICAgbWFyZ2luLWxlZnQ6IDc1JTtcbiAgfVxuICAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uLCAubWVkaXVtLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbiwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbiwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uLCAubWVkaXVtLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uLCAubWVkaXVtLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uLCAubWVkaXVtLXVwLTYgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbiwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLWNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAubWVkaXVtLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC5tZWRpdW0tY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbiwgLm1lZGl1bS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxuICAubWVkaXVtLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCwgLm1lZGl1bS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVuY2VudGVyZWQsIC5tZWRpdW0tcHVzaC0wLCAubWVkaXVtLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdXNoLTAsIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVsbC0wLCAubWVkaXVtLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLm1lZGl1bS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTMge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMjUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtNSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAubGFyZ2UtcHVsbC02IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTUwJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTgge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtOSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC03NSU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC04My4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA5MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKzEpLCAubGFyZ2UtdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtMSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW4sIC5sYXJnZS11cC0yID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgybisxKSwgLmxhcmdlLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgybisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLmxhcmdlLXVwLTMgPiAuY29sdW1uczpudGgtb2YtdHlwZSgzbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTMgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNG4rMSksIC5sYXJnZS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTUgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwJTtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDVuKzEpLCAubGFyZ2UtdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDVuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW4sIC5sYXJnZS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDZuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW4sIC5sYXJnZS11cC03ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDduKzEpLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW4sIC5sYXJnZS11cC04ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMi41JTtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDhuKzEpLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDhuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLWNvbGxhcHNlIC5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAuZXhwYW5kZWQucm93IC5sYXJnZS1jb2xsYXBzZS5yb3cge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxuICAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5sYXJnZS11bmNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxuICAubGFyZ2UtY2VudGVyZWQge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgfVxuICAubGFyZ2UtY2VudGVyZWQsIC5sYXJnZS1jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdW5jZW50ZXJlZCwgLmxhcmdlLXB1c2gtMCwgLmxhcmdlLXB1bGwtMCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsIC5sYXJnZS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdXNoLTAsIC5sYXJnZS1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1bGwtMCwgLmxhcmdlLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG59XG4uY29sdW1uLWJsb2NrIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi5jb2x1bW4tYmxvY2sgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY29sdW1uLWJsb2NrIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgfVxuICAuY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHBhZGRpbmc6IDAuODVlbSAxZW07XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5idXR0b24ge1xuICBvdXRsaW5lOiAwO1xufVxuLmJ1dHRvbi50aW55IHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLnNtYWxsIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi5sYXJnZSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5idXR0b24uZXhwYW5kZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uYnV0dG9uLCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE5LjU1LCAxMDIuODUsIDE1OC4xKTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnByaW1hcnksIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24ucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDE4LjQsIDk2LjgsIDE0OC44KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDk0LjQsIDk0LjQsIDk0LjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uc3VjY2VzcywgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMzQuMjM4NjI2NjA5NCwgMTg3LjM2MTM3MzM5MDYsIDkxLjMwMzAwNDI5MTgpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24ud2FybmluZywgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLndhcm5pbmc6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjA0LCAxMzkuMiwgMCk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi5hbGVydCwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxNjUuMDk5NjAxNTkzNiwgNTguNjEwMzU4NTY1NywgNDIuMTAwMzk4NDA2NCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi5ob2xsb3csIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uaG9sbG93OmhvdmVyLCAuYnV0dG9uLmhvbGxvdzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5LCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM3Njc2NzY7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICBib3JkZXItY29sb3I6ICMzYjNiM2I7XG4gIGNvbG9yOiAjM2IzYjNiO1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2VzcywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMzYWRiNzY7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzczpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZmYWUwMDtcbiAgY29sb3I6ICNmZmFlMDA7XG59XG4uYnV0dG9uLmhvbGxvdy53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi5ob2xsb3cuYWxlcnQsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydDpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICBjb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbn1cbi5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICBjb2xvcjogcmdiKDIxLjM5OTE0MTYzMDksIDExNy4xMDA4NTgzNjkxLCA1Ny4wNjQzNzc2ODI0KTtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICBjb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0LCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmNsZWFyLmFsZXJ0OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xufVxuLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjRlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjZmVmZWZlIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMC40ZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMWVtO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3c6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyOjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5wcmltYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5wcmltYXJ5OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5zZWNvbmRhcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnNlY29uZGFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc3VjY2Vzczo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc3VjY2Vzczo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2O1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cud2FybmluZzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2FybmluZzo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuYWxlcnQ6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLmFsZXJ0OjphZnRlciB7XG4gIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgdG9wOiAtMC4xZW07XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYnV0dG9uLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwO1xufVxuLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi5idXR0b24tZ3JvdXA6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xuICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uYnV0dG9uLWdyb3VwLnRpbnkgLmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5zbWFsbCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5sYXJnZSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCB7XG4gIG1hcmdpbi1yaWdodDogLTFweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOmxhc3QtY2hpbGQge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMXB4KTtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoNTAlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDMpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IGNhbGMoMjUlIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygyMCUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNiksIC5idXR0b24tZ3JvdXAuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOC40LCA5Ni44LCAxNDguOCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig5NC40LCA5NC40LCA5NC40KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM0LjIzODYyNjYwOTQsIDE4Ny4zNjEzNzMzOTA2LCA5MS4zMDMwMDQyOTE4KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNCwgMTM5LjIsIDApO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTY1LjA5OTYwMTU5MzYsIDU4LjYxMDM1ODU2NTcsIDQyLjEwMDM5ODQwNjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG4gIGNvbG9yOiByZ2IoMjEuMzk5MTQxNjMwOSwgMTE3LjEwMDg1ODM2OTEsIDU3LjA2NDM3NzY4MjQpO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG4gIGNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xuICBjb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4wNjI1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0gLmJ1dHRvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkIC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkOjpiZWZvcmUsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZDo6YWZ0ZXIsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQ6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZDo6YWZ0ZXIsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkOjpiZWZvcmUsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDFweCk7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgyKSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMiksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYyg1MCUgLSAxcHgpO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDIpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMik6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMikgfiAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IC02cHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyksIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogY2FsYygzMy4zMzMzMzMzMzMzJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMykgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoMyk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgzKSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDQpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDI1JSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCkgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNCk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg0KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDUpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDIwJSAtIDFweCk7XG4gIG1hcmdpbi1yaWdodDogMXB4O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSkgfiAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b246Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoNSk6bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg1KSB+IC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogLTZweDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiBjYWxjKDE2LjY2NjY2NjY2NjclIC0gMXB4KTtcbiAgbWFyZ2luLXJpZ2h0OiAxcHg7XG59XG4uYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbC5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KSB+IC5idXR0b246bGFzdC1jaGlsZCwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCg2KTpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCAuYnV0dG9uOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpOmZpcnN0LWNoaWxkOm50aC1sYXN0LWNoaWxkKDYpIH4gLmJ1dHRvbjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAtNnB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1zbWFsbCAuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtLmV4cGFuZGVkIC5idXR0b24ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxufVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgY29sb3I6ICM4YThhOGE7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmNsb3NlLWJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG4uY2xvc2UtYnV0dG9uOmhvdmVyLCAuY2xvc2UtYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2xvc2UtYnV0dG9uLnNtYWxsIHtcbiAgcmlnaHQ6IDAuNjZyZW07XG4gIHRvcDogMC4zM2VtO1xuICBmb250LXNpemU6IDEuNWVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmNsb3NlLWJ1dHRvbi5tZWRpdW0sIC5jbG9zZS1idXR0b24ge1xuICByaWdodDogMXJlbTtcbiAgdG9wOiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmxhYmVsLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5sYWJlbC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5sYWJlbC5zdWNjZXNzIHtcbiAgYmFja2dyb3VuZDogIzNhZGI3NjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ubGFiZWwud2FybmluZyB7XG4gIGJhY2tncm91bmQ6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmxhYmVsLmFsZXJ0IHtcbiAgYmFja2dyb3VuZDogI2NjNGIzNztcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbn1cbi5wcm9ncmVzcy5wcmltYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG59XG4ucHJvZ3Jlc3Muc2Vjb25kYXJ5IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG59XG4ucHJvZ3Jlc3Muc3VjY2VzcyAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xufVxuLnByb2dyZXNzLndhcm5pbmcgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmYWUwMDtcbn1cbi5wcm9ncmVzcy5hbGVydCAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbn1cblxuLnByb2dyZXNzLW1ldGVyLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi4yNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4uc2xpZGVyLWZpbGwge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5zbGlkZXItZmlsbC5pcy1kcmFnZ2luZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG59XG5cbi5zbGlkZXItaGFuZGxlIHtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTtcbiAgY3Vyc29yOiBncmFiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLnNsaWRlci1oYW5kbGUge1xuICBvdXRsaW5lOiAwO1xufVxuLnNsaWRlci1oYW5kbGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTkuNTUsIDEwMi44NSwgMTU4LjEpO1xufVxuLnNsaWRlci1oYW5kbGUuaXMtZHJhZ2dpbmcge1xuICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICBjdXJzb3I6IGdyYWJiaW5nO1xufVxuXG4uc2xpZGVyLmRpc2FibGVkLFxuLnNsaWRlcltkaXNhYmxlZF0ge1xuICBvcGFjaXR5OiAwLjI1O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uc2xpZGVyLnZlcnRpY2FsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMC41cmVtO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcbn1cbi5zbGlkZXIudmVydGljYWwgLnNsaWRlci1maWxsIHtcbiAgdG9wOiAwO1xuICB3aWR0aDogMC41cmVtO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xufVxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWhhbmRsZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxLjRyZW07XG4gIGhlaWdodDogMS40cmVtO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi5zd2l0Y2gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIG91dGxpbmU6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGhlaWdodDogMnJlbTtcbn1cblxuLnN3aXRjaC1pbnB1dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnN3aXRjaC1wYWRkbGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogNHJlbTtcbiAgaGVpZ2h0OiAycmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtd2VpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuaW5wdXQgKyAuc3dpdGNoLXBhZGRsZSB7XG4gIG1hcmdpbjogMDtcbn1cbi5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEuNXJlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgY29udGVudDogXCJcIjtcbn1cbmlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG59XG5pbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi4yNXJlbTtcbn1cbmlucHV0OmZvY3VzLXZpc2libGUgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6IHJnYigxODEuOCwgMTgxLjgsIDE4MS44KTtcbn1cbmlucHV0OmZvY3VzLXZpc2libGUgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xufVxuaW5wdXQ6Y2hlY2tlZDpmb2N1cy12aXNpYmxlIH4gLnN3aXRjaC1wYWRkbGUge1xuICBiYWNrZ3JvdW5kOiByZ2IoMTkuNTUsIDEwMi44NSwgMTU4LjEpO1xufVxuaW5wdXQ6ZGlzYWJsZWQgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gaW5wdXQ6Zm9jdXMgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5zd2l0Y2gtaW5hY3RpdmUsIC5zd2l0Y2gtYWN0aXZlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4uc3dpdGNoLWFjdGl2ZSB7XG4gIGxlZnQ6IDglO1xuICBkaXNwbGF5OiBub25lO1xufVxuaW5wdXQ6Y2hlY2tlZCArIGxhYmVsID4gLnN3aXRjaC1hY3RpdmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnN3aXRjaC1pbmFjdGl2ZSB7XG4gIHJpZ2h0OiAxNSU7XG59XG5pbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWluYWN0aXZlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnN3aXRjaC50aW55IHtcbiAgaGVpZ2h0OiAxLjVyZW07XG59XG4uc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogM3JlbTtcbiAgaGVpZ2h0OiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG59XG4uc3dpdGNoLnRpbnkgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMXJlbTtcbiAgaGVpZ2h0OiAxcmVtO1xufVxuLnN3aXRjaC50aW55IGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAxLjc1cmVtO1xufVxuXG4uc3dpdGNoLnNtYWxsIHtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xufVxuLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMS43NXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuLnN3aXRjaC5zbWFsbCAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG59XG4uc3dpdGNoLnNtYWxsIGlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAycmVtO1xufVxuXG4uc3dpdGNoLmxhcmdlIHtcbiAgaGVpZ2h0OiAyLjVyZW07XG59XG4uc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDVyZW07XG4gIGhlaWdodDogMi41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uc3dpdGNoLmxhcmdlIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDIuNzVyZW07XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG50aGVhZCxcbnRib2R5LFxudGZvb3Qge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbmNhcHRpb24ge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG50aGVhZCB7XG4gIGJhY2tncm91bmQ6IHJnYigyNDcuNjUsIDI0Ny42NSwgMjQ3LjY1KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbnRmb290IHtcbiAgYmFja2dyb3VuZDogcmdiKDI0MS4zLCAyNDEuMywgMjQxLjMpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGhlYWQgdHIsXG50Zm9vdCB0ciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxudGhlYWQgdGgsXG50aGVhZCB0ZCxcbnRmb290IHRoLFxudGZvb3QgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG50Ym9keSB0aCxcbnRib2R5IHRkIHtcbiAgcGFkZGluZzogMC41cmVtIDAuNjI1cmVtIDAuNjI1cmVtO1xufVxuXG50Ym9keSB0cjpudGgtY2hpbGQoZXZlbikge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG59XG5cbnRhYmxlLnVuc3RyaXBlZCB0Ym9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG50YWJsZS51bnN0cmlwZWQgdGJvZHkgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiKDI0MS4zLCAyNDEuMywgMjQxLjMpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICB0YWJsZS5zdGFjayB0aGVhZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0Zm9vdCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB0YWJsZS5zdGFjayB0cixcbiAgdGFibGUuc3RhY2sgdGgsXG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICB0YWJsZS5zdGFjayB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG50YWJsZS5zY3JvbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbnRhYmxlLmhvdmVyIHRoZWFkIHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0Mi41NSwgMjQyLjU1LCAyNDIuNTUpO1xufVxudGFibGUuaG92ZXIgdGZvb3QgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM2LjIsIDIzNi4yLCAyMzYuMik7XG59XG50YWJsZS5ob3ZlciB0Ym9keSB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDguOSwgMjQ4LjksIDI0OC45KTtcbn1cbnRhYmxlLmhvdmVyOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzYuMTUsIDIzNi4xNSwgMjM2LjE1KTtcbn1cblxuLnRhYmxlLXNjcm9sbCB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG59XG5cbi5iYWRnZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWluLXdpZHRoOiAyLjFlbTtcbiAgcGFkZGluZzogMC4zZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgZm9udC1zaXplOiAwLjZyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYmFkZ2UucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJhZGdlLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJhZGdlLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5iYWRnZS53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYmFkZ2UuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLmJyZWFkY3J1bWJzOjpiZWZvcmUsIC5icmVhZGNydW1iczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG4uYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnJlYWRjcnVtYnMgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwLjc1cmVtO1xuICBvcGFjaXR5OiAxO1xuICBjb250ZW50OiBcIi9cIjtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG4uYnJlYWRjcnVtYnMgYSB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICBjb2xvcjogI2NhY2FjYTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmNhbGxvdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0Ljg1LCAyNTQuODUsIDI1NC44NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5jYWxsb3V0ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmNhbGxvdXQucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMTQuODE4NjYwMjg3MSwgMjM1Ljk4OTQ3MzY4NDIsIDI1MC4wMzEzMzk3MTI5KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM0LjQ1LCAyMzQuNDUsIDIzNC40NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMjUuNDUsIDI0OS42LCAyMzQuNDUpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0Lndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNDIuODUsIDIxNi43NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ3LjM1LCAyMjgsIDIyNSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuc21hbGwge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLmNhbGxvdXQubGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuLmNhcmQge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYXJkID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uY2FyZC1kaXZpZGVyIHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cbi5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXNlY3Rpb24ge1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLmNhcmQtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmNhcmQtaW1hZ2Uge1xuICBtaW4taGVpZ2h0OiAxcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMDtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDMwMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW5pbmcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5kcm9wZG93bi1wYW5lLmlzLW9wZW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmRyb3Bkb3duLXBhbmUudGlueSB7XG4gIHdpZHRoOiAxMDBweDtcbn1cblxuLmRyb3Bkb3duLXBhbmUuc21hbGwge1xuICB3aWR0aDogMjAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLmxhcmdlIHtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4ucGFnaW5hdGlvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLnBhZ2luYXRpb246OmJlZm9yZSwgLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLnBhZ2luYXRpb246OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4ucGFnaW5hdGlvbiBsaSB7XG4gIG1hcmdpbi1yaWdodDogMC4wNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuLnBhZ2luYXRpb24gbGk6bGFzdC1jaGlsZCwgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucGFnaW5hdGlvbiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4ucGFnaW5hdGlvbiBhLFxuLnBhZ2luYXRpb24gYnV0dG9uIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ucGFnaW5hdGlvbiBhOmhvdmVyLFxuLnBhZ2luYXRpb24gYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cbi5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuLnBhZ2luYXRpb24gLmRpc2FibGVkIHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBjb2xvcjogI2NhY2FjYTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5wYWdpbmF0aW9uIC5kaXNhYmxlZDpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuLnBhZ2luYXRpb24gLmVsbGlwc2lzOjphZnRlciB7XG4gIHBhZGRpbmc6IDAuMTg3NXJlbSAwLjYyNXJlbTtcbiAgY29udGVudDogXCLigKZcIjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5wYWdpbmF0aW9uLXByZXZpb3VzIGE6OmJlZm9yZSxcbi5wYWdpbmF0aW9uLXByZXZpb3VzLmRpc2FibGVkOjpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBjb250ZW50OiBcIsKrXCI7XG59XG5cbi5wYWdpbmF0aW9uLW5leHQgYTo6YWZ0ZXIsXG4ucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgY29udGVudDogXCLCu1wiO1xufVxuXG4uaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICM4YThhOGE7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArIDAuNjQ5NXJlbSk7XG4gIHotaW5kZXg6IDEyMDA7XG4gIG1heC13aWR0aDogMTByZW07XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogODAlO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi50b29sdGlwOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4udG9vbHRpcC5ib3R0b206OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci10b3Atd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzBhMGEwYTtcbiAgYm90dG9tOiAxMDAlO1xufVxuLnRvb2x0aXAuYm90dG9tLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG4udG9vbHRpcC50b3A6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgdG9wOiAxMDAlO1xuICBib3R0b206IGF1dG87XG59XG4udG9vbHRpcC50b3AuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLmxlZnQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBsZWZ0OiAxMDAlO1xufVxuLnRvb2x0aXAubGVmdC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cbi50b29sdGlwLnJpZ2h0OjpiZWZvcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAwLjc1cmVtO1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogMTAwJTtcbiAgbGVmdDogYXV0bztcbn1cbi50b29sdGlwLnJpZ2h0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAuYWxpZ24tdG9wOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogMTAlO1xufVxuLnRvb2x0aXAuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICBib3R0b206IDEwJTtcbiAgdG9wOiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgbGVmdDogMTAlO1xuICByaWdodDogYXV0bztcbn1cbi50b29sdGlwLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMTAlO1xufVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi5hY2NvcmRpb25bZGlzYWJsZWRdIC5hY2NvcmRpb24tdGl0bGUge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uYWNjb3JkaW9uLWl0ZW06Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG5cbi5hY2NvcmRpb24tdGl0bGUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjI1cmVtIDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItcmFkaXVzOiAwIDAgMCAwO1xufVxuLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4uYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICByaWdodDogMXJlbTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgY29udGVudDogXCIrXCI7XG59XG4uaXMtYWN0aXZlID4gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCLigJNcIjtcbn1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG46bGFzdC1jaGlsZCA+IC5hY2NvcmRpb24tY29udGVudDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3QgaW1nIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbi5taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uLmJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi5vcmJpdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vcmJpdC1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG4ub3JiaXQtc2xpZGUubm8tbW90aW9udWkuaXMtYWN0aXZlIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xufVxuXG4ub3JiaXQtZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG4ub3JiaXQtaW1hZ2Uge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG59XG5cbi5vcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4ub3JiaXQtbmV4dCwgLm9yYml0LXByZXZpb3VzIHtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vcmJpdC1uZXh0LCBbZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vcmJpdC1wcmV2aW91cyB7XG4gIG91dGxpbmU6IDA7XG59XG4ub3JiaXQtbmV4dDpob3ZlciwgLm9yYml0LXByZXZpb3VzOmhvdmVyLCAub3JiaXQtbmV4dDphY3RpdmUsIC5vcmJpdC1wcmV2aW91czphY3RpdmUsIC5vcmJpdC1uZXh0OmZvY3VzLCAub3JiaXQtcHJldmlvdXM6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEwLCAxMCwgMTAsIDAuNSk7XG59XG5cbi5vcmJpdC1wcmV2aW91cyB7XG4gIGxlZnQ6IDA7XG59XG5cbi5vcmJpdC1uZXh0IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi5vcmJpdC1idWxsZXRzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tdG9wOiAwLjhyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub3JiaXQtYnVsbGV0cyB7XG4gIG91dGxpbmU6IDA7XG59XG4ub3JiaXQtYnVsbGV0cyBidXR0b24ge1xuICB3aWR0aDogMS4ycmVtO1xuICBoZWlnaHQ6IDEuMnJlbTtcbiAgbWFyZ2luOiAwLjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NhY2FjYTtcbn1cbi5vcmJpdC1idWxsZXRzIGJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7XG59XG4ub3JiaXQtYnVsbGV0cyBidXR0b24uaXMtYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbn1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lLFxuLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuLnJlc3BvbnNpdmUtZW1iZWQgZW1iZWQsXG4ucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbi5mbGV4LXZpZGVvIGlmcmFtZSxcbi5mbGV4LXZpZGVvIG9iamVjdCxcbi5mbGV4LXZpZGVvIGVtYmVkLFxuLmZsZXgtdmlkZW8gdmlkZW8ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5yZXNwb25zaXZlLWVtYmVkLndpZGVzY3JlZW4sXG4uZmxleC12aWRlby53aWRlc2NyZWVuIHtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbn1cblxuLnRhYnMge1xuICBtYXJnaW46IDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cbi50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbn1cbi50YWJzOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRhYnMuc2ltcGxlID4gbGkgPiBhIHtcbiAgcGFkZGluZzogMDtcbn1cbi50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xufVxuXG4udGFicy5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi50YWJzLnByaW1hcnkgPiBsaSA+IGE6aG92ZXIsIC50YWJzLnByaW1hcnkgPiBsaSA+IGE6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjEuODUsIDExNC45NSwgMTc2LjcpO1xufVxuXG4udGFicy10aXRsZSB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnRhYnMtdGl0bGUgPiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLnRhYnMtdGl0bGUgPiBhIHtcbiAgb3V0bGluZTogMDtcbn1cbi50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiByZ2IoMTkuNzgsIDEwNC4wNiwgMTU5Ljk2KTtcbn1cbi50YWJzLXRpdGxlID4gYTpmb2N1cywgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBjb2xvcjogIzE3NzliYTtcbn1cblxuLnRhYnMtY29udGVudCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBhbGwgMC41cyBlYXNlO1xufVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG5cbi50YWJzLXBhbmVsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbn1cbi50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4udGh1bWJuYWlsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogc29saWQgNHB4ICNmZWZlZmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKDEwLCAxMCwgMTAsIDAuMik7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuXG5hLnRodW1ibmFpbCB7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XG59XG5hLnRodW1ibmFpbDpob3ZlciwgYS50aHVtYm5haWw6Zm9jdXMge1xuICBib3gtc2hhZG93OiAwIDAgNnB4IDFweCByZ2JhKDIzLCAxMjEsIDE4NiwgMC41KTtcbn1cbmEudGh1bWJuYWlsIGltYWdlIHtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cblxuLm1lbnUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm1lbnUgbGkge1xuICBvdXRsaW5lOiAwO1xufVxuLm1lbnUgYSxcbi5tZW51IC5idXR0b24ge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4ubWVudSBpbnB1dCxcbi5tZW51IHNlbGVjdCxcbi5tZW51IGEsXG4ubWVudSBidXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm1lbnUgaW5wdXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4ubWVudSBsaSwgLm1lbnUuaG9yaXpvbnRhbCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5tZW51LnZlcnRpY2FsIGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ubWVudS5leHBhbmRlZCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbn1cbi5tZW51LmV4cGFuZGVkID4gbGkge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lbnUuc2ltcGxlIGxpICsgbGkge1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbi5tZW51LnNpbXBsZSBhIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZW51Lm1lZGl1bS1ob3Jpem9udGFsIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXZlcnRpY2FsIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51Lm1lZGl1bS1leHBhbmRlZCA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51LmxhcmdlLWhvcml6b250YWwgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuICAubWVudS5sYXJnZS12ZXJ0aWNhbCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LmxhcmdlLWV4cGFuZGVkID4gbGkge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgfVxuICAubWVudS5sYXJnZS1zaW1wbGUge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZW51LmxhcmdlLXNpbXBsZSA+IGxpIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIH1cbn1cbi5tZW51Lm5lc3RlZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ubWVudS5pY29ucyBpbWcsXG4ubWVudS5pY29ucyBpLFxuLm1lbnUuaWNvbnMgc3ZnIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5tZW51Lmljb25zIGltZyArIHNwYW4sXG4ubWVudS5pY29ucyBpICsgc3Bhbixcbi5tZW51Lmljb25zIHN2ZyArIHNwYW4ge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm1lbnUuaWNvbi10b3AgaW1nLFxuLm1lbnUuaWNvbi10b3AgaSxcbi5tZW51Lmljb24tdG9wIHN2ZywgLm1lbnUuaWNvbi1yaWdodCBpbWcsXG4ubWVudS5pY29uLXJpZ2h0IGksXG4ubWVudS5pY29uLXJpZ2h0IHN2ZywgLm1lbnUuaWNvbi1ib3R0b20gaW1nLFxuLm1lbnUuaWNvbi1ib3R0b20gaSxcbi5tZW51Lmljb24tYm90dG9tIHN2ZywgLm1lbnUuaWNvbi1sZWZ0IGltZyxcbi5tZW51Lmljb24tbGVmdCBpLFxuLm1lbnUuaWNvbi1sZWZ0IHN2ZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4ubWVudS5pY29uLXRvcCBpbWcgKyBzcGFuLFxuLm1lbnUuaWNvbi10b3AgaSArIHNwYW4sXG4ubWVudS5pY29uLXRvcCBzdmcgKyBzcGFuLCAubWVudS5pY29uLXJpZ2h0IGltZyArIHNwYW4sXG4ubWVudS5pY29uLXJpZ2h0IGkgKyBzcGFuLFxuLm1lbnUuaWNvbi1yaWdodCBzdmcgKyBzcGFuLCAubWVudS5pY29uLWJvdHRvbSBpbWcgKyBzcGFuLFxuLm1lbnUuaWNvbi1ib3R0b20gaSArIHNwYW4sXG4ubWVudS5pY29uLWJvdHRvbSBzdmcgKyBzcGFuLCAubWVudS5pY29uLWxlZnQgaW1nICsgc3Bhbixcbi5tZW51Lmljb24tbGVmdCBpICsgc3Bhbixcbi5tZW51Lmljb24tbGVmdCBzdmcgKyBzcGFuIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi5tZW51Lmljb24tbGVmdCBsaSBhIGltZyxcbi5tZW51Lmljb24tbGVmdCBsaSBhIGksXG4ubWVudS5pY29uLWxlZnQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi1sZWZ0IGxpIGEgaSxcbi5tZW51Lm5lc3RlZC5pY29uLWxlZnQgbGkgYSBzdmcge1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpbWcsXG4ubWVudS5pY29uLXJpZ2h0IGxpIGEgaSxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLXJpZ2h0IGxpIGEgaW1nLFxuLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBzdmcge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUuaWNvbi10b3AgbGkgYSwgLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51Lmljb24tdG9wIGxpIGEgaSxcbi5tZW51Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEgc3ZnIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDAuMjVyZW07XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaW1nLFxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBpLFxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSBzdmcsIC5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51Lm5lc3RlZC5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSBzdmcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwLjI1cmVtIGF1dG8gMDtcbn1cbi5tZW51IC5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubWVudSAuYWN0aXZlID4gYSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLm1lbnUuYWxpZ24tbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQudmVydGljYWwgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLm1lbnUuYWxpZ24tY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUuYWxpZ24tY2VudGVyIC5zdWJtZW51IGxpIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5tZW51IC5tZW51LXRleHQge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm1lbnUtY2VudGVyZWQgPiAubWVudSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5tZW51LWNlbnRlcmVkID4gLm1lbnUgLnN1Ym1lbnUgbGkge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjZmVmZWZlLCAwIDE0cHggMCAjZmVmZWZlO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNjYWNhY2EsIDAgMTRweCAwICNjYWNhY2E7XG59XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICM4YThhOGEsIDAgMTRweCAwICM4YThhOGE7XG59XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPXRydWVdID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmlzLWRyaWxsZG93biBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xufVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICByaWdodDogMXJlbTtcbn1cbi5kcmlsbGRvd24uYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bztcbn1cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbn1cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgfVxufVxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7XG59XG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cbi5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICB3aWR0aDogMTAwJTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTUuNjI1ZW0pIHtcbiAgLnBvc2l0aW9uLXRvcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0pO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNS42MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcCB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0pO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNS42MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgpO1xuICB9XG59XG5cbi5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNS42MjVlbSkge1xuICAucG9zaXRpb24tYm90dG9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoKTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTUuNjI1ZW0pIHtcbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgpO1xuICB9XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxNS42MjVlbSkge1xuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tYm90dG9tLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtKTtcbiAgfVxufVxuXG4ucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMTNweCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tb3ZlcmxhcCwgLm9mZi1jYW52YXMtY29udGVudC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy15OiBoaWRkZW47XG59XG5odG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4gYm9keSB7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDEwMDU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTAsIDEwLCAxMCwgMC40NSk7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnJldmVhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAxMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB6LWluZGV4OiAxMDA2O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5yZXZlYWwge1xuICBvdXRsaW5lOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxufVxuLnJldmVhbCAuY29sdW1uLCAucmV2ZWFsIC5jb2x1bW5zIHtcbiAgbWluLXdpZHRoOiAwO1xufVxuLnJldmVhbCA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHdpZHRoOiA2MDBweDtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICB9XG59XG4ucmV2ZWFsLmNvbGxhcHNlIHtcbiAgcGFkZGluZzogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwudGlueSB7XG4gICAgd2lkdGg6IDMwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAucmV2ZWFsLnNtYWxsIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwubGFyZ2Uge1xuICAgIHdpZHRoOiA5MCU7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuLnJldmVhbC5mdWxsIHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAucmV2ZWFsIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG4ucmV2ZWFsLndpdGhvdXQtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLnN0aWNreS1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5zdGlja3kge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zdGlja3kuaXMtc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDU7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnN0aWNreS5pcy1zdHVjay5pcy1hdC10b3Age1xuICB0b3A6IDA7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IGF1dG87XG59XG4uc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbn1cblxuLnRpdGxlLWJhciB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYmFja2dyb3VuZDogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4udGl0bGUtYmFyOjpiZWZvcmUsIC50aXRsZS1iYXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLnRpdGxlLWJhcjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi50aXRsZS1iYXIgLm1lbnUtaWNvbiB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuMjVyZW07XG59XG5cbi50aXRsZS1iYXItbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4udGl0bGUtYmFyLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuLnRvcC1iYXI6OmJlZm9yZSwgLnRvcC1iYXI6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6IFwiIFwiO1xufVxuLnRvcC1iYXI6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbi50b3AtYmFyIGlucHV0IHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuLnRvcC1iYXIgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi50b3AtYmFyIGlucHV0LmJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udG9wLWJhciAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICB3aWR0aDogMTAwJTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1tZWRpdW0gLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLXJpZ2h0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItbGVmdCxcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbGFyZ2UgLnRvcC1iYXItcmlnaHQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi50b3AtYmFyLXRpdGxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgcGFkZGluZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG59XG4udG9wLWJhci10aXRsZSAubWVudS1pY29uIHtcbiAgYm90dG9tOiAycHg7XG59XG5cbi50b3AtYmFyLWxlZnQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnRvcC1iYXItcmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG59XG4uY2xlYXJmaXg6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4udmlzaWJsZSB7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMGVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zaG93LWZvci1zbWFsbC1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LWZvci1zcixcbi5zaG93LW9uLWZvY3VzIHtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHggIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCkgIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cblxuLnNob3ctb24tZm9jdXM6YWN0aXZlLCAuc2hvdy1vbi1mb2N1czpmb2N1cyB7XG4gIHBvc2l0aW9uOiBzdGF0aWMgIWltcG9ydGFudDtcbiAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xufVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogbGFuZHNjYXBlKSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uaGlkZS1mb3ItbGFuZHNjYXBlLFxuLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5zaG93LWZvci1kYXJrLW1vZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLnNob3ctZm9yLWllIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIC5oaWRlLWZvci1pZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1mb3Itc3RpY2t5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmlzLXN0dWNrIC5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2xpZGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xufVxuXG4uc2xpZGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbn1cblxuLnNsaWRlLWluLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbn1cblxuLnNsaWRlLW91dC1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtaW4ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uZmFkZS1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IG9wYWNpdHk7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXRvcC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWJvdHRvbS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXkubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tdG9wLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogYm90dG9tO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1ib3R0b20ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdDtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1taWRkbGUteC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMC41KTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtaW4tdXAubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtaW4tZG93bi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC11cC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNjYWxlLW91dC1kb3duLm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc3Bpbi1vdXQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwLjc1dHVybik7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNwaW4taW4tY2N3Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC1jY3cubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc2xvdyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMjUwbXMgIWltcG9ydGFudDtcbn1cblxuLmxpbmVhciB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1vdXQge1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgdHJhbnNpdGlvbi1kZWxheTogMzAwbXMgIWltcG9ydGFudDtcbn1cblxuLmxvbmctZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2UtNztcbn1cbkBrZXlmcmFtZXMgc2hha2UtNyB7XG4gIDAlLCAxMCUsIDIwJSwgMzAlLCA0MCUsIDUwJSwgNjAlLCA3MCUsIDgwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNyUpO1xuICB9XG4gIDUlLCAxNSUsIDI1JSwgMzUlLCA0NSUsIDU1JSwgNjUlLCA3NSUsIDg1JSwgOTUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTclKTtcbiAgfVxufVxuXG4uc3Bpbi1jdyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzcGluLWN3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWN3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIH1cbn1cblxuLnNwaW4tY2N3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY2N3LTF0dXJuO1xufVxuQGtleWZyYW1lcyBzcGluLWNjdy0xdHVybiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMXR1cm4pO1xuICB9XG59XG5cbi53aWdnbGUge1xuICBhbmltYXRpb24tbmFtZTogd2lnZ2xlLTdkZWc7XG59XG5Aa2V5ZnJhbWVzIHdpZ2dsZS03ZGVnIHtcbiAgNDAlLCA1MCUsIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoN2RlZyk7XG4gIH1cbiAgMzUlLCA0NSUsIDU1JSwgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtN2RlZyk7XG4gIH1cbiAgMCUsIDMwJSwgNzAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc2hha2UsXG4uc3Bpbi1jdyxcbi5zcGluLWNjdyxcbi53aWdnbGUge1xuICBhbmltYXRpb24tZHVyYXRpb246IDUwMG1zO1xufVxuXG4uaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLnNsb3cge1xuICBhbmltYXRpb24tZHVyYXRpb246IDc1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5mYXN0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZSAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQgIWltcG9ydGFudDtcbn1cblxuLmVhc2UtaW4tb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbiB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuNTE1LCAwLjg0NSkgIWltcG9ydGFudDtcbn1cblxuLmJvdW5jZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NiwgLTAuMjQ1LCAwLjI0LCAxLjI0NSkgIWltcG9ydGFudDtcbn1cblxuLnNob3J0LWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIGFuaW1hdGlvbi1kZWxheTogNzAwbXMgIWltcG9ydGFudDtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stbG9hZGluZyAuc2xpY2stbGlzdCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgdXJsKFwiLi9hamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG59XG5cbi8qIEljb25zICovXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4vZm9udHMvc2xpY2sud29mZlwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuL2ZvbnRzL3NsaWNrLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMHB4O1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLXByZXY6aG92ZXIsIC5zbGljay1wcmV2OmZvY3VzLFxuLnNsaWNrLW5leHQ6aG92ZXIsXG4uc2xpY2stbmV4dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbi5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbi5zbGljay1uZXh0OmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4uc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjI1O1xufVxuLnNsaWNrLXByZXY6YmVmb3JlLFxuLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6IHdoaXRlO1xuICBvcGFjaXR5OiAwLjc1O1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiAtMjVweDtcbn1cbltkaXI9cnRsXSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAtMjVweDtcbn1cbi5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaQXCI7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCLihpJcIjtcbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogLTI1cHg7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLW5leHQge1xuICBsZWZ0OiAtMjVweDtcbiAgcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGklwiO1xufVxuW2Rpcj1ydGxdIC5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaQXCI7XG59XG5cbi8qIERvdHMgKi9cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogLTI1cHg7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc2xpY2stZG90cyBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDIwcHg7XG4gIHdpZHRoOiAyMHB4O1xuICBtYXJnaW46IDAgNXB4O1xuICBwYWRkaW5nOiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b24ge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDBweDtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogNXB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXIsIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246aG92ZXI6YmVmb3JlLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXM6YmVmb3JlIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgY29udGVudDogXCLigKJcIjtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMjBweDtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgZm9udC1zaXplOiA2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiBibGFjaztcbiAgb3BhY2l0eTogMC4yNTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG4uc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gIGNvbG9yOiBibGFjaztcbiAgb3BhY2l0eTogMC43NTtcbn1cblxuLyogU2xpZGVyICovXG4uc2xpY2stc2xpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi15O1xuICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stbGlzdCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cbi5zbGljay1saXN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbi5zbGljay1saXN0LmRyYWdnaW5nIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IGhhbmQ7XG59XG5cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNsaWNrLXRyYWNrOmJlZm9yZSwgLnNsaWNrLXRyYWNrOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG59XG4uc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay10cmFjayB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuW2Rpcj1ydGxdIC5zbGljay1zbGlkZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5zbGljay1zbGlkZSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1zbGlkZS5zbGljay1sb2FkaW5nIGltZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnNsaWNrLXNsaWRlLmRyYWdnaW5nIGltZyB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXNsaWRlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnNsaWNrLXZlcnRpY2FsIC5zbGljay1zbGlkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuXG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGJhY2tncm91bmQ6ICMwYjBiMGI7XG4gIG9wYWNpdHk6IDAuODtcbn1cblxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAxMDQzO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5tZnAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMCA4cHg7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5tZnAtY29udGFpbmVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWZwLWFsaWduLXRvcCAubWZwLWNvbnRhaW5lcjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWZwLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHotaW5kZXg6IDEwNDU7XG59XG5cbi5tZnAtaW5saW5lLWhvbGRlciAubWZwLWNvbnRlbnQsXG4ubWZwLWFqYXgtaG9sZGVyIC5tZnAtY29udGVudCB7XG4gIHdpZHRoOiAxMDAlO1xuICBjdXJzb3I6IGF1dG87XG59XG5cbi5tZnAtYWpheC1jdXIge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4ubWZwLXpvb20tb3V0LWN1ciwgLm1mcC16b29tLW91dC1jdXIgLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgY3Vyc29yOiAtd2Via2l0LXpvb20tb3V0O1xuICBjdXJzb3I6IHpvb20tb3V0O1xufVxuXG4ubWZwLXpvb20ge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogLXdlYmtpdC16b29tLWluO1xuICBjdXJzb3I6IC1tb3otem9vbS1pbjtcbiAgY3Vyc29yOiB6b29tLWluO1xufVxuXG4ubWZwLWF1dG8tY3Vyc29yIC5tZnAtY29udGVudCB7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC1jbG9zZSxcbi5tZnAtYXJyb3csXG4ubWZwLXByZWxvYWRlcixcbi5tZnAtY291bnRlciB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4ubWZwLWxvYWRpbmcubWZwLWZpZ3VyZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLm1mcC1wcmVsb2FkZXIge1xuICBjb2xvcjogI0NDQztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogLTAuOGVtO1xuICBsZWZ0OiA4cHg7XG4gIHJpZ2h0OiA4cHg7XG4gIHotaW5kZXg6IDEwNDQ7XG59XG4ubWZwLXByZWxvYWRlciBhIHtcbiAgY29sb3I6ICNDQ0M7XG59XG4ubWZwLXByZWxvYWRlciBhOmhvdmVyIHtcbiAgY29sb3I6ICNGRkY7XG59XG5cbi5tZnAtcy1yZWFkeSAubWZwLXByZWxvYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZnAtcy1lcnJvciAubWZwLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5idXR0b24ubWZwLWNsb3NlLCBidXR0b24ubWZwLWFycm93IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3V0bGluZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgei1pbmRleDogMTA0NjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBtYW5pcHVsYXRpb247XG59XG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIge1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbi5tZnAtY2xvc2Uge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3BhY2l0eTogMC42NTtcbiAgcGFkZGluZzogMCAwIDE4cHggMTBweDtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7XG59XG4ubWZwLWNsb3NlOmhvdmVyLCAubWZwLWNsb3NlOmZvY3VzIHtcbiAgb3BhY2l0eTogMTtcbn1cbi5tZnAtY2xvc2U6YWN0aXZlIHtcbiAgdG9wOiAxcHg7XG59XG5cbi5tZnAtY2xvc2UtYnRuLWluIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogIzMzMztcbn1cblxuLm1mcC1pbWFnZS1ob2xkZXIgLm1mcC1jbG9zZSxcbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICNGRkY7XG4gIHJpZ2h0OiAtNnB4O1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgcGFkZGluZy1yaWdodDogNnB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1mcC1jb3VudGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBjb2xvcjogI0NDQztcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLm1mcC1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgb3BhY2l0eTogMC42NTtcbiAgbWFyZ2luOiAwO1xuICB0b3A6IDUwJTtcbiAgbWFyZ2luLXRvcDogLTU1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiA5MHB4O1xuICBoZWlnaHQ6IDExMHB4O1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ubWZwLWFycm93OmFjdGl2ZSB7XG4gIG1hcmdpbi10b3A6IC01NHB4O1xufVxuLm1mcC1hcnJvdzpob3ZlciwgLm1mcC1hcnJvdzpmb2N1cyB7XG4gIG9wYWNpdHk6IDE7XG59XG4ubWZwLWFycm93OmJlZm9yZSwgLm1mcC1hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWFyZ2luLXRvcDogMzVweDtcbiAgbWFyZ2luLWxlZnQ6IDM1cHg7XG4gIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xufVxuLm1mcC1hcnJvdzphZnRlciB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDEzcHg7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDEzcHg7XG4gIHRvcDogOHB4O1xufVxuLm1mcC1hcnJvdzpiZWZvcmUge1xuICBib3JkZXItdG9wLXdpZHRoOiAyMXB4O1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAyMXB4O1xuICBvcGFjaXR5OiAwLjc7XG59XG5cbi5tZnAtYXJyb3ctbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG4ubWZwLWFycm93LWxlZnQ6YWZ0ZXIge1xuICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDMxcHg7XG59XG4ubWZwLWFycm93LWxlZnQ6YmVmb3JlIHtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAjM0YzRjNGO1xufVxuXG4ubWZwLWFycm93LXJpZ2h0IHtcbiAgcmlnaHQ6IDA7XG59XG4ubWZwLWFycm93LXJpZ2h0OmFmdGVyIHtcbiAgYm9yZGVyLWxlZnQ6IDE3cHggc29saWQgI0ZGRjtcbiAgbWFyZ2luLWxlZnQ6IDM5cHg7XG59XG4ubWZwLWFycm93LXJpZ2h0OmJlZm9yZSB7XG4gIGJvcmRlci1sZWZ0OiAyN3B4IHNvbGlkICMzRjNGM0Y7XG59XG5cbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIHBhZGRpbmctdG9wOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbn1cbi5tZnAtaWZyYW1lLWhvbGRlciAubWZwLWNvbnRlbnQge1xuICBsaW5lLWhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogOTAwcHg7XG59XG4ubWZwLWlmcmFtZS1ob2xkZXIgLm1mcC1jbG9zZSB7XG4gIHRvcDogLTQwcHg7XG59XG5cbi5tZnAtaWZyYW1lLXNjYWxlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG59XG4ubWZwLWlmcmFtZS1zY2FsZXIgaWZyYW1lIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBib3gtc2hhZG93OiAwIDAgOHB4IHJnYmEoMCwgMCwgMCwgMC42KTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLyogTWFpbiBpbWFnZSBpbiBwb3B1cCAqL1xuaW1nLm1mcC1pbWcge1xuICB3aWR0aDogYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBsaW5lLWhlaWdodDogMDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgcGFkZGluZzogNDBweCAwIDQwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4vKiBUaGUgc2hhZG93IGJlaGluZCB0aGUgaW1hZ2UgKi9cbi5tZnAtZmlndXJlIHtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4ubWZwLWZpZ3VyZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiA0MHB4O1xuICBib3R0b206IDQwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICByaWdodDogMDtcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgei1pbmRleDogLTE7XG4gIGJveC1zaGFkb3c6IDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpO1xuICBiYWNrZ3JvdW5kOiAjNDQ0O1xufVxuLm1mcC1maWd1cmUgc21hbGwge1xuICBjb2xvcjogI0JEQkRCRDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbGluZS1oZWlnaHQ6IDE0cHg7XG59XG4ubWZwLWZpZ3VyZSBmaWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi5tZnAtYm90dG9tLWJhciB7XG4gIG1hcmdpbi10b3A6IC0zNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGN1cnNvcjogYXV0bztcbn1cblxuLm1mcC10aXRsZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICBjb2xvcjogI0YzRjNGMztcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBwYWRkaW5nLXJpZ2h0OiAzNnB4O1xufVxuXG4ubWZwLWltYWdlLWhvbGRlciAubWZwLWNvbnRlbnQge1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tZnAtZ2FsbGVyeSAubWZwLWltYWdlLWhvbGRlciAubWZwLWZpZ3VyZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSksIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDMwMHB4KSB7XG4gIC8qKlxuICAgKiBSZW1vdmUgYWxsIHBhZGRpbmdzIGFyb3VuZCB0aGUgaW1hZ2Ugb24gc21hbGwgc2NyZWVuXG4gICAqL1xuICAubWZwLWltZy1tb2JpbGUgLm1mcC1pbWFnZS1ob2xkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSBpbWcubWZwLWltZyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1maWd1cmU6YWZ0ZXIge1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtZmlndXJlIHNtYWxsIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNik7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgcGFkZGluZzogM3B4IDVweDtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuICAubWZwLWltZy1tb2JpbGUgLm1mcC1ib3R0b20tYmFyOmVtcHR5IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5tZnAtaW1nLW1vYmlsZSAubWZwLWNvdW50ZXIge1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgdG9wOiAzcHg7XG4gIH1cbiAgLm1mcC1pbWctbW9iaWxlIC5tZnAtY2xvc2Uge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgLm1mcC1hcnJvdyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC43NSk7XG4gIH1cbiAgLm1mcC1hcnJvdy1sZWZ0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDA7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMDtcbiAgfVxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMTAwJTtcbiAgfVxuICAubWZwLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiA2cHg7XG4gICAgcGFkZGluZy1yaWdodDogNnB4O1xuICB9XG59XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMS4gR2VuZXJhbCAoRm91bmRhdGlvbiBPdmVycmlkZXMpXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIDEuIEdlbmVyYWwgKEZvdW5kYXRpb24gT3ZlcnJpZGVzKVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMS43O1xuICBtYXJnaW46IDA7XG59XG5ib2R5LnNsaWRlLWFjdGl2ZSB7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbn1cbmJvZHkge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjdzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuYm9keS5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogOTAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgxIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuXG5oNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxucCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG5hIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuYTphY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuXG51bCxcbm9sIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG51bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbnRhYmxlIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbnRhYmxlIHRyIHRkLFxudGFibGUgdGhlYWQgdHIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbnRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQ6ICM3MDcwNzA7XG59XG5cbi5iZy1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wcm9kdWN0LXBhcmFncmFwaCB7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmluZm8tLWxpbWl0IHtcbiAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmluZm8tLWhlaWdodCB7XG4gIGhlaWdodDogNmVtO1xufVxuXG4ucGFyYWxsYXgge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5wYXJhbGxheCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnBhcmFsbGF4IGgxLFxuLnBhcmFsbGF4IGgyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAzcmVtO1xuICB0b3A6IDI1JTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFyYWxsYXggaDEsXG4gIC5wYXJhbGxheCBoMiB7XG4gICAgcGFkZGluZzogNC41cmVtIDUuNDM3NXJlbTtcbiAgfVxufVxuLnBhcmFsbGF4IGgxIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4zNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYXJhbGxheCBoMSB7XG4gICAgZm9udC1zaXplOiA2LjVyZW07XG4gIH1cbn1cbi5wYXJhbGxheCBoMSAudGl0bGUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4ucGFyYWxsYXggaDEgLnN1YnRpdGxlIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnBhcmFsbGF4IGgxIC5zdWJ0aXRsZSBzcGFuIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbG93ZXJjYXNlO1xufVxuLnBhcmFsbGF4IC5pbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5wYXJhbGxheCAuaW1nIC5iZy10b3Age1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xufVxuLnBhcmFsbGF4IC5pbWc6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgY29udGVudDogXCJcIjtcbn1cblxuLndoaXRlLXBvcHVwIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG59XG4ud2hpdGUtcG9wdXAgLnBvcHVwLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLndoaXRlLXBvcHVwIC5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLm5vLXJlc3VsdHMge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ub3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogd2hpdGU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub3ZlcmxheS0tbmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMy4ycmVtO1xufVxuXG4ucHJpbWFyeSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuXG4ucHJpbWFyeS1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5wcmltYXJ5LWJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcGFkZGluZzogMC44cmVtIDEuOXJlbTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLnByaW1hcnktYnRuIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnJlZC1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5ibGFjay1mb250IHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5yZWQge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cblxuLndoaXRlIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5cbi5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xufVxuXG4ucGlsbCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwLjY1cmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGlsbCB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB9XG59XG4ucGlsbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5uby1tYXJnaW4ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uYnV0dG9uLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7XG4gIGNvbG9yOiAjMzIzMjMyO1xufVxuXG4uYmxhY2ssXG4uYnV0dG9uLmJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLmJ1dHRvbixcbi50ZXh0LXVwcGVyY2FzZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbi5mb250LWxpZ2h0IHtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbn1cblxuLmZvbnQtbm9ybWFsIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cblxuLmZvbnQtYm9sZCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5mb250LWhlYXZ5IHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbn1cblxuLmZvbnQtaXRhbGljIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uZy1yZWNhcHRjaGEge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuI2NhcHRjaGFDaGVjayB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnBhZGRlZCB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cblxuLnBhZGRlZC5leHRyYSB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cblxuLnBhZGRlZC5zaG9ydCB7XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5cbi5wYWRkZWQtbGVmdCB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuXG4ucGFkZGVkLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xufVxuXG4uY29udGFpbmVyLXBhZGRpbmctLWIge1xuICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbn1cblxuLmFjY29yZGlvbiAuYWNjb3JkaW9uLW5hdmlnYXRpb24gPiAuY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmFuY2hvciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtM3JlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLmZ1bGwtd2lkdGgge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4ubWVudS5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ubWVudSA+IGxpOm5vdCgubWVudS10ZXh0KSA+IGEge1xuICBwYWRkaW5nOiAwLjVyZW0gMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5tZW51ID4gbGk6bm90KC5tZW51LXRleHQpID4gYSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuXG4uZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udGl0bGUtYmFyLFxuLnRvcC1iYXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi50b3AtYmFyIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNTUsIDI1NSk7XG4gIGJvcmRlcjogMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQuaXMtZG93bi1hcnJvdyA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDBweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogI2QwMDIwNCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDBweDtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjZDAwMjA0O1xuICByaWdodDogNXB4O1xufVxuXG4uZHJvcGRvd24ubWVudSA+IGxpID4gYTpob3Zlcixcbi5kcm9wZG93bi5tZW51ID4gbGkgPiB1bCBsaSBhOmhvdmVyLFxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkgPiB1bCBsaSBhIHtcbiAgcGFkZGluZzogMC41cmVtIDByZW07XG59XG5cbi5kcm9wZG93bi5tZW51ID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTU0JTtcbiAgbWluLXdpZHRoOiAyODBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbiNpbnN0YWZlZWQgLmNvbHVtbiwgI2luc3RhZmVlZCAuY29sdW1ucyB7XG4gIHBhZGRpbmc6IDFweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjNlbSkge1xuICAuaW50LnNpdGUtY29udGVudCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG4vKioqKioqKioqIFZJREVPICoqKioqKioqKi9cbiN2aWRlb3Mge1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuI3ZpZGVvcyBhOmhvdmVyIHtcbiAgY29sb3I6ICM2NjY7XG59XG4jdmlkZW9zIGE6OmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMCk7XG59XG4jdmlkZW9zIHAge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cbiN2aWRlb3MgI25leHQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cbiN2aWRlb3MgI3ZpZGVvLWNvbnRhaW5lciAuY29sdW1uIGEsICN2aWRlb3MgI3ZpZGVvLWNvbnRhaW5lciAuY29sdW1ucyBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndoaXRlLXBvcHVwLS13aWRlIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbn1cblxuLmhvdmVyLWl0ZW0tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxcmVtIDA7XG59XG5cbi5ob3Zlci1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ob3Zlci1pdGVtOmhvdmVyIC5ob3Zlci1pdGVtX19pbWcge1xuICBvcGFjaXR5OiAxO1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmhvdmVyLWl0ZW1fX2hlYWRlciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuLmhvdmVyLWl0ZW1fX2hlYWRlcixcbi5ob3Zlci1pdGVtIGg2IHNtYWxsIHtcbiAgY29sb3I6ICM1NDU0NTQ7XG59XG4uaG92ZXItaXRlbV9faW1nIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LWFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbi5wb3B1cC1ia2cgLm1mcC1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4ucG9wdXAtYmtnIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogIzAwMDtcbiAgcmlnaHQ6IDA7XG59XG5cbi5zb2NpYWwtbWVudSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uc29jaWFsLW1lbnUgPiBkaXYge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4uc29jaWFsLW1lbnUgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDEuNzVyZW07XG59XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6IDkwcmVtO1xufVxuXG4ucGFnZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgLyogIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIH0qL1xufVxuLnBhZ2UtaGVhZGVyIC5yb3cge1xuICB3aWR0aDogMTAwJTtcbn1cbi5wYWdlLWhlYWRlciBoMSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1oZWFkZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMi43NXJlbTtcbiAgfVxufVxuLnBhZ2UtaGVhZGVyIGgxIHtcbiAgLypcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgaGVpZ2h0OiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOjIxNHB4O1xuICAgIG1hcmdpbjowIGF1dG87XG4gIH0qL1xufVxuLnBhZ2UtaGVhZGVyIHAge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtaGVhZGVyIHAge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDJweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIG1heC13aWR0aDogMzcwcHg7XG4gIH1cbn1cbi5wYWdlLWhlYWRlciB7XG4gIC8qXG4gIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpe1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZToxNDAlO1xuICAgIH1cbiAgfSovXG59XG4ucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICBwYWRkaW5nOiAycmVtIDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5wYWdlLWhlYWRlciAucGFnZS10aXRsZSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gIH1cbn1cblxuLypcbi5wYWdlLWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgLy9oZWlnaHQ6MTAwdmg7XG4gIH1cbiAgaDEge1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLnJvdyB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzowIDIuODEyNXJlbTtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6MXJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjRyZW0gMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4qL1xuLnBhZ2UtY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucGFnZS1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuICB9XG59XG5cbi5sb2FkaW5nLXBhZ2Uge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYm9yZGVyOiA2MDBweCBzb2xpZCAjZDAwMjA0O1xuICB0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG59XG4ubG9hZGluZy1wYWdlLmNsb3NlIHtcbiAgYm9yZGVyOiAwcHggc29saWQgI2QwMDIwNDtcbn1cbi5sb2FkaW5nLXBhZ2UtcG9wdXAge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGhlaWdodDogMTAwdmg7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYm9yZGVyOiA2MDBweCBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBkaXNwbGF5OiBub25lO1xuICBvcGFjaXR5OiAwO1xufVxuLmxvYWRpbmctcGFnZS1wb3B1cC5zaG93IHtcbiAgb3BhY2l0eTogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4ubG9hZGluZy1wYWdlLXBvcHVwLmZhbmN5Ym94LW1hcmdpbiB7XG4gIG9wYWNpdHk6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRpbmcgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi8ge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0aW5nIHtcbiAgZnJvbSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICB0byB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi5sb2FkaW5nLXBhZ2UtcG9wdXAgLnJvdGF0aW5nIHtcbiAgLXdlYmtpdC1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1zLWFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICAtby1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cblxuW2RhdGEtZmMtc2lkZWNhcnRdICNmYyBuYXYgLmZjLWZpeGVkLWJ1dHRvbi1yaWdodCAuZmMtc2lkZWNhcnQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogIzMzNjY5OTtcbn1cbltkYXRhLWZjLXNpZGVjYXJ0XSAjZmMgLmZjLWFjdGlvbi0tY2hlY2tvdXQtLWJ1dHRvbiB7XG4gIGJhY2tncm91bmQ6ICMzMzY2OTk7XG59XG5bZGF0YS1mYy1zaWRlY2FydF0gI2ZjIC5mYy1hY3Rpb24tLWNoZWNrb3V0LS1idXR0b246aG92ZXIge1xuICBjb2xvcjogIzMzMzMzMztcbn1cblxuI2ZpdG1lbnQtcG9wdXAge1xuICBwYWRkaW5nOiAycmVtO1xufVxuI2ZpdG1lbnQtcG9wdXAgLmZpdG1lbnQtcG9wdXAtaWNvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbiNmaXRtZW50LXBvcHVwIGg0IHtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiNmaXRtZW50LXBvcHVwIHNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG59XG4jZml0bWVudC1wb3B1cCAuYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuI2ZpdG1lbnQtcG9wdXAgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4jZml0bWVudC1wb3B1cCAjZml0bWVudENsZWFyIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogIzMzMzMzMztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jZml0bWVudC1wb3B1cCAjZml0bWVudENsZWFyOmhvdmVyIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5wcm9jZXNzaW5nIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ucHJvY2Vzc2luZyAubWZwLWNsb3NlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI25ld3NsZXR0ZXItcG9wdXAge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1heC13aWR0aDogNTgwcHg7XG4gIHBhZGRpbmc6IDNyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCBpIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xufVxuI25ld3NsZXR0ZXItcG9wdXAgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI25ld3NsZXR0ZXItcG9wdXAgcCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4jbmV3c2xldHRlci1wb3B1cCAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI25ld3NsZXR0ZXItcG9wdXAgLmljb24ge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCAuY29udGVudCB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG59XG4jbmV3c2xldHRlci1wb3B1cCAjbWNfZW1iZWRfc2lnbnVwIGlucHV0IHtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXItcmFkaXVzOiAzcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI25ld3NsZXR0ZXItcG9wdXAgI21jX2VtYmVkX3NpZ251cCBpbnB1dDo6cGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUsIEZpcmVmb3gsIE9wZXJhLCBTYWZhcmkgMTAuMSsgKi9cbiAgY29sb3I6ICM2NjY2NjY7XG4gIG9wYWNpdHk6IDE7IC8qIEZpcmVmb3ggKi9cbn1cbiNuZXdzbGV0dGVyLXBvcHVwICNtY19lbWJlZF9zaWdudXAgaW5wdXQ6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTAtMTEgKi9cbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jbmV3c2xldHRlci1wb3B1cCAjbWNfZW1iZWRfc2lnbnVwIGlucHV0OjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBNaWNyb3NvZnQgRWRnZSAqL1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiNuZXdzbGV0dGVyLXBvcHVwICNtY19lbWJlZF9zaWdudXAgaW5wdXQuYnV0dG9uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDE3NXB4O1xuICBoZWlnaHQ6IDU0cHg7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxMC4gRm9ybXNcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKiBob25leXBvdCAqL1xuLm9obm9ob25leSB7XG4gIG9wYWNpdHk6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICB6LWluZGV4OiAtMTtcbn1cblxuLyogbG9hZGVyICovXG4ubGRzLWVsbGlwc2lzLFxuLmxkcy1lbGxpcHNpcyBkaXYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4ubGRzLWVsbGlwc2lzIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiA4MHB4O1xuICBoZWlnaHQ6IDgwcHg7XG4gIGNvbG9yOiAjYjliOWI5O1xufVxuXG4ubGRzLWVsbGlwc2lzIGRpdiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAzMy4zMzMzM3B4O1xuICB3aWR0aDogMTMuMzMzMzNweDtcbiAgaGVpZ2h0OiAxMy4zMzMzM3B4O1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQ6IGN1cnJlbnRDb2xvcjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAsIDEsIDEsIDApO1xufVxuXG4ubGRzLWVsbGlwc2lzIGRpdjpudGgtY2hpbGQoMSkge1xuICBsZWZ0OiA4cHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMSAwLjZzIGluZmluaXRlO1xufVxuXG4ubGRzLWVsbGlwc2lzIGRpdjpudGgtY2hpbGQoMikge1xuICBsZWZ0OiA4cHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMiAwLjZzIGluZmluaXRlO1xufVxuXG4ubGRzLWVsbGlwc2lzIGRpdjpudGgtY2hpbGQoMykge1xuICBsZWZ0OiAzMnB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczIgMC42cyBpbmZpbml0ZTtcbn1cblxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgbGVmdDogNTZweDtcbiAgYW5pbWF0aW9uOiBsZHMtZWxsaXBzaXMzIDAuNnMgaW5maW5pdGU7XG59XG5cbkBrZXlmcmFtZXMgbGRzLWVsbGlwc2lzMSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGRzLWVsbGlwc2lzMyB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGRzLWVsbGlwc2lzMiB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgyNHB4LCAwKTtcbiAgfVxufVxuLnQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi50LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC50LWNlbnRlci0tc20ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLnQtcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLmNvbG9yLS1ncmF5IHtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cbi5tYXJnaW4tLXRiIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5wYWRkaW5nLS10YiB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbi5mLWNlbnRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSGVhZGVyXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiKDAsIDAsIDApO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG59XG5oZWFkZXIubWFpbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlci5tYWluIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5oZWFkZXIgLnJvdyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG59XG5oZWFkZXIgLnRvcC1iYXIge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuaGVhZGVyLnN0aWNreSB7XG4gIGhlaWdodDogODBweDtcbn1cbmhlYWRlci5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiBhdXRvO1xufVxuaGVhZGVyLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5oZWFkZXIgLmNzcy0xaWQzbmZuIHtcbiAgZmlsbDogbm9uZTtcbiAgc3Ryb2tlOiAjZmVmZWZlO1xufVxuaGVhZGVyICNzdmctbWVnYW1lbnUtb3BlbiB7XG4gIHdpZHRoOiAxOHB4O1xuICBoZWlnaHQ6IDE4cHg7XG4gIGZpbGw6ICNmZWZlZmU7XG4gIHN0cm9rZS13aWR0aDogMXJlbTtcbn1cbmhlYWRlciAuaGVhZGVyLWxlZnQsIGhlYWRlciAuaGVhZGVyLWNlbnRlciwgaGVhZGVyIC5oZWFkZXItcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbmhlYWRlciAuaGVhZGVyLWxlZnQgc3ZnIHBhdGgsIGhlYWRlciAuaGVhZGVyLWxlZnQgc3BhbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBzdHJva2U6ICNmZWZlZmU7XG59XG5oZWFkZXIgLmhlYWRlci1sZWZ0IGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAuaGVhZGVyLWxlZnQgYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgfVxufVxuaGVhZGVyIC5oZWFkZXItbGVmdCBidXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbmhlYWRlciAuaGVhZGVyLWxlZnQgLmNzcy0xd2hicGtuIHtcbiAgcGFkZGluZzogMCAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5oZWFkZXIgLmhlYWRlci1jZW50ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbmhlYWRlciAuaGVhZGVyLWNlbnRlciAuaGVhZGVyLWxvZ28ge1xuICBtYXgtd2lkdGg6IDIyMHB4O1xufVxuaGVhZGVyIC5oZWFkZXItY2VudGVyIC5oZWFkZXItbG9nbyBpbWcge1xuICBtYXgtaGVpZ2h0OiA0MnB4O1xufVxuaGVhZGVyIC5oZWFkZXItcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuaGVhZGVyIC5oZWFkZXItcmlnaHQgYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuODVyZW07XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCBhIHNwYW4ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAuaGVhZGVyLXJpZ2h0IC5oZWFkZXItc29jaWFsIHVsID4gbGkge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbn1cbmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5oZWFkZXItc29jaWFsIHVsID4gbGk6Zmlyc3QtY2hpbGQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbmhlYWRlciAuaGVhZGVyLXJpZ2h0IC5oZWFkZXItc29jaWFsIHVsID4gbGkgYSB7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogdW5zZXQ7XG59XG5oZWFkZXIgLmhlYWRlci1yaWdodCAuaGVhZGVyLXNvY2lhbCB1bCA+IGxpIC5mb290ZXItc29jaWFsLWRpdmlkZXIge1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuaGVhZGVyIC5oZWFkZXItcmlnaHQgLmhlYWRlci1zb2NpYWwgaSB7XG4gIGhlaWdodDogYXV0bztcbn1cbmhlYWRlci5tZWdhbWVudS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuaGVhZGVyLm1lZ2FtZW51LWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG5oZWFkZXIgLm1lZ2FtZW51IHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGhlaWdodDogMTAwdmg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAubWVnYW1lbnUge1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuaGVhZGVyIC5tZWdhbWVudSAuZHJvcGRvd24ubWVudSA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5kcm9wZG93bi5tZW51ID4gbGkgPiBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5oZWFkZXIgLm1lZ2FtZW51IGEge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5oZWFkZXIgLm1lZ2FtZW51IGEubWVudS1icmFuZHMgaSB7XG4gIG1hcmdpbi1sZWZ0OiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudSBhLm1lbnUtYnJhbmRzIGkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbmhlYWRlciAubWVnYW1lbnUgaDIge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuaGVhZGVyIC5tZWdhbWVudS1tZW51IHVsLmRyb3Bkb3duLm1lbnUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXJnaW4tYm90dG9tOiAxLjc1cmVtO1xufVxuaGVhZGVyIC5tZWdhbWVudS1tZW51IHVsLmRyb3Bkb3duLm1lbnU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5oZWFkZXIgLm1lZ2FtZW51LW1lbnUgdWwuZHJvcGRvd24ubWVudSA+IGxpIGEge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudS1tZW51IHVsLmRyb3Bkb3duLm1lbnUgPiBsaSBhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbn1cbmhlYWRlciAubWVnYW1lbnUtbWVudS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeSB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBvdmVyZmxvdzogYXV0bztcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAtNjQwcHg7XG4gIGxlZnQ6IDY0MHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnkuYWN0aXZlIHtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LmFjdGl2ZSAuY2xvc2UtbWVudS1icmFuZHMge1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LmFjdGl2ZSAuY2xvc2UtbWVudS1icmFuZHMgaSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnkge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIGhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIH1cbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnkgYTpob3ZlciAuaW1hZ2UgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnkgYTpob3ZlciAuaW1hZ2Ugc3BhbiB7XG4gIG9wYWNpdHk6IDE7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LWl0ZW0ge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5pbWFnZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5oZWFkZXIgLm1lZ2FtZW51IC5tZWdhbWVudS1nYWxsZXJ5LWl0ZW0gLmJyYW5kIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5icmFuZCBpbWcge1xuICB3aWR0aDogNTAlO1xuICBtYXgtaGVpZ2h0OiAzNnB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5icmFuZCBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDM4cHg7XG4gIH1cbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbS1ob3Zlci1vdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiAwO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuaGVhZGVyIC5tZWdhbWVudSAubWVnYW1lbnUtZ2FsbGVyeS1pdGVtIC5kaXNjb3Zlci1tb3JlIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbmhlYWRlciAubWVnYW1lbnUgLm1lZ2FtZW51LWdhbGxlcnktaXRlbSAuZGlzY292ZXItbW9yZSBpIHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5oZWFkZXIgLmlzLWRyaWxsZG93biB7XG4gIG1heC13aWR0aDogMzcwcHggIWltcG9ydGFudDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAuaXMtZHJpbGxkb3duIHtcbiAgICBtaW4taGVpZ2h0OiA0NjYuMTI1cHggIWltcG9ydGFudDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMy4gVG9wIGJhclxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5zdGlja3ktY29udGFpbmVyIHtcbiAgei1pbmRleDogMjA7XG59XG5cbmhlYWRlci5tYWluIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIGhlYWRlci5tYWluIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuaGVhZGVyIHtcbiAgLyovLy8gTWFpbiBOYXZpZ2F0aW9uIC8vLyovXG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICBoZWFkZXIgLnRvcC1iYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgaGVhZGVyIC50b3AtYmFyIHtcbiAgICBoZWlnaHQ6IDgwcHg7XG4gIH1cbn1cbmhlYWRlciAudG9wLWJhciAubWVudS5pY29uLXRvcCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjOGE4YThhO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjRyZW0pIHtcbiAgaGVhZGVyIC50b3AtYmFyIC5tZW51Lmljb24tdG9wID4gbGkgPiBhIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLm1lbnUuaWNvbi10b3AgPiBsaSA+IGEgaSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuaGVhZGVyIC50b3AtYmFyIC5maXJzdC1zdWIge1xuICBsZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHRvcDogNDRweCAhaW1wb3J0YW50O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICBoZWFkZXIgLnRvcC1iYXIgLmhlYWRlci1sb2dvIHtcbiAgICB0b3A6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciAjcmVzcG9uc2l2ZS1tZW51IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG59XG5cbmhlYWRlciAucm93IHtcbiAgbWF4LXdpZHRoOiA4MS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLnRvcC1iYXItdGl0bGUge1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLXRpdGxlIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgI3Jlc3BvbnNpdmUtbWVudSB7XG4gICAgd2lkdGg6IDY4JTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgI3Jlc3BvbnNpdmUtbWVudSAudG9wLWJhci1yaWdodCwgaGVhZGVyIC50b3AtYmFyICNyZXNwb25zaXZlLW1lbnUgLnRvcC1iYXItcmlnaHQgPiB1bCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyICNyZXNwb25zaXZlLW1lbnUgLnRvcC1iYXItcmlnaHQgPiB1bDpmaXJzdC1jaGlsZCB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogMTIlO1xuICB9XG4gIGhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYSB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzMzMzM7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyNXJlbTtcbiAgfVxuICBoZWFkZXIgLnRvcC1iYXIgLm5hdi1tZW51LXJpZ2h0IGE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM5OTk5OTk7XG4gIH1cbiAgaGVhZGVyIC50b3AtYmFyIC5uYXYtbWVudS1yaWdodCB1bCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIGhlYWRlciAudG9wLWJhciB7XG4gICAgaGVpZ2h0OiA4MHB4O1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICB9XG59XG5oZWFkZXIgLnRvcC1iYXIgYSB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xufVxuaGVhZGVyIC50b3AtYmFyIGEuYWN0aXZlLXBhZ2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAtMC42cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgaGVpZ2h0OiAzcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLWxlZnQge1xuICBwYWRkaW5nOiA4cHggMDtcbiAgcGFkZGluZy1yaWdodDogMiU7XG59XG5oZWFkZXIgLnRvcC1iYXIgLmhwLWJ0bi1saW5rcyBhIHtcbiAgZm9udC1zaXplOiAxLjJyZW07XG4gIHBhZGRpbmctbGVmdDogMS44cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjhyZW07XG4gIG1hcmdpbi1sZWZ0OiA4cHg7XG59XG5oZWFkZXIgLnRvcC1iYXItdGl0bGUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICBoZWFkZXIgLnRvcC1iYXItdGl0bGUgLmhlYWRlci1sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5oZWFkZXIgLnRvcC1iYXItdGl0bGUgLmhlYWRlci1sb2dvIGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbmhlYWRlciAudG9wLWJhci10aXRsZSAubW9iaWxlLW5hdi1tZW51LXJpZ2h0IHVsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5oZWFkZXIgLnRvcC1iYXItdGl0bGUgLm1vYmlsZS1uYXYtbWVudS1yaWdodCB1bCBhIHtcbiAgcGFkZGluZzogMC41cmVtO1xufVxuaGVhZGVyIC5uYXYtbWVudS1yaWdodCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbmhlYWRlciAubmF2LW1lbnUtcmlnaHQgbGkgYSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbn1cblxuLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gIGxlZnQ6IDA7XG59XG5cbi5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6IDExO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNXMgZWFzZSwgdmlzaWJpbGl0eSAwLjVzIGVhc2U7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43NSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy12aXNpYmxlIHtcbiAgb3BhY2l0eTogMTtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLW92ZXJsYXktZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5cbi5vZmYtY2FudmFzLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub2ZmLWNhbnZhcyB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDEzO1xufVxuXG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cblxuLm9mZi1jYW52YXMuaXMtb3BlbiB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cblxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1jbG9zZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gIHotaW5kZXg6IDEzO1xufVxuXG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtb3BlbiB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAzNzVweDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTM3NXB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXAzNzVweHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NDVweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NDVweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdCB7XG4gICAgd2lkdGg6IDQ0NXB4O1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tbGVmdC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDQ1cHgpO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7XG4gIH1cbn1cbi5wb3NpdGlvbi1yaWdodCB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgd2lkdGg6IDI1MHB4O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLXJpZ2h0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbn1cblxuLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAwIC0xM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLnBvc2l0aW9uLWJvdHRvbSB7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbSB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWJvdHRvbS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5pcy1vcGVuIHtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1sZWZ0IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1ib3R0b20ge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2Uge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICB3aWR0aDogaW5oZXJpdDtcbiAgICBvdmVyZmxvdzogaW5oZXJpdDtcbiAgICB0cmFuc2l0aW9uOiBpbmhlcml0O1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tbGVmdCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tYm90dG9tIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLm9mZi1jYW52YXMgPiBkaXYgPiBkaXYge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG4ub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgLyp3aWR0aDo0NDVweDsgLy8gTmVlZCB0byB1cGRhdGUganMgYmVmb3JlIGFwcGx5aW5nLi4uLiovXG4gIHdpZHRoOiAzNzVweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgIHdpZHRoOiA0NDVweDtcbiAgfVxufVxuLm9mZi1jYW52YXMucG9zaXRpb24tbGVmdCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC44MjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG4ub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5vZmYtY2FudmFzIC5jbG9zZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHdpZHRoOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBwYWRkaW5nOiAxLjI1cmVtIDJyZW07XG4gIGZvbnQtc2l6ZTogMC44MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uIHNwYW4ge1xuICBmb250LXdlaWdodDogMjAwO1xuICBmb250LXNpemU6IDNyZW07XG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uIHtcbiAgLypcbiAgcGFkZGluZzouNXJlbSAycmVtO1xuICBjb2xvcjokbGlnaHQtZ3JheTtcbiAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgKi9cbiAgLyomOmhvdmVyIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgfSovXG59XG4ub2ZmLWNhbnZhcyAuc2xpZGUtb3Zlci1jb250YWluZXIge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4ub2ZmLWNhbnZhcyAuc2xpZGUtb3Zlci1jb250YWluZXIgLnNsaWRlLW92ZXItZml0bWVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpdG1lbnQgLmJ1dHRvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiA1OHB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5vZmYtY2FudmFzIC5zbGlkZS1vdmVyLWNvbnRhaW5lciAuc2xpZGUtb3Zlci1maXRtZW50IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpdG1lbnQgLmZpdG1lbnQtaW5mbyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1heC13aWR0aDogNDMlO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpbHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG4ub2ZmLWNhbnZhcyAuc2xpZGUtb3Zlci1jb250YWluZXIgLnNsaWRlLW92ZXItZmlsdGVyIHNlbGVjdCwgLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpbHRlciAuYnV0dG9uIHtcbiAgaGVpZ2h0OiA1NXB4O1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLW92ZXItY29udGFpbmVyIC5zbGlkZS1vdmVyLWZpbHRlciBzZWxlY3Qge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiK1wiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0b3A6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHJpZ2h0OiAycmVtO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXSA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIi1cIjtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudSA+IGxpID4gYSAuZmEtY2FyZXQtZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudS5pcy1hY2NvcmRpb24tc3VibWVudSA+IGxpOjphZnRlciB7XG4gIGxlZnQ6IDA7XG59XG4ub2ZmLWNhbnZhcyAuc29jaWFsLW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gMnJlbTtcbn1cbi5vZmYtY2FudmFzIC5zb2NpYWwtbWVudSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodCAuZmEtYmFyczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjAwZFwiO1xufVxuXG4jZm9yY2VNZW51IHtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4vKlxuLmhpZGUtZm9yLWxhcmdlIHtcbiAgcGFkZGluZy10b3A6MS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xufSovXG4jcmVzcG9uc2l2ZS1tZW51IC5kcm9wZG93bi5tZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGEge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5uby1qcyAudG9wLWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm5vLWpzIC50b3AtYmFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAubm8tanMgLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlciB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuXG4uaW52ZW50b3J5LW5vLWpzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmxvYWRpbmctc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDk5OTk7XG59XG4ubG9hZGluZy1zY3JlZW4gaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5ALW1vei1rZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5oZWFkZXItbmF2LXNlYXJjaCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlN2U3ZTc7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZWFkZXItbmF2LXNlYXJjaCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxufVxuLmhlYWRlci1uYXYtc2VhcmNoIGJ1dHRvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uaGVhZGVyLW5hdi1zZWFyY2gtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlci1uYXYtc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjkzNzVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS45Mzc1cmVtO1xuICB9XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggLnRvZ2dsZS1zZWFyY2gge1xuICBmb250LXNpemU6IDJyZW07XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyLW5hdi1zZWFyY2ggZm9ybSBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgd2lkdGg6IDI4MHB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlYWRlci1uYXYtc2VhcmNoIGZvcm0gaW5wdXQge1xuICAgIHdpZHRoOiA0MDBweDtcbiAgfVxufVxuLmhlYWRlci1uYXYtc2VhcmNoIGZvcm0gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5oZWFkZXItbmF2LXNlYXJjaCBmb3JtIGJ1dHRvbiB7XG4gIHBhZGRpbmctbGVmdDogMC43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5oZWFkZXItbmF2LXNlYXJjaCBmb3JtIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG59XG5cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5yb3cge1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4ubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzY2NjY2NjtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC44NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjIwcHg7XG4gICAgaGVpZ2h0OiA1NHB4O1xuICAgIHBhZGRpbmc6IDFyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ubW9iaWxlLWhlYWRlci13aGVlbHMtZmlsdGVyIC5maWx0ZXItc29ydCAuYnV0dG9uIGkge1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIHdpZHRoOiAxMDAlO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG4gIH1cbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQ6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbi5tb2JpbGUtaGVhZGVyLXdoZWVscy1maWx0ZXIgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIGkge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uaGVhZGVyLWZpdG1lbnQtbW9iaWxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5oZWFkZXItZml0bWVudC1tb2JpbGUgLmJ1dHRvbiB7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIHdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiA1OHB4O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi5oZWFkZXItZml0bWVudC1tb2JpbGUgLmZpdG1lbnQtaW5mbyB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1heC13aWR0aDogNDMlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb290ZXIge1xuICBwYWRkaW5nOiAxcmVtIDAuNXJlbSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICB9XG59XG4uZm9vdGVyIGEsIC5mb290ZXIgcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbi5mb290ZXIgaDUge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXIgaDUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cbi5mb290ZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4uZm9vdGVyIGxpIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uZm9vdGVyIGEge1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5mb290ZXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmZvb3Rlci1sb2dvIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmZvb3Rlci1sb2dvIGltZyB7XG4gIG1heC13aWR0aDogMjUlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZvb3Rlci1sb2dvIGltZyB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gIH1cbn1cbi5mb290ZXItY29udGFjdCB7XG4gIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItY29udGFjdCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmZvb3Rlci1zb2NpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAwIDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItc29jaWFsIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uZm9vdGVyLXNvY2lhbCB1bCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uZm9vdGVyLXNvY2lhbCBsaSB7XG4gIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbn1cbi5mb290ZXItc29jaWFsIGEge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmZvb3Rlci1zb2NpYWwgYTpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLmZvb3Rlci10b3Age1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4uZm9vdGVyLW1lbnUge1xuICAvKlxuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gb25seSkge1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgfSovXG59XG4uZm9vdGVyLW1lbnUtY29sbGVjdGlvbiB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4uZm9vdGVyLW1lbnUtY29sbGVjdGlvbiAuYWNjb3JkaW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZm9vdGVyLW1lbnUtY29sbGVjdGlvbiAuYWNjb3JkaW9uIGg1IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbi5mb290ZXItbWVudS1jb2xsZWN0aW9uIC5hY2NvcmRpb24gLmZhcyB7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmZvb3Rlci1tZW51LWNvbGxlY3Rpb24gLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlcjogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAwO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbn1cbi5mb290ZXItbWVudS1jb2xsZWN0aW9uIC5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4uZm9vdGVyLW1lbnUtY29sbGVjdGlvbiAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mb290ZXItbWVudS1jb2xsZWN0aW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMzMzMztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmZvb3Rlci1tZW51LWNvbGxlY3Rpb24gLmZvb3Rlci1tZW51LWxpc3Qge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICB9XG59XG4uZm9vdGVyLW1lbnUuc21hbGwtMTUge1xuICB3aWR0aDogNTAlO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZm9vdGVyLW1lbnUuc21hbGwtMTUge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItbWVudS5zbWFsbC0xNSB7XG4gICAgd2lkdGg6IDEyLjUlO1xuICB9XG59XG4uZm9vdGVyLWJvdHRvbSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGhlaWdodDogNjBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZm9vdGVyLWJvdHRvbSB7XG4gICAgaGVpZ2h0OiA4NXB4O1xuICB9XG59XG4uZm9vdGVyLWJvdHRvbSBwIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5mb290ZXItYm90dG9tIHAge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB9XG59XG5cbi8qLmhwIHtcbiAgcCB7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gIH1cbn0qL1xuLnNlY3Rpb24ge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlY3Rpb246YWZ0ZXIge1xuICBjb250ZW50OiBcIiBcIjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLnNlY3Rpb24gPiBkaXYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2VjdGlvbi1iYWNrZ3JvdW5kIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2VjdGlvbi1iYWNrZ3JvdW5kIGltZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnNlY3Rpb24tYmFja2dyb3VuZC1pbWFnZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2Uge1xuICAgIGhlaWdodDogMTAwdmg7XG4gIH1cbn1cbi5zZWN0aW9uLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuc2VjdGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB6LWluZGV4OiAxMDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cbn1cbi5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlY3Rpb24tY29udGVudC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHAge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4uc2VjdGlvbi10aXRsZS1kaXZpZGVyIHtcbiAgd2lkdGg6IDIwMHB4O1xuICBoZWlnaHQ6IDhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uc2VjdGlvbi1idXR0b24ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiB7XG4gIHdpZHRoOiAxNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBoZWlnaHQ6IDUwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gMC4zM3M7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjMzczsgLyogQW5pbWF0ZSB0aGUgdHJhbnNmb3JtIHByb3BlcnRpZXMgKi9cbiAgLXdlYmtpdC10cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkO1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyAvKiA8LU5CICovXG59XG4uc2VjdGlvbi1idXR0b24gLmN1YmUtYnV0dG9uOmhvdmVyIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpO1xuICB0cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpOyAvKiBUZXh0IGJsZWVkIGF0IDkwwrogKi9cbn1cbi5zZWN0aW9uLWJ1dHRvbiAuY3ViZS1idXR0b24gLmN1YmUtZnJvbnQsIC5zZWN0aW9uLWJ1dHRvbiAuY3ViZS1idXR0b24gLmN1YmUtYm90dG9tIHtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiAuY3ViZS1mcm9udCB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMjVweCk7XG59XG4uc2VjdGlvbi1idXR0b24gLmN1YmUtYnV0dG9uIC5jdWJlLWJvdHRvbSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKC05MGRlZykgdHJhbnNsYXRlWigtMjVweCk7XG4gIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZVooLTI1cHgpO1xufVxuLnNlY3Rpb24tYnV0dG9uIC5jdWJlLWJ1dHRvbiBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4uZm9vdGVyLmhwIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2Uge1xuICBoZWlnaHQ6IDEwMHZoO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG59XG4uZm9vdGVyLmhwIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2UgaW1nIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uaGVyby1jb250YWluZXIgaDQsIC5oZXJvLWNvbnRhaW5lciBoMSwgLmhlcm8tY29udGFpbmVyIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5oZXJvLWNvbnRhaW5lciBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24ge1xuICBwYWRkaW5nOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVyby1jb250YWluZXIgLnNlY3Rpb24tY29udGVudC1iYWNrZ3JvdW5kIHtcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IHNjcm9sbDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQtYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgfVxufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjQpO1xuICBoZWlnaHQ6IDEwMHZoO1xufVxuLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQgaDQge1xuICBmb250LXdlaWdodDogNDAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhlcm8tY29udGFpbmVyIC5zZWN0aW9uLWNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG59XG4uaGVyby1jb250YWluZXIgLmhlcm8tc2Nyb2xsLW1vcmUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAxNSU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB6LWluZGV4OiA5O1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmhlcm8tY29udGFpbmVyIC5oZXJvLXNjcm9sbC1tb3JlIGkge1xuICBoZWlnaHQ6IDMwcHg7XG4gIHdpZHRoOiAzMHB4O1xuICBhbmltYXRpb246IHVwZG93biAycyBlYXNlIGluZmluaXRlO1xufVxuQGtleWZyYW1lcyB1cGRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB9XG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDk5JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gIH1cbn1cblxuLmhlcm8tdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tdmlkZW8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaGVyby12aWRlby1zaG9ydCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhlcm8tdmlkZW8tc2hvcnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLmhlcm8tdmlkZW9fX2JhY2tncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5oZXJvLXZpZGVvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGVyby12aWRlbzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaGVyby12aWRlb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn1cblxuLmhwIC5leHBsb3JlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhwIC5leHBsb3JlIC5iYWNrZ3JvdW5kIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9ob21lL2V4cGxvcmUtYmcud2VicFwiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IDE1MCU7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogM3JlbTtcbn1cbi5ocCAuZXhwbG9yZSAuYmFja2dyb3VuZCBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgb3BhY2l0eTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZXhwbG9yZSAuYmFja2dyb3VuZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmhwIC5leHBsb3JlIC5iYWNrZ3JvdW5kIGltZyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuLmhwIC5leHBsb3JlIC5mb3JlZ3JvdW5kIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIC5mb3JlZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3R0b206IDhyZW07XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBib3R0b206IDRyZW07XG4gICAgdG9wOiB1bnNldDtcbiAgfVxufVxuLmhwIC5leHBsb3JlIHAge1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIHAge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIH1cbn1cbi5ocCAuZXhwbG9yZSAuZXhwbG9yZS1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmhwIC5leHBsb3JlIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgd2lkdGg6IDI2NHB4O1xuICBoZWlnaHQ6IDYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5leHBsb3JlIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBoZWlnaHQ6IDc0cHg7XG4gIH1cbn1cblxuLmhwIC5wZW5jaWwge1xuICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5wZW5jaWwge1xuICAgIHBhZGRpbmctdG9wOiA0cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA0cmVtO1xuICB9XG59XG4uaHAgLnBlbmNpbCBoMiwgLmhwIC5wZW5jaWwgcCwgLmhwIC5wZW5jaWwgYSB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLmhwIC5wZW5jaWwgaDIge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjg7XG4gIGZvbnQtc2l6ZTogMS42NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsIGgyIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uaHAgLnBlbmNpbCBwIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC5wZW5jaWwgcCB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLnBlbmNpbCBwIHtcbiAgICBmb250LXNpemU6IDEuNTVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuLmhwIC5wZW5jaWwgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmhwIC5wZW5jaWwgYTpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLmhwIC5wZW5jaWwgLnBlbmNpbC1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsIC5wZW5jaWwtcmlnaHQge1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uaHAgLnBlbmNpbCAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBtaW4td2lkdGg6IDE0MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgcGFkZGluZzogMS4yNXJlbSAycmVtO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5wZW5jaWwgLmJ1dHRvbiB7XG4gICAgaGVpZ2h0OiA2NnB4O1xuICAgIG1pbi13aWR0aDogMjA1cHg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG4uaHAgLnBlbmNpbCAuYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4uaHAgLnBlbmNpbC5kZWFsZXJzIHtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5wZW5jaWwuZGVhbGVycyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5ocCAucGVuY2lsLmRlYWxlcnMgaDIge1xuICBmb250LXdlaWdodDogMzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC5wZW5jaWwuZGVhbGVycyBoMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsLmRlYWxlcnMgaDIge1xuICAgIGZvbnQtc2l6ZTogNC43NXJlbTtcbiAgfVxufVxuLmhwIC5wZW5jaWwuZGVhbGVycyAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmhwIC5wZW5jaWwuaW5mb3JtYXRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaHAgLnBlbmNpbC5pbmZvcm1hdGlvbiBoMiwgLmhwIC5wZW5jaWwuaW5mb3JtYXRpb24gcCB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmhwIC5wZW5jaWwuaW5mb3JtYXRpb24gaDIge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsLmluZm9ybWF0aW9uIGgyIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cbn1cbi5ocCAucGVuY2lsLmluZm9ybWF0aW9uIHAge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLnBlbmNpbC5pbmZvcm1hdGlvbiBwIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgfVxufVxuLmhwIC5wZW5jaWwuaW5mb3JtYXRpb24gLnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAucGVuY2lsLmluZm9ybWF0aW9uIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuXG4uaHAgLndoZWVscyB7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIHtcbiAgICBwYWRkaW5nLXRvcDogNHJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLnJvdyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gIH1cbn1cbi5ocCAud2hlZWxzIGgxLCAuaHAgLndoZWVscyBwIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uaHAgLndoZWVscyBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGluZS1oZWlnaHQ6IDAuNzU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyBoMSB7XG4gICAgZm9udC1zaXplOiA2LjI1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4xcmVtO1xuICB9XG59XG4uaHAgLndoZWVscyBoMiB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgaDIge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIH1cbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC50aXRsZSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC50aXRsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAudGl0bGUgcCB7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWhlYWRlciAudGl0bGUgcCB7XG4gICAgZm9udC1zaXplOiAxLjlyZW07XG4gIH1cbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC5zdWJ0aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC5zdWJ0aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLmhwIC53aGVlbHMgLndoZWVscy1oZWFkZXIgLnN1YnRpdGxlIHAge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTI1cmVtO1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1oZWFkZXIgLnN1YnRpdGxlIHA6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtaGVhZGVyIC5zdWJ0aXRsZSBwOmFmdGVyIHtcbiAgICBoZWlnaHQ6IDZweDtcbiAgICBtYXJnaW4tdG9wOiAwLjc1cmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5jb2x1bW46bnRoLWNoaWxkKG9kZCksIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQob2RkKSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgfVxuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLmNvbHVtbjpudGgtY2hpbGQoZXZlbiksIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAuY29sdW1uczpudGgtY2hpbGQoZXZlbikge1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogNHJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLnByb2R1Y3QtaW5mbyB7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAucHJvZHVjdC1pbmZvIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLnByb2R1Y3QtaXRlbSB7XG4gIHBhZGRpbmc6IDFyZW07XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCBhOmhvdmVyIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgYTpob3ZlciAud2hlZWwtbmFtZSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5pbWFnZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLmltYWdlIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLmltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAud2hlZWwtbmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLndoZWVsLW5hbWUge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLmZpbmlzaC1uYW1lLCAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLndoZWVsLXNpemVzIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5maW5pc2gtbmFtZSwgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC53aGVlbC1zaXplcyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgei1pbmRleDogMjtcbiAgcGFkZGluZy10b3A6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAub3RoZXItZmluaXNoZXMgPiAub3RoZXItZmluaXNoIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGdyaWQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciA+IGRpdiB7XG4gIGdyaWQtY29sdW1uOiAxLzE7XG4gIGdyaWQtcm93OiAxLzE7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciAubW9yZS1pbmZvcm1hdGlvbiwgLmhwIC53aGVlbHMgLndoZWVscy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIgLm9uZS1pbmZvcm1hdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogNHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWw6aG92ZXIgaW1nIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtbGlzdCAub3RoZXItZmluaXNoZXMgLm1vcmUtaW5mb3JtYXRpb24ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uaHAgLndoZWVscyAud2hlZWxzLWN0YSB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5ocCAud2hlZWxzIC53aGVlbHMtY3RhIC5idXR0b24ge1xuICBmb250LXNpemU6IDFyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC53aGVlbHMgLndoZWVscy1jdGEgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIHdpZHRoOiAyNzhweDtcbiAgICBoZWlnaHQ6IDcwcHg7XG4gIH1cbn1cblxuLmhwIC5zZXJpZXMge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuc2VyaWVzIHtcbiAgICBwYWRkaW5nOiA0LjVyZW0gMDtcbiAgfVxufVxuLmhwIC5zZXJpZXMgLnNlcmllcy1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLnNlcmllcyAuc2VyaWVzLWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuLmhwIC5zZXJpZXMgLnNlcmllcy1oZWFkZXIgaDIge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5zZXJpZXMgLnNlcmllcy1oZWFkZXIgaDIge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB9XG59XG4uaHAgLnNlcmllcyAuc2VyaWVzLWhlYWRlciBwIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuc2VyaWVzIC5zZXJpZXMtaGVhZGVyIHAge1xuICAgIGZvbnQtc2l6ZTogMy43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB9XG59XG4uaHAgLnNlcmllcyAuc2VyaWVzLWhlYWRlciAudGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5zZXJpZXMgLnNlcmllcy1oZWFkZXIgLnRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG4uaHAgLnNlcmllcyAuc2VyaWVzLWxpc3QgLnNlcmllcy1pdGVtIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbi5ocCAuc2VyaWVzIC5zZXJpZXMtbGlzdCAuc2VyaWVzLWl0ZW0gYTpob3ZlciAudGV4dCB7XG4gIGJhY2tkcm9wLWZpbHRlcjogYmx1cigxMHB4KTtcbiAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG59XG4uaHAgLnNlcmllcyAuc2VyaWVzLWxpc3QgLnNlcmllcy1pdGVtIC5pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5ocCAuc2VyaWVzIC5zZXJpZXMtbGlzdCAuc2VyaWVzLWl0ZW0gLmNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaHAgLnNlcmllcyAuc2VyaWVzLWxpc3QgLnNlcmllcy1pdGVtIC5jb250ZW50IC50ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYm9yZGVyOiAxcHggc29saWQgIzk5OTk5OTtcbiAgaW5zZXQ6IDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5zZXJpZXMgLnNlcmllcy1saXN0IC5zZXJpZXMtaXRlbSAuY29udGVudCAudGV4dCB7XG4gICAgaW5zZXQ6IDJyZW07XG4gIH1cbn1cbi5ocCAuc2VyaWVzIC5zZXJpZXMtbGlzdCAuc2VyaWVzLWl0ZW0gLmNvbnRlbnQgLndoZWVsLW5hbWUge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC5zZXJpZXMgLnNlcmllcy1saXN0IC5zZXJpZXMtaXRlbSAuY29udGVudCAud2hlZWwtbmFtZSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLnNlcmllcyAuc2VyaWVzLWxpc3QgLnNlcmllcy1pdGVtIC5jb250ZW50IC53aGVlbC1uYW1lIHtcbiAgICBmb250LXNpemU6IDMuNXJlbTtcbiAgfVxufVxuLmhwIC5zZXJpZXMgLnNlcmllcy1saXN0IC5zZXJpZXMtaXRlbSAuY29udGVudCAuc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIGgxIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBmb250LXdlaWdodDogODAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaDEge1xuICAgIGZvbnQtc2l6ZTogMS4zNXJlbTtcbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaDEgc3BhbiB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gcCB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBwIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIHAgc3BhbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIGg2IHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAtMXB4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gaDYge1xuICAgIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBoNiB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIGltZyB7XG4gICAgLyp0cmFuc2Zvcm06c2NhbGUoMS4zNSk7Ki9cbiAgfVxufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tYmFja2dyb3VuZC1pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAxMHJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tY29udGVudCAuc2VjdGlvbi1jb250ZW50LWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLnNlY3Rpb24tdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuc2VjdGlvbi1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTByZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5zZWN0aW9uLWRlc2NyaXB0aW9uIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAycmVtO1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cgLmNvbHVtbiwgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cgLmNvbHVtbnMge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1uLCAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMi41cmVtO1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1uOmZpcnN0LWNoaWxkIGEsIC50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvY3RhLXRpcmVzLmpwZ1wiKTtcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAucm93IC5jb2x1bW46bGFzdC1jaGlsZCBhLCAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLnJvdyAuY29sdW1uczpsYXN0LWNoaWxkIGEge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIvaW1hZ2VzL2hvbWUvY3RhLWFjY2Vzc29yaWVzLmpwZ1wiKTtcbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjY2NjYztcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2NjY2NjO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwYWRkaW5nLXRvcDogMjUlO1xuICBwYWRkaW5nLWJvdHRvbTogMjUlO1xuICAvKlxuICBwYWRkaW5nLXRvcDoxcmVtO1xuICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjRyZW07XG4gIH0qL1xufVxuLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IGEgaDQge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IFwiUGxheWZhaXIgRGlzcGxheVwiLCBzZXJpZjtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IGEgaDQge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgYTpob3ZlciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgaW1nIHtcbiAgd2lkdGg6IGF1dG87XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3Qge1xuICAvKlxuICAudGl0bGUsLmltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjZyZW07XG4gICAgfVxuICB9Ki9cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBwIHtcbiAgZm9udC1zaXplOiAxLjFyZW07XG4gIGNvbG9yOiAjZDAwMjA0O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDJyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCBwIHNwYW4ge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXdlaWdodDogMzAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IHAgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gIH1cbn1cbi50aXJlcy1hY2Nlc3Nvcmllcy5zZWN0aW9uIC5jdGEtbGlzdCAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkMDAyMDQ7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAudGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3QgLmJ1dHRvbiB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24gLmN0YS1saXN0IC5pbmxpbmUtYmxvY2stZGlzcGxheSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4udGlyZXMtYWNjZXNzb3JpZXMuc2VjdGlvbiAuY3RhLWxpc3Qge1xuICAvKiAgICAuY29sdW1uIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIHotaW5kZXg6IDM7IFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvL2ltYWdlcy5pY29uZmlndXJhdG9ycy5hcHAvaW1hZ2VzL3doZWVscy9sYXJnZS9ta3ctcjkwMS13aGVlbC01bHVnLWJydXNoZWQtdGl0YW5pdW0tMjB4MTEtNTAwXzY5NzUucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgei1pbmRleDogMjsgXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvL2ltYWdlcy5pY29uZmlndXJhdG9ycy5hcHAvaW1hZ2VzL3doZWVscy9sYXJnZS9ta3ctcjkwMi13aGVlbC01bHVnLWJydXNoZWQtdGl0YW5pdW0tMjB4MTEtNTAwXzMyNTAucG5nJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy8vaW1hZ2VzLmljb25maWd1cmF0b3JzLmFwcC9pbWFnZXMvd2hlZWxzL2xhcmdlL21rdy1yOTAzLXdoZWVsLTVsdWctYnJvbnplLTE4eDk1LTUwMF81OTM0LnBuZycpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICByaWdodDowO1xuICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgfVxuICAgICAgfSovXG59XG5cbi5ocCAuY3RhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VkZWRlZDtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLmN0YSB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIHtcbiAgICBwYWRkaW5nLXRvcDogNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXJlbTtcbiAgfVxufVxuLmhwIC5jdGEgLnJvdyB7XG4gIG1heC13aWR0aDogODEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSAucm93IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy1sZWZ0OiA1cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07XG4gIH1cbn1cbi5ocCAuY3RhIC5yb3cgPiAuY29sdW1uIGEsIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1ucyBhIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXRvcDogMjUlO1xuICBwYWRkaW5nLWJvdHRvbTogMjUlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW4gYSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zIGEge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgIHBhZGRpbmctdG9wOiAzMiU7XG4gICAgcGFkZGluZy1ib3R0b206IDMyJTtcbiAgfVxufVxuLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW4gYTpob3ZlciwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwMSU7XG59XG4uaHAgLmN0YSAucm93ID4gLmNvbHVtbjpudGgtY2hpbGQoMiksIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uczpudGgtY2hpbGQoMiksIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgzKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgzKSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLmN0YSAucm93ID4gLmNvbHVtbjpudGgtY2hpbGQoMiksIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uczpudGgtY2hpbGQoMiksIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgzKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgzKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW46bnRoLWNoaWxkKDIpLCAuaHAgLmN0YSAucm93ID4gLmNvbHVtbnM6bnRoLWNoaWxkKDIpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICB9XG59XG4uaHAgLmN0YSAucm93ID4gLmNvbHVtbjpudGgtY2hpbGQoMikgYSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgyKSBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9ob21lL2N0YS1nYWxsZXJ5LmpwZ1wiKTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgzKSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgzKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG59XG4uaHAgLmN0YSAucm93ID4gLmNvbHVtbjpudGgtY2hpbGQoMykgYSwgLmhwIC5jdGEgLnJvdyA+IC5jb2x1bW5zOm50aC1jaGlsZCgzKSBhIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9ob21lL2N0YS12aXN1YWxpemVyLmpwZ1wiKTtcbn1cbi5ocCAuY3RhIGgxIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjc1O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5jdGEgaDEge1xuICAgIGZvbnQtc2l6ZTogNC43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMXJlbTtcbiAgfVxufVxuLmhwIC5jdGEgaDE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAyMTVweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSBoMTphZnRlciB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cbn1cbi5ocCAuY3RhIHAge1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cbi5ocCAuY3RhIC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4uaHAgLmN0YSAudGV4dCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmN0YSAudGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmhwIC5jdGEgLnN1YnRpdGxlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgaGVpZ2h0OiAzcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuY3RhIC5zdWJ0aXRsZTphZnRlciB7XG4gICAgaGVpZ2h0OiA2cHg7XG4gIH1cbn1cblxuLmhwIC5kZWFsZXJzIGgxIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAwLjg1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC5kZWFsZXJzIGgxIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmRlYWxlcnMgaDEge1xuICAgIGZvbnQtc2l6ZTogNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMnJlbTtcbiAgfVxufVxuLmhwIC5kZWFsZXJzIC5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuaHAgLmRlYWxlcnMgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmRlYWxlcnMgLmJ1dHRvbiB7XG4gICAgaGVpZ2h0OiA2OHB4O1xuICAgIHdpZHRoOiAyMDhweDtcbiAgfVxufVxuLmhwIC5kZWFsZXJzIC5kZWFsZXItY29udGVudCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhwIC5kZWFsZXJzIC5kZWFsZXItY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5kZWFsZXJzIC5kZWFsZXItY29udGVudCB7XG4gICAgcGFkZGluZy10b3A6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gICAgaGVpZ2h0OiAyNTZweDtcbiAgfVxufVxuXG4uaHAgLmFib3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhwIC5hYm91dCAuYmFja2dyb3VuZCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvaG9tZS9hYm91dC11cy5qcGdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgcGFkZGluZy10b3A6IDNyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBoZWlnaHQ6IDUwdmg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IC5iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4uaHAgLmFib3V0IC5iYWNrZ3JvdW5kIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xuICBvcGFjaXR5OiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5hYm91dCAuYmFja2dyb3VuZCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmhwIC5hYm91dCAuYmFja2dyb3VuZCBpbWcge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5ocCAuYWJvdXQgLmZvcmVncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgcGFkZGluZzogMnJlbSAwO1xuICBib3R0b206IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IC5mb3JlZ3JvdW5kIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHBhZGRpbmc6IDQuNXJlbSAwO1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4uaHAgLmFib3V0IC5mb3JlZ3JvdW5kIC5yb3cge1xuICB3aWR0aDogMTAwJTtcbn1cbi5ocCAuYWJvdXQgaDIge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuYWJvdXQgaDIge1xuICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB9XG59XG4uaHAgLmFib3V0IHAge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaHAgLmFib3V0IHAge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxufVxuLmhwIC5hYm91dCAuYWJvdXQtcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5ocCAuYWJvdXQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIGxldHRlci1zcGFjaW5nOiAycHg7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5hYm91dCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMjY0cHg7XG4gICAgaGVpZ2h0OiA3NHB4O1xuICAgIG1hcmdpbjogdW5zZXQ7XG4gIH1cbn1cbi5ocCAuYWJvdXQgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG5cbi5pbnN0YWdyYW0gYSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuLmluc3RhZ3JhbSAudGl0bGUge1xuICBwYWRkaW5nLXRvcDogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4uaW5zdGFncmFtIC50aXRsZSBoMiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5pbnN0YWdyYW0gLnRpdGxlIGEge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgZGlzcGxheTogaW5saW5lO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5pbnN0YWdyYW0gLnRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbi5pbnN0YWdyYW0gI2luc3RhZ3JhbSBhIHtcbiAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG59XG4uaW5zdGFncmFtICNpbnN0YWdyYW0gYTpob3ZlciB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xufVxuXG4jaW5zdGFncmFtLXBvcHVwIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG5cbi5ocCAuZ2FsbGVyeSB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZ2FsbGVyeSB7XG4gICAgcGFkZGluZzogNHJlbSAwO1xuICB9XG59XG4uaHAgLmdhbGxlcnkgaDIsIC5ocCAuZ2FsbGVyeSBwIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uaHAgLmdhbGxlcnkgaDIge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjEyNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZ2FsbGVyeSBoMiB7XG4gICAgZm9udC1zaXplOiAwLjg1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuLmhwIC5nYWxsZXJ5IHAge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhwIC5nYWxsZXJ5IHAge1xuICAgIGZvbnQtc2l6ZTogNC4yNXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4yNXJlbTtcbiAgfVxufVxuLmhwIC5nYWxsZXJ5IC50ZXh0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZ2FsbGVyeSAudGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuLmhwIC5nYWxsZXJ5IGEge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5ocCAuZ2FsbGVyeSBhOmhvdmVyIC5waG90by1pbWFnZS1jb250YWluZXIge1xuICBmaWx0ZXI6IGJsdXIoM3B4KTtcbn1cbi5ocCAuZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IHtcbiAgcGFkZGluZzogMCAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhwIC5nYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLmNvbHVtbiwgLmhwIC5nYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLmNvbHVtbnMge1xuICAgIHBhZGRpbmc6IDAgMC4zNXJlbTtcbiAgfVxufVxuLmhwIC5nYWxsZXJ5IGltZyB7XG4gIG9wYWNpdHk6IDA7XG59XG4uaHAgLmdhbGxlcnkgLnBob3RvLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ocCAuZ2FsbGVyeSAucGhvdG8taW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbi5ocCAuZ2FsbGVyeSAucGhvdG8taW1hZ2UtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4uYWNjb3JkaW9uLWZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5hY2NvcmRpb24tZmlsdGVyX19oZWFkZXIge1xuICBmb250LXNpemU6IDFyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xufVxuLmFjY29yZGlvbi1maWx0ZXJfX2hlYWRlci0tbW9iaWxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgcGFkZGluZzogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYWNjb3JkaW9uLWZpbHRlcl9fY29udGVudCB7XG4gIGJvcmRlcjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHtcbiAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgIGZsZXgtZ3JvdzogMTtcbiAgfVxufVxuLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHNlbGVjdCB7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMHJlbSBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gc2VsZWN0IHtcbiAgICBwYWRkaW5nOiAwLjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biBzZWxlY3Qge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmFjY29yZGlvbi1maWx0ZXJfX2J0biB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMC42NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYWNjb3JkaW9uLWZpbHRlcl9fYnRuIHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbn1cblxuLnNlbGVjdGVkVmVoaWNsZUJhciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViZWJlYjtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXIgLmxheW91dCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogODBweDtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2VsZWN0ZWRWZWhpY2xlQmFyIC5sYXlvdXQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5zZWxlY3RlZFZlaGljbGVCYXIgaW1nIHtcbiAgbWF4LWhlaWdodDogMTAwcHg7XG59XG4uc2VsZWN0ZWRWZWhpY2xlQmFyIC5yb3ctLXNtYWxsIHtcbiAgbWF4LXdpZHRoOiA2N3JlbTtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXJfX2NvbnRlbnQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uc2VsZWN0ZWRWZWhpY2xlQmFyX19jb250ZW50LS1ub01hcmdpbiB7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zZWxlY3RlZFZlaGljbGVCYXJfX2NvbnRlbnQge1xuICAgIG1hcmdpbjogMS41cmVtIGF1dG8gMDtcbiAgfVxufVxuLnNlbGVjdGVkVmVoaWNsZUJhcl9fdGV4dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnNlbGVjdGVkVmVoaWNsZUJhcl9fdGV4dCB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG59XG4uc2VsZWN0ZWRWZWhpY2xlQmFyX19zcGFuIHtcbiAgY29sb3I6ICM2YTZhNmE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4uc2VsZWN0ZWRWZWhpY2xlQmFyX19idG4ge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbn1cbi5zZWxlY3RlZFZlaGljbGVCYXItLXNtYWxsZXIge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnBlbmNpbC10b3Atc2VhcmNoIHtcbiAgcGFkZGluZzogMTFweCAwO1xufVxuXG4ubmF2LXNlYXJjaCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5uYXYtc2VhcmNoIHtcbiAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgfVxufVxuXG4uc2VhcmNoLWxpbmsge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdmVydGljYWwtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC44cmVtO1xufVxuLnNlYXJjaC1saW5rX190ZXh0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgdG9wOiAwLjJyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBtZWRpYSAobWluLXdpZHRoOiAxMDI0cHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgLnNlYXJjaC1saW5rX190ZXh0IHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNlYXJjaC1saW5rX190ZXh0IHtcbiAgICBjb2xvcjogI2ZlZmVmZTtcbiAgfVxufVxuXG4uc2VhcmNoLWljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNlYXJjaC1pY29uIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgfVxufVxuXG4uc2VhcmNoLWJveCB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwLjdyZW07XG4gIHdpZHRoOiA0MjNweDtcbiAgei1pbmRleDogMTE7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLnNlYXJjaC1ib3gge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxufVxuXG4uc2VhcmNoLWJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbiN3aGVlbHMgaDIsICN3aGVlbHMgaDMge1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiN3aGVlbHMgaDIge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAtNXB4O1xufVxuI3doZWVscyBoMyB7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzIGg0IHtcbiAgZm9udC1zaXplOiAxLjc1cmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzIGg0IHtcbiAgICBmb250LXNpemU6IDIuNjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgYSB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIHAge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbHMgcCB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICB9XG59XG4jd2hlZWxzIC5yb3cge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN3aGVlbHMge1xuICAvKlxuICAgIC8vIHBhZ2UgaGVhZGVyXG4gICAgLnBhZ2UtaGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToyLjVyZW07XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiR0aXRsZS1mb250LWZhbWlseTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6NC4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICRyZWQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgZm9udC1zaXplOjAuOXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6Mi41O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnBhZ2UtdGl0bGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgICAgfVxuICAgIH1cbiAgKi9cbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0IC5yb3cge1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyLXNvcnQgLnJvdyB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICN3aGVlbHMgLmZpbHRlci1zb3J0IC5yb3cge1xuICAgIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICB9XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydC10b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2NjY2NjY7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAuODVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDI1NHB4O1xuICAgIGhlaWdodDogNTRweDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuI3doZWVscyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiBpIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzIC5maWx0ZXItc29ydCAuZGl2aWRlciB7XG4gIGhlaWdodDogMXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LWJvdHRvbSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgd2lkdGg6IGF1dG87XG4gIGhlaWdodDogYXV0bztcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQ6aG92ZXIge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiN3aGVlbHMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uIGkge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscyB7XG4gIC8qIC5wcm9kdWN0LWl0ZW0ge1xuICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgcGFkZGluZzoxcmVtIDA7XG4gICAgIH1cbiAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgIH1cbiAgICAgPiAuY29sdW1uIHtcbiAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgfVxuICAgfSovXG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMgLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICN3aGVlbHMgLnByb2R1Y3RzLWxpc3Qge1xuICAgIHBhZGRpbmctbGVmdDogNXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cmVtO1xuICB9XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5jb2x1bW4sICN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLmNvbHVtbnMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIGltZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbTpob3ZlciBpbWcge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAuaW5mbyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICB9XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC53aGVlbC1uYW1lIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5pbmZvIC53aGVlbC1uYW1lIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMge1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgPiAub3RoZXItZmluaXNoIHtcbiAgICB3aWR0aDogMjUlO1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG59XG4jd2hlZWxzIC5wcm9kdWN0cy1saXN0IC5vdGhlci1maW5pc2hlcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBncmlkO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyID4gZGl2IHtcbiAgZ3JpZC1jb2x1bW46IDEvMTtcbiAgZ3JpZC1yb3c6IDEvMTtcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzLWNvbnRhaW5lciAubW9yZS1maW5pc2hlcywgI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMtY29udGFpbmVyIC5vbmUtZmluaXNoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgLnRodW1ibmFpbCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogNHB4O1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN3aGVlbHMgLnByb2R1Y3RzLWxpc3QgLm90aGVyLWZpbmlzaGVzIC50aHVtYm5haWw6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuI3doZWVscyAucHJvZHVjdHMtbGlzdCAub3RoZXItZmluaXNoZXMgLm1vcmUtZmluaXNoZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jd2hlZWxzIC5icmVhayB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWxzIC5icmVhayAucm93IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIG1heC13aWR0aDogODRyZW07XG59XG4jd2hlZWxzIC5icmFuZC1pbmZvcm1hdGlvbiAucm93IHtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbiN3aGVlbHMge1xuICAvKlxuICAucHJvZHVjdC1saXN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RUY7XG4gICAgcGFkZGluZy10b3A6MC42NzVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzozLjc1cmVtIDA7XG4gICAgfVxuICAgIGEge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206MC42NzVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTozLjc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAucm93IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxLjg3NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxLjg3NXJlbTtcbiAgICAgICAgPiAuY29sdW1uIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MS44NzVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoxLjg3NXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdC1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBwYWRkaW5nOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdC1pbmZvIHtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLndoZWVsIHtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6Mi4zNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH0qL1xufVxuXG4vKiN3aGVlbHMge1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLXRvcDozcmVtO1xuICAgIC5jb2x1bW4ge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAuaG92ZXItaXRlbV9faGVhZGVyIHtcbiAgICBmb250LXNpemU6Mi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0Oi41O1xuICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICBjb2xvcjokZ3JheTtcbiAgICBzbWFsbCB7XG4gICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gICAgfVxuICB9XG4gIC5wb3BfdXBfdmVoaWNsZSB7XG4gICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgIGJ1dHRvbiB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gc2VlIG9uIHZlaGljbGUgcG9wdXBcbi5mYW5jeWJveC1pbm5lciB7XG4gIGhlaWdodDphdXRvIWltcG9ydGFudDtcbiAgI3ZlaGljbGUtc2VsZWN0cyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICB9XG59XG4uZmFuY3lib3gtY2xvc2Uge1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50IWltcG9ydGFudDtcbiAgcmlnaHQ6LTIwcHghaW1wb3J0YW50OyAgXG59XG4gICovXG4jd2hlZWwge1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cbiN3aGVlbCAucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nOiAwO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3aGVlbCAucGFnZS1oZWFkZXIge1xuICAgIG1heC1oZWlnaHQ6IDYwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cbiN3aGVlbCAucGFnZS1oZWFkZXIgLmZsZXgtdmlkZW8gaWZyYW1lIHtcbiAgdG9wOiAtMTAlO1xufVxuI3doZWVsICNkZXRhaWwtdG9wIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC41cmVtO1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVsICNkZXRhaWwtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgfVxufVxuI3doZWVsIC5sYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjI1cmVtO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWwgLmxhYmVsIGkge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbiN3aGVlbCAuYnV0dG9uLCAjd2hlZWwgaW5wdXQsICN3aGVlbCBzZWxlY3Qge1xuICBtYXgtd2lkdGg6IDM3MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAuYnV0dG9uIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jd2hlZWwgLndoZWVsLXNpemVzIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtc2l6ZXMgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG4jd2hlZWwgLndoZWVsLWRldGFpbHMge1xuICBiYWNrZ3JvdW5kOiAjZjFmMWYxO1xuICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlscyAud2hlZWwtcGFyYWdyYXBoIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtZGV0YWlscyAud2hlZWwtcGFyYWdyYXBoIHNwYW4ge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbiN3aGVlbCAubG9hZGluZ0ltYWdlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciBidXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBmb250LXNpemU6IDAuODVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4jd2hlZWwgLmZpdG1lbnQtc2VhcmNoLWNvbnRhaW5lciBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xufVxuI3doZWVsICNkZXRhaWwtYm90dG9tIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbCAjZGV0YWlsLWJvdHRvbSA+IC5yb3cge1xuICBtYXgtd2lkdGg6IDgwcmVtO1xufVxuXG4uZ2FsbGVyeS1wb3B1cCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5nYWxsZXJ5LXBvcHVwIC5nYWxsZXJ5Vmlldy1pbmZvIHtcbiAgY29sb3I6ICNjY2M7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuLmdhbGxlcnktcG9wdXAgLmdhbGxlcnlWaWV3LWluZm8gc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmdhbGxlcnktcG9wdXAgLnBvcHVwLWNhciB7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5nYWxsZXJ5LXBvcHVwIC5tZnAtY2xvc2Uge1xuICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICB9XG59XG4uZGV0YWlsLXRodW1iIHAge1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luOiAwLjI1cmVtO1xufVxuLmRldGFpbC10aHVtYiAuZmluaXNoLW5hbWUge1xuICBjb2xvcjogIzhhOGE4YTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4uZGV0YWlsLXRodW1iIGltZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmRldGFpbC10aHVtYiBpbWc6aG92ZXIge1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG59XG5cbi5zZWUtb24tdmVoaWNsZS1jb250YWluZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDAuMnJlbTtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbn1cblxuLnNlZS1vbi12ZWhpY2xlLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VlLW9uLXZlaGljbGUtc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudGFibGUge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG50YWJsZSB0ciB0ZCxcbnRhYmxlIHRyIHRoIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxudGFibGUgdHIgdGgge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWwgLmJhbm5lci10b3AgLndoZWVsLWJhbm5lciB7XG4gICAgaGVpZ2h0OiA2cmVtO1xuICB9XG4gICN3aGVlbCAuYmFubmVyLXRvcCAuaGVhZGluZyB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgdG9wOiA5MCU7XG4gIH1cbiAgI3doZWVsIC5zbGljay1zbGlkZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmluaXNoLWhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuI2RldGFpbC1xdW90ZS1wb3B1cCB7XG4gIG1heC13aWR0aDogNzVyZW07XG59XG4jZGV0YWlsLXF1b3RlLXBvcHVwIGgyLCAjZGV0YWlsLXF1b3RlLXBvcHVwIGg0LCAjZGV0YWlsLXF1b3RlLXBvcHVwIGg1IHtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNkZXRhaWwtcXVvdGUtcG9wdXAgbGFiZWwge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2RldGFpbC1xdW90ZS1wb3B1cCAub3B0aW9uLXR3byB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tYWluLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFpbi1pbWFnZSB7XG4gICAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgfVxufVxuLm1haW4taW1hZ2UgaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5hbHQtaW1hZ2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLXRyYWNrIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmVmZWZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgd2lkdGg6IDExNXB4ICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWx0LWltYWdlcyAuc2xpY2stc2xpZGUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZS5zbGljay1jdXJyZW50IHtcbiAgYm9yZGVyLWNvbG9yOiAjOTk5OTk5O1xufVxuLmFsdC1pbWFnZXMgLnNsaWNrLXNsaWRlOmZvY3VzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5hbHQtaW1hZ2VzIGEge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAuN3JlbTtcbn1cbi5hbHQtaW1hZ2VzIGltZyB7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmFsdC1pbWFnZXMgaW1nOmhvdmVyIHtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xufVxuXG4jd2hlZWwgLndoZWVsLWRldGFpbC1zcGVjcyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLndoZWVsLWRldGFpbC1zcGVjcyA+IGRpdiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3doZWVsIC53aGVlbC1kZXRhaWwtc3BlY3MgLndoZWVsLXNpemVzIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuLndoZWVsLXNwZWNzIHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cbi53aGVlbC1zcGVjc19faGVhZGVyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud2hlZWwtc3BlY3NfX2RldGFpbHMge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLmRldGFpbC1zcGVjLXRhYnMge1xuICBib3JkZXI6IG5vbmU7XG59XG4uZGV0YWlsLXNwZWMtdGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lO1xufVxuLmRldGFpbC1zcGVjLXRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwO1xufVxuLmRldGFpbC1zcGVjLXRhYnMgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiA1MCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5kZXRhaWwtc3BlYy10YWJzIGEge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nOiAwLjZyZW0gMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICBjb2xvcjogIzY2Njtcbn1cbi5kZXRhaWwtc3BlYy10YWJzIGFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuLmRldGFpbC1zcGVjLXRhYnMgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gIGNvbG9yOiAjZmZmO1xufVxuXG4uYnAtdG9nZ2xlLWJ0biB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuXG4ud2hlZWwtaW5mbyBoMyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG4ud2hlZWwtaW5mbyBvbCB7XG4gIGxpc3Qtc3R5bGU6IGRpc2M7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICBjb2xvcjogIzY2NjY2NjtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xufVxuLndoZWVsLWluZm8gb2wgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4ud2hlZWwtaW5mbyA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtaW5mbyAuZmluaXNoIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ud2hlZWwtaW5mbyAuc2l6ZXMge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLndoZWVsLWluZm8gLnNpemVzIC50aXRsZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLndoZWVsLWluZm8gLnNpemVzLWxpc3Qge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ud2hlZWwtaW5mbyAuc2l6ZXMtbGlzdCBzcGFuIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlIC5mYS1jaGV2cm9uLXVwOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA3OFwiO1xufVxuI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbiAuZmFzIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgY29sb3I6ICMzMzY2OTk7XG59XG4jd2hlZWwgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cbiN3aGVlbCAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3doZWVsIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgfVxufVxuXG4uY3RhLWJ1dHRvbnMge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtZXZlbmx5O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmN0YS1idXR0b25zIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxufVxuLmN0YS1idXR0b25zIC5waWxsIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY3RhLWJ1dHRvbnMgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxufVxuLmN0YS1idXR0b25zID4gZGl2OmZpcnN0LWNoaWxkIC5waWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzBhMGEwYTtcbn1cbi5jdGEtYnV0dG9ucyAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLXRvcDogMC4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuMjVyZW07XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jdGEtYnV0dG9ucyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC41O1xuICB3aWR0aDogMjUlO1xufVxuLmN0YS1idXR0b25zIGxpOmZpcnN0LWNoaWxkID4gLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5kZXRhaWxzLW1lZGlhIHtcbiAgei1pbmRleDogNTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmRldGFpbHMtbWVkaWFfX2hlYWRlciB7XG4gIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG4gIGNvbG9yOiAjMDAwO1xufVxuLmRldGFpbHMtbWVkaWFfX2hlYWRlcjpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuXG4uZGV0YWlscy1kaXZpZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG4uZGV0YWlscy1kaXZpZGVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjN2M3Yzk7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAxNXB4IGF1dG8gMDtcbiAgd2lkdGg6IDJyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5kZXRhaWxzLTM2MCxcbiAgLmRldGFpbHMtdmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgfVxuICAuZGV0YWlscy1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIGg1IHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIHNlbGVjdCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHotaW5kZXg6IDI7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5uby1maXRtZW50IHtcbiAgbWluLWhlaWdodDogNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAubm8tZml0bWVudDo6YmVmb3JlIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29udGVudDogXCJcIjtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBvcGFjaXR5OiAwLjg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLm5vLWZpdG1lbnQgLmVycm9yIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5sb2FkaW5nSW1hZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLmhvdmVyLWl0ZW06aG92ZXIgYnV0dG9uIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAuaG92ZXItaXRlbTpob3ZlciBpbWcge1xuICBvcGFjaXR5OiAwLjA3NTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5ob3Zlci1pdGVtOmhvdmVyOjpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjc7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0MCU7XG4gIGxlZnQ6IDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgb3BhY2l0eTogMDtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2Njtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwtb3ZlcmxheSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiA1MHB4O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbC1vdmVybGF5IC5mYS1zcGlubmVyIHtcbiAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jc2VlLW9uLXZlaGljbGUtcG9wdXAge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDNyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMHZtYXggcmdiYSgwLCAwLCAwLCAwLjcpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIHtcbiAgICBwYWRkaW5nOiAycmVtO1xuICB9XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cFtvcGVuXSB7XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gIH1cbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjd2hlZWwtc3BlYy1wcmljZSwgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5idXktbm93IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbiwgI3NlZS1vbi12ZWhpY2xlLXBvcHVwICN2ZWhpY2xlLWRlc2NyaXB0aW9uLW1vYmlsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwICN2ZWhpY2xlLWRlc2NyaXB0aW9uIHtcbiAgZm9udC1zaXplOiAycmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwICN2ZWhpY2xlLWRlc2NyaXB0aW9uLW1vYmlsZSAjdm92LXN1Ym1vZGVsIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWNvbG9yLWJ1dHRvbiB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC53aGVlbC1pbmZvIHtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIHBhZGRpbmc6IDFyZW07XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLndoZWVsLWluZm8gLndoZWVsLXRodW1ibmFpbCB7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtaW5mbywgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWluZm8ge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB3aWR0aDogMTAwJTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjd2hlZWwtYnJhbmQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcy1jb250YWluZXIge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyID4gLnNwZWNzOmZpcnN0LWNoaWxkIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyID4gLnNwZWNzOmZpcnN0LWNoaWxkIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzIC5kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjaWNtLXZvdi1sb2FkaW5nIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZvdi1hbmdsZS1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAyNSU7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52b3YtYW5nbGUtYXJyb3cge1xuICAgIHRvcDogNDglO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZvdi1hbmdsZS1hcnJvdzpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdm92LXByZXZpb3VzLWFuZ2xlIHtcbiAgbGVmdDogMDtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdm92LW5leHQtYW5nbGUge1xuICByaWdodDogMDtcbn1cblxuI3N3YXRjaGVzLWRpYWxvZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwdm1heCByZ2JhKDAsIDAsIDAsIDAuNSk7XG59XG4jc3dhdGNoZXMtZGlhbG9nIC5pY20tdm92LXN3YXRjaC1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxMHB4O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG59XG5cbi53aGVlbC1nYWxsZXJ5X19oZWFkZXIge1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMS4xMDU7XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC53aGVlbC1nYWxsZXJ5X19oZWFkZXIge1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG4gIH1cbn1cblxuLndoZWVsLWdhbGxlcnlMaXN0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtZ2FsbGVyeUxpc3Qge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbn1cbi53aGVlbC1nYWxsZXJ5TGlzdF9faXRlbSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzElO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogMiU7XG4gIG1hcmdpbi10b3A6IDAuNXJlbTtcbn1cbi53aGVlbC1nYWxsZXJ5TGlzdF9faXRlbTpudGgtY2hpbGQobis3KSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ud2hlZWwtZ2FsbGVyeUxpc3RfX2l0ZW0tLWRpc3BsYXk6bnRoLWNoaWxkKG4rNykge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLndoZWVsLWdhbGxlcnlJbWFnZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC53aGVlbC1nYWxsZXJ5VHh0IHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxufVxuI3NwZWNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG59XG4jc3BlY3MgLnRhYnMge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzcGVjcyAudGFicyB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgfVxufVxuI3NwZWNzIHRhYmxlIHRyIHRoLCAjc3BlY3MgdGFibGUgdHIgdGQge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4jc3BlY3MgdGFibGUgdGhlYWQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xufVxuI3NwZWNzIHRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuI3NwZWNzIHRib2R5IHtcbiAgYm9yZGVyOiAwO1xufVxuI3NwZWNzIHRyOm50aC1jaGlsZChvZGQpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbn1cbiNzcGVjcyB0cjpudGgtY2hpbGQoZXZlbikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiNzcGVjcyB0aGVhZCB0cjpudGgtY2hpbGQob2RkKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuI3NwZWNzIC50aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBwYWRkaW5nLXRvcDogMC45cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMC45cmVtO1xufVxuI3NwZWNzIC50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDA7XG59XG4jc3BlY3MgLnRhYnMtY29udGVudCBhIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jc3BlY3MgLnRhYnMtY29udGVudCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi53aGVlbC1zcGVjLXRhYnMge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAwLjc1cmVtO1xufVxuLndoZWVsLXNwZWMtdGFicyA+IGEge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgcGFkZGluZzogMDtcbn1cbi53aGVlbC1zcGVjLXRhYnMuaXMtYWN0aXZlIHtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICNkMDAyMDQ7XG59XG4ud2hlZWwtc3BlYy10YWJzLmlzLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLndoZWVsLXNwZWMtcGFuZWwge1xuICBvdmVyZmxvdzogYXV0bztcbn1cblxuLypcbi53aGVlbC1zcGVjIHtcbiAgICAmLWhlYWRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5OTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuXG4gICAgJi10YWJzID4gYSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjE7XG4gICAgICAgIGNvbG9yOiRncmF5OTtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmZvY3VzLCAmW2FyaWEtc2VsZWN0ZWQ9dHJ1ZV0ge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmF5NztcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICB9ICAgICAgICBcbiAgICB9XG4gICAgJi1wYW5lbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBhIHtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuICAgIH1cbiAgICAmLWJ0biB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgfVxuICAudGFicyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgID4gZGl2IHtcbiAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgJHdoaXRlO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OjA7XG4gICAgICB9XG4gICAgfVxuICB9XG59Ki9cbi5maW5pc2hlcyB7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZpbmlzaGVzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG4uZmluaXNoZXMgaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uZmluaXNoZXMgaW1nIHtcbiAgbWF4LXdpZHRoOiAxNzBweDtcbn1cbi5maW5pc2hlcyBwIHtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5maW5pc2hlcyBwIC5maW5pc2gtbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uZmluaXNoZXMgcCAubHVncyB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5maW5pc2hlcyAubGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjNmM2YzO1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhLmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmM2YzZjM7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhLmRpc2NvbnRpbnVlZC1maW5pc2gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkZGRkO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtc2l6ZTogMC43cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhLmRpc2NvbnRpbnVlZC1maW5pc2ggLmRpc2NvbnRpbnVlZC1vdmVybGF5IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuZGlzY29udGludWVkLWZpbmlzaDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEuZGlzY29udGludWVkLWZpbmlzaDpob3ZlciAuZGlzY29udGludWVkLW92ZXJsYXkge1xuICBvcGFjaXR5OiAxO1xufVxuLmZpbmlzaGVzIC5hbHQtZmluaXNoZXMgPiBhLmRpc2NvbnRpbnVlZC1maW5pc2g6aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMC4xNTtcbn1cbi5maW5pc2hlcyAuYWx0LWZpbmlzaGVzID4gYSAuaW1hZ2Uge1xuICBtYXgtd2lkdGg6IDkwcHg7XG59XG4uZmluaXNoZXMgLmFsdC1maW5pc2hlcyA+IGEgLmltYWdlIGltZyB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ud2hlZWwtZGV0YWlsLWdhbGxlcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xufVxuLndoZWVsLWRldGFpbC1nYWxsZXJ5IGgzIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ud2hlZWwtZGV0YWlsLWdhbGxlcnkgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4ud2hlZWwtZGV0YWlsLWdhbGxlcnkgLnBob3RvIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2ZlZmVmZTtcbiAgYm9yZGVyLWxlZnQ6IDA7XG59XG4ud2hlZWwtZGV0YWlsLWdhbGxlcnkgLnBob3RvOmxhc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4ud2hlZWwtZGV0YWlsLWdhbGxlcnkgLnBob3RvIHNwYW4ge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLndoZWVsLWRldGFpbC1nYWxsZXJ5IC5uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi53aGVlbC1kZXRhaWwtZ2FsbGVyeSAubmF2aWdhdGlvbiAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuLndoZWVsLWRldGFpbC1nYWxsZXJ5IC5uYXZpZ2F0aW9uIC5idXR0b246Zm9jdXMsIC53aGVlbC1kZXRhaWwtZ2FsbGVyeSAubmF2aWdhdGlvbiAuYnV0dG9uOmFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG5cbi5qcy1zbGlkZXIge1xuICBwYWRkaW5nOiAwIDNyZW07XG59XG4uanMtc2xpZGVyIC5zbGljay10cmFjayB7XG4gIG1hcmdpbjogMDtcbn1cbi5qcy1zbGlkZXIgLnNsaWNrLXNsaWRlIHtcbiAgcGFkZGluZzogMC4yNXJlbTtcbn1cbi5qcy1zbGlkZXIgLnNsaWNrLXNsaWRlID4gYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uanMtc2xpZGVyIC5zbGljay1zbGlkZSA+IGEuZ2FsbGVyeVZpZXdWaWRlby1vcGVuIC53aGVlbC1nYWxsZXJ5SW1hZ2UgaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cbi5qcy1zbGlkZXIgLnNsaWNrLXNsaWRlIC53aGVlbC1nYWxsZXJ5SW1hZ2Uge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xufVxuLmpzLXNsaWRlciAuc2xpY2stc2xpZGUgLnZpZGVvLWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuLmpzLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogMzBweDtcbiAgd2lkdGg6IDMwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB6LWluZGV4OiAxO1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluO1xuICB0b3A6IDM1JTtcbn1cbi5qcy1zbGlkZXIgLnNsaWNrLWFycm93IGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuanMtc2xpZGVyIC5zbGljay1hcnJvdyBpIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmpzLXNsaWRlciAuc2xpY2stYXJyb3cge1xuICAgIGhlaWdodDogNDBweDtcbiAgICB3aWR0aDogNDBweDtcbiAgfVxufVxuLmpzLXNsaWRlciAuc2xpY2stYXJyb3cuc2xpY2stZGlzYWJsZWQge1xuICBvcGFjaXR5OiAwLjU7XG59XG4uanMtc2xpZGVyIC5zbGljay1hcnJvdy5mZWF0dXJlZC1uZXh0IHtcbiAgcmlnaHQ6IDBweDtcbn1cbi5qcy1zbGlkZXIgLnNsaWNrLWFycm93LmZlYXR1cmVkLXByZXYge1xuICBsZWZ0OiAwcHg7XG59XG4uanMtc2xpZGVyIC5zbGljay1hcnJvdyB7XG4gIC8qXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgJi5mZWF0dXJlZC1uZXh0IHtcbiAgICAgIHJpZ2h0Oi0yNXB4O1xuICAgIH1cbiAgICAmLmZlYXR1cmVkLXByZXYge1xuICAgICAgbGVmdDotMjVweDtcbiAgICB9XG4gIH1cbiAgKi9cbn1cblxuLndoZWVsLWdhbGxlcnlfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi53aGVlbC1nYWxsZXJ5TGlzdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbi53aGVlbC1nYWxsZXJ5TGlzdF9faXRlbSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQ5JTtcbn1cbi53aGVlbC1nYWxsZXJ5TGlzdF9faXRlbTpudGgtY2hpbGQoMm4pIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLndoZWVsLWdhbGxlcnlMaXN0X19pdGVtIHtcbiAgICBtYXgtd2lkdGg6IDE4MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC53aGVlbC1nYWxsZXJ5TGlzdF9faXRlbTpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgfVxufVxuLndoZWVsLWdhbGxlcnlMaXN0X19pdGVtIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5wb3B1cC13aGVlbGltYWdlIHtcbiAgbWF4LWhlaWdodDogODAwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxuLndoZWVsLWdhbGxlcnlJbWFnZSB7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi53aGVlbC1nYWxsZXJ5SW1hZ2UgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi53aGVlbC1nYWxsZXJ5VHh0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAud2hlZWwtZ2FsbGVyeVR4dCB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cblxuLnByb2R1Y3QtbmV4dC1wcmV2IHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5wcm9kdWN0LW5leHQtcHJldiBhIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2Y4ZjhmODtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4ucHJvZHVjdC1uZXh0LXByZXYgYTpob3ZlciB7XG4gIGJvcmRlci1jb2xvcjogIzBhMGEwYTtcbn1cbi5wcm9kdWN0LW5leHQtcHJldiBhLm5vLXByb2R1Y3Qge1xuICBvcGFjaXR5OiAwLjU7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xufVxuLnByb2R1Y3QtbmV4dC1wcmV2IGltZyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNkNWQ1ZDU7XG59XG5cbi53aGVlbC10aXRsZSB7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLndoZWVsLXRpdGxlIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuLndoZWVsLXRpdGxlIGgyLCAud2hlZWwtdGl0bGUgcCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4ud2hlZWwtdGl0bGUgaDIge1xuICBmb250LXNpemU6IDIuMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLndoZWVsLXRpdGxlIGgyIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbn1cbi53aGVlbC10aXRsZSBoMywgLndoZWVsLXRpdGxlIGg0IHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbi53aGVlbC10aXRsZSBoMyB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC41cmVtO1xufVxuLndoZWVsLXRpdGxlIGg0IHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBtYXJnaW4tYm90dG9tOiAwLjI1cmVtO1xufVxuLndoZWVsLXRpdGxlIGg2IHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTVyZW07XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLndoZWVsLXRpdGxlIHAge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4ud2hlZWwtdGl0bGUgLnJlZCB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLndoZWVsLXRpdGxlIC5kaXZpZGVyIHtcbiAgd2lkdGg6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgaGVpZ2h0OiA0NnB4O1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLndoZWVsLXRpdGxlIC5kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4ud2hlZWwtdGl0bGUgLmZpbmlzaCAuZGlzY29udGludWVkIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi10b3A6IC0xLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ud2hlZWwtdGl0bGUgLnByaWNlLCAud2hlZWwtdGl0bGUgLm1zcnAtZGlzcGxheSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi53aGVlbC10aXRsZSAucHJpY2Ugc3BhbiwgLndoZWVsLXRpdGxlIC5tc3JwLWRpc3BsYXkgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbi53aGVlbC10aXRsZSAucHJpY2Ugc3Bhbi5tc3JwLXByaWNpbmcsIC53aGVlbC10aXRsZSAubXNycC1kaXNwbGF5IHNwYW4ubXNycC1wcmljaW5nIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLndoZWVsLXRpdGxlIC5wcmljZSBzcGFuLm1zcnAtcHJpY2luZzpiZWZvcmUsIC53aGVlbC10aXRsZSAubXNycC1kaXNwbGF5IHNwYW4ubXNycC1wcmljaW5nOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDQ1JTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNkMDAyMDQ7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gIHRyYW5zZm9ybTogc2tld1koMTBkZWcpO1xufVxuLndoZWVsLXRpdGxlIC5tc3JwLWRpc3BsYXkge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jd2hlZWwgLndoZWVsLWNvbnRlbnQtY29udGFpbmVyIC5jYXJ0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWwgLndoZWVsLWNvbnRlbnQtY29udGFpbmVyIC5jYXJ0IHtcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuICB9XG59XG4jd2hlZWwgLmNhcnQge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbCAuY2FydCAucHJvZHVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3Quc2t1LXByb2R1Y3Qge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbiN3aGVlbCAuY2FydCAucHJvZHVjdCAjcHJvZHVjdC1zZWxlY3Qge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAwLjVyZW0gY2VudGVyO1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3QgLnByb2R1Y3Qtc2t1IHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3QgLmxhYmVsLnNrdS1pbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuI3doZWVsIC5jYXJ0IC5wcm9kdWN0IC5sYWJlbC5za3UtaW5mb3JtYXRpb24tcmVhciB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIHBhZGRpbmctdG9wOiAwLjVyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByb2R1Y3QgLmxhYmVsLnNrdS1sYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIHtcbiAgbWF4LXdpZHRoOiA0MDBweDtcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIHNwYW4ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZWVlZWU7XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbi5maXRtZW50LW9wZW4ge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5idXR0b24uZml0bWVudC1vcGVuOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbn1cbiN3aGVlbCAuY2FydCAuZml0bWVudC1zZWxlY3RlZCAudmVoaWNsZSAuYnV0dG9uLmZpdG1lbnQtb3Blbjpob3ZlciBzcGFuIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLmJ1dHRvbi5maXRtZW50Q2xlYXIzOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC5yZW1vdmUtZml0bWVudCB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG59XG4jd2hlZWwgLmNhcnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUgLnZvdi1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzMzMzMztcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC52b3YtbGluayB7XG4gICAgbWF4LXdpZHRoOiAyNjBweDtcbiAgfVxufVxuI3doZWVsIC5jYXJ0IC5maXRtZW50LXNlbGVjdGVkIC52ZWhpY2xlIC52b3YtbGluayBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBmb250LXNpemU6IDIuMjVyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiB7XG4gIG1heC13aWR0aDogMzcwcHg7XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbi5za3UtcHJpY2luZy1zZWN0aW9uIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbn1cbiN3aGVlbCAuY2FydCAucHJpY2luZy1zZWN0aW9uIC50b3Age1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbCAuY2FydCAucHJpY2luZy1zZWN0aW9uIC50b3AgLnF1YW50aXR5IGlucHV0IHtcbiAgbWF4LXdpZHRoOiA4MHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbn1cbiN3aGVlbCAuY2FydCAucHJpY2luZy1zZWN0aW9uIC50b3AgLnByaWNpbmcge1xuICBmb250LXNpemU6IDEuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjE1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAuYm90dG9tIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgZm9udC1zaXplOiAwLjhyZW07XG59XG4jd2hlZWwgLmNhcnQgLnByaWNpbmctc2VjdGlvbiAuYm90dG9tIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXIge1xuICAgIHdpZHRoOiA4NSU7XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlciAucmVmZXJlbmNlLXZlaGljbGUgLmZpdG1lbnQtbWVudSBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jd2hlZWxzIC5maWx0ZXIgaDMge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyIGgzIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlciB1bCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEge1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIHRyYW5zZm9ybTogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlLXRpdGxlIGg0IHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI3doZWVscyAuZmlsdGVyIGg0IHtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmljb24tcHJvZHVjdC1maWx0ZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbiN3aGVlbHMgLmZpbHRlciAuaWNvbi1wcm9kdWN0LWZpbHRlci5maWx0ZXItYnJhbmRzLW9wdHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyLmZpbHRlci1hY3RpdmUge1xuICBib3JkZXItYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmljb24tcHJvZHVjdC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWxzIC5maWx0ZXIgLmljb24tcHJvZHVjdC1maWx0ZXIgLmljb24tZmlsdGVyLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyIC5pY29uLWZpbHRlci10aXRsZSBpIHtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyIC5pY29uLWZpbHRlci1pdGVtcyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC5maWx0ZXIgLmljb24tcHJvZHVjdC1maWx0ZXIgLmljb24tZmlsdGVyLWl0ZW1zIGxhYmVsIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmljb24tcHJvZHVjdC1maWx0ZXIgLmljb24tZmlsdGVyLWl0ZW1zIC5maWx0ZXItYnV0dG9uIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBjb2xvcjogI2QwMDIwNDtcbiAgbWFyZ2luOiAxcmVtIDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyIC5pY29uLWZpbHRlci1pdGVtcyAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjY2NjY2NjO1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyLmZpbHRlci1maXRtZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDhweCBzb2xpZCAjOTk5OTk5O1xufVxuI3doZWVscyAuZmlsdGVyIC5pY29uLXByb2R1Y3QtZmlsdGVyLmZpbHRlci1maXRtZW50IC5maXRtZW50LXNlYXJjaC1idXR0b24gLmJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cbiN3aGVlbHM6bm90KC53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSkgLmZpdG1lbnQtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjN2Y4MjgzO1xuICBtYXJnaW4tdG9wOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZml0bWVudC1oZWFkZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG59XG4jd2hlZWxzOm5vdCgud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUpIC5maXRtZW50LWhlYWRlciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZml0bWVudC1oZWFkZXIgLmNvbHVtbiwgI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZml0bWVudC1oZWFkZXIgLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZml0bWVudC1oZWFkZXIgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzOm5vdCgud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUpIC5maXRtZW50LWhlYWRlciAuYnV0dG9uLmZpdG1lbnQtb3BlbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZmlsdGVyIC5maXRtZW50LXNlYXJjaC1idXR0b24gLmJ1dHRvbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVsczpub3QoLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlKSAuZmlsdGVyIC5maWx0ZXItaXRlbXMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYWNjb3JkaW9uLWZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19jb250YWluZXIge1xuICAgIC8qZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjsqL1xuICB9XG59XG4uYWNjb3JkaW9uLWZpbHRlcl9faGVhZGVyIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbn1cbi5hY2NvcmRpb24tZmlsdGVyX19oZWFkZXItLW1vYmlsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmFjY29yZGlvbi1maWx0ZXJfX2NvbnRlbnQge1xuICBib3JkZXI6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuYWNjb3JkaW9uLWZpbHRlcl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biB7XG4gICAgbWFyZ2luOiAwIDAuNXJlbTtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cbn1cbi5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biBzZWxlY3Qge1xuICBwYWRkaW5nOiAxcmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDByZW0gY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHNlbGVjdCB7XG4gICAgcGFkZGluZzogMC41cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gc2VsZWN0IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5hY2NvcmRpb24tZmlsdGVyX19idG4ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuNjVyZW0gMXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjY29yZGlvbi1maWx0ZXJfX2J0biB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNzUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQsIC5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00ODVweCk7XG59XG5cbi5vZmYtY2FudmFzIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ub2ZmLWNhbnZhcyA+IGRpdiA+IGRpdiB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbn1cbi5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAvKndpZHRoOjQ0NXB4OyAvLyBOZWVkIHRvIHVwZGF0ZSBqcyBiZWZvcmUgYXBwbHlpbmcuLi4uKi9cbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICB3aWR0aDogNDQ1cHg7XG4gIH1cbn1cbi5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuODI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiBub25lO1xufVxuLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgcGFkZGluZzogMS4yNXJlbSAycmVtO1xuICBmb250LXNpemU6IDAuODI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLm9mZi1jYW52YXMgLmNsb3NlLWJ1dHRvbiBzcGFuIHtcbiAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgZm9udC1zaXplOiAzcmVtO1xufVxuLm9mZi1jYW52YXMgLmNsb3NlLWJ1dHRvbiB7XG4gIC8qXG4gIHBhZGRpbmc6LjVyZW0gMnJlbTtcbiAgY29sb3I6JGxpZ2h0LWdyYXk7XG4gIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICovXG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uLm9yYW5nZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4ub2ZmLWNhbnZhcyAuY2xvc2UtYnV0dG9uLm9yYW5nZTpob3ZlciB7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctdG9wOiAzcmVtO1xuICBtYXJnaW4tdG9wOiAwO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiK1wiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICB0b3A6IDEzcHg7XG4gIG1hcmdpbi10b3A6IDA7XG4gIHJpZ2h0OiAycmVtO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXSA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIi1cIjtcbiAgdHJhbnNmb3JtOiBub25lO1xufVxuLm9mZi1jYW52YXMgLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5vZmYtY2FudmFzIC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudSA+IGxpID4gYSAuZmEtY2FyZXQtZG93biB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ub2ZmLWNhbnZhcyAudmVydGljYWwubWVudS5pcy1hY2NvcmRpb24tc3VibWVudSA+IGxpOjphZnRlciB7XG4gIGxlZnQ6IDA7XG59XG4ub2ZmLWNhbnZhcyAuc29jaWFsLW1lbnUge1xuICBwYWRkaW5nOiAxcmVtIDFyZW0gMnJlbTtcbn1cbi5vZmYtY2FudmFzIC5zb2NpYWwtbWVudSBhOmhvdmVyIHtcbiAgY29sb3I6ICMzMzMzMzM7XG59XG4ub2ZmLWNhbnZhcyAucHJvZHVjdC1maWx0ZXJzIC5pY29uLXByb2R1Y3QtZmlsdGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgLnByb2R1Y3QtZmlsdGVycyAuZmlsdGVyLWJyYW5kcy1vcHRzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5vZmYtY2FudmFzIC5pY29uLWZpbHRlci10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5vZmYtY2FudmFzIC5pY29uLWZpbHRlci10aXRsZSBpIHtcbiAgY29sb3I6ICM5OTk5OTk7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbi5vZmYtY2FudmFzIC5pY29uLWZpbHRlci1pdGVtcyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgLmljb24tZmlsdGVyLWl0ZW1zIGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4ub2ZmLWNhbnZhcyAuaWNvbi1maWx0ZXItaXRlbXMgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLm9mZi1jYW52YXMgLmljb24tZmlsdGVyLWl0ZW1zIGxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAucHJvZHVjdC1maWx0ZXJzLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5wcm9kdWN0LWZpbHRlcnMge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIge1xuICBwYWRkaW5nLWxlZnQ6IDJyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDJyZW07XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciBoNCwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciBoNCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgdWwsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgbGFiZWwsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgbGFiZWwge1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgaS5mYS1taW51cywgLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgaS5mYS1wbHVzLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIGkuZmEtbWludXMsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgaS5mYS1wbHVzIHtcbiAgY29sb3I6ICM4ODg4ODg7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciBpLmZhLW1pbnVzOmhvdmVyLCAub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciBpLmZhLXBsdXM6aG92ZXIsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgaS5mYS1taW51czpob3ZlciwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciBpLmZhLXBsdXM6aG92ZXIge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItdGl0bGUsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYnV0dG9uLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYnV0dG9uIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzQ0NDQ0NDtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYnV0dG9uOmhvdmVyLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYnV0dG9uOmhvdmVyIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWl0ZW1zLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItaXRlbXMge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItaXRlbXMgbGksIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1pdGVtcyBsaSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgLmZpbHRlci1pdGVtcyBpbnB1dCwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWl0ZW1zIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItaXRlbXMgbGFiZWwsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1pdGVtcyBsYWJlbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUge1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUgdWwsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUgdWwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuLm9mZi1jYW52YXMgLndoZWVscy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhIGksIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSBpIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBmb250LXNpemU6IGluaGVyaXQ7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIGE6aG92ZXIgaSwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyIGkge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhLmZpdG1lbnRTZXQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpIHtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlLWNsZWFyIGEsIC5vZmYtY2FudmFzIC50aXJlcy1zbGlkZS1maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM0NDQ0NDQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDA7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhOmhvdmVyLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlLWNsZWFyIGE6aG92ZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLXRpdGxlLCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5vZmYtY2FudmFzIC53aGVlbHMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLXRpdGxlIGg0LCAub2ZmLWNhbnZhcyAudGlyZXMtc2xpZGUtZmlsdGVyIC5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLXRpdGxlIGg0IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ub2ZmLWNhbnZhcyAud2hlZWxzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWJyYW5kcyBsYWJlbCwgLm9mZi1jYW52YXMgLnRpcmVzLXNsaWRlLWZpbHRlciAuZmlsdGVyLWJyYW5kcyBsYWJlbCB7XG4gIG1heC13aWR0aDogMjYwcHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuLm9mZi1jYW52YXMgLnNsaWRlLWZpbHRlci1nYWxsZXJ5IHtcbiAgbWFyZ2luLXRvcDogMnJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmludCAucGFnZS1jb250ZW50ID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgfVxufVxuLmludCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCA+IC5yb3cge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmludCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAuYnV0dG9uIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDFyZW0gMC41cmVtO1xufVxuLmludCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAuYnV0dG9uLmZpdG1lbnQtb3BlbiB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmludCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAuYnV0dG9uOm5vdCguc2VhcmNoLWJ5LXZlaGljbGUpIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuLmludCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAuYnV0dG9uOm5vdCguc2VhcmNoLWJ5LXZlaGljbGUpIC5idXR0b24tdGV4dCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLmludCAubGlzdGluZy1zZWFyY2gtYmFyID4gLmNvbHVtbjpmaXJzdC1jaGlsZCwgLmludCAubGlzdGluZy1zZWFyY2gtYmFyID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3doZWVscy53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSAucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscy53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuI3doZWVscy53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSAucGFnZS1oZWFkZXIgLmJhY2tncm91bmQtaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICN3aGVlbHMud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB9XG59XG4jd2hlZWxzLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIC5wYWdpbmF0aW9uIC5jdXJyZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbn1cblxuI3doZWVsLmRldGFpbC1ieS12ZWhpY2xlIC52b3YtY2FsbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbiN3aGVlbC5kZXRhaWwtYnktdmVoaWNsZSAudm92LWNhbGwgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xufVxuI3doZWVsLmRldGFpbC1ieS12ZWhpY2xlIC52b3YtY2FsbCBhIGkge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cbiN3aGVlbC5kZXRhaWwtYnktdmVoaWNsZSAudm92LWNhbGwge1xuICAvKlxuICAuZml0bWVudC1idXR0b24ge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDowO1xuICAgIGJvdHRvbTotMzAwcHg7XG4gICAgei1pbmRleDoxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBib3R0b206LTQwMHB4O1xuICAgIH1cbiAgICBhIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGJsYWNrO1xuICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9Ki9cbn1cbiN3aGVlbC5kZXRhaWwtYnktdmVoaWNsZSAuY3RhIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMGEwYTBhO1xufVxuXG4ud2hpdGUtcG9wdXAgLmZpdG1lbnRDaGVja19CdXR0b24ge1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDAuODVyZW07XG59XG5cbi52ZWhpY2xlLWZpdG1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLnZlaGljbGUtZml0bWVudCAuZml0bWVudC1zZWxlY3RlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2VkZWRlZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y2ZjZmNjtcbiAgcGFkZGluZzogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi52ZWhpY2xlLWZpdG1lbnQgLmZpdG1lbnQtc2VsZWN0ZWQgLnZlaGljbGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4udmVoaWNsZS1maXRtZW50IC5maXRtZW50LXNlbGVjdGVkLW90aGVyLXNwZWNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi52ZWhpY2xlLWZpdG1lbnQgLmZpdG1lbnQtc2VsZWN0ZWQtc2t1IHNwYW4ge1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi52ZWhpY2xlLWZpdG1lbnQgLmxhYmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbi52ZWhpY2xlLWZpdG1lbnQgaSB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6ICMzM2NjMzM7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLnZlaGljbGUtZml0bWVudCBwLCAudmVoaWNsZS1maXRtZW50IGEge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4udmVoaWNsZS1maXRtZW50IHAge1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG4udmVoaWNsZS1maXRtZW50IC5yZW1vdmUtZml0bWVudCB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLnZlaGljbGUtZml0bWVudCAudm92LWxpbmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBoNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBoNiB7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgc2VsZWN0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLmVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbGVmdDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgei1pbmRleDogMjtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLm5vLWZpdG1lbnQge1xuICBtaW4taGVpZ2h0OiA2cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5uby1maXRtZW50OjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBjb250ZW50OiBcIlwiO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIG9wYWNpdHk6IDAuODtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAubm8tZml0bWVudCAuZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLmxvYWRpbmdJbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBkaXNwbGF5OiBub25lO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCAuaG92ZXItaXRlbTpob3ZlciBidXR0b24ge1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsIC5ob3Zlci1pdGVtOmhvdmVyIGltZyB7XG4gIG9wYWNpdHk6IDAuMDc1O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgLmhvdmVyLWl0ZW06aG92ZXI6OmJlZm9yZSB7XG4gIG9wYWNpdHk6IDAuNztcbn1cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDQwJTtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xuICBvcGFjaXR5OiAwO1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbCBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xufVxuI3NlZS1vbi12ZWhpY2xlLWRldGFpbC1vdmVybGF5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgZGlzcGxheTogdGFibGU7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDUwcHg7XG59XG4jc2VlLW9uLXZlaGljbGUtZGV0YWlsLW92ZXJsYXkgLmZhLXNwaW5uZXIge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5vcGVuLXNlZS1vbi12ZWhpY2xlLXBvcHVwIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMC44MjVyZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ub3Blbi1zZWUtb24tdmVoaWNsZS1wb3B1cDpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLm9wZW4tc2VlLW9uLXZlaGljbGUtcG9wdXAtY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBmb250LXNpemU6IDAuODI1cmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWltYWdlIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgcGFkZGluZy10b3A6IDA7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgcGFkZGluZzogMCAwLjI1cmVtIDAuNXJlbTtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2IHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogOHB4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2IHtcbiAgICBtYXJnaW46IDAgMC4zNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2IGxhYmVsLCAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYgLmluZm8tZGlzcGxheSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYgbGFiZWwge1xuICBjb2xvcjogIzY2NjY2NjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbmZvcm1hdGlvbiA+IGRpdiAuaW5mby1kaXNwbGF5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYgaSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2LnBhaW50LWluZm8tY29udGFpbmVyIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2LnBhaW50LWluZm8tY29udGFpbmVyOmhvdmVyIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYucGFpbnQtaW5mby1jb250YWluZXIgbGFiZWwge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYucGFpbnQtaW5mby1jb250YWluZXIgI2ljbS1jaGFuZ2UtY29sb3Ige1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYucGFpbnQtaW5mby1jb250YWluZXIgI2ljbS1jaGFuZ2UtY29sb3I6aG92ZXIge1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbmZvcm1hdGlvbiA+IGRpdi53aGVlbC1pbmZvLWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYud2hlZWwtaW5mby1jb250YWluZXIgaW1nIHtcbiAgaGVpZ2h0OiA1MHB4O1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uID4gZGl2LndoZWVsLWluZm8tY29udGFpbmVyIC5yaWdodCB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gPiBkaXYud2hlZWwtaW5mby1jb250YWluZXIgLnJpZ2h0IHtcbiAgICB3aWR0aDogODAlO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gLndoZWVsLWluZm8ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbmZvcm1hdGlvbiAud2hlZWwtaW5mbyAudGh1bWIge1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogdG9wIHJpZ2h0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDE2MCU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gLndoZWVsLWluZm8gLndoZWVsIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZlaGljbGUtcG9wdXAtaW5mb3JtYXRpb24gLndoZWVsLWluZm8gLnNwZWNzIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbmZvcm1hdGlvbiAud2hlZWwtaW5mbyAuc3BlY3MgLmRpdmlkZXIge1xuICBtYXJnaW4tbGVmdDogMC4yNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWluZm9ybWF0aW9uIC52ZWhpY2xlLWluZm8ge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5tZnAtY2xvc2Uge1xuICBmb250LXNpemU6IDJyZW07XG59XG5cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMTAwdm1heCByZ2JhKDAsIDAsIDAsIDAuNyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMWQxZDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXBbb3Blbl0ge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3doZWVsLXNwZWMtcHJpY2UsICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuYnV5LW5vdyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3ZlaGljbGUtZGVzY3JpcHRpb24sICNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUgI3Zvdi1zdWJtb2RlbCB7XG4gIGZvbnQtc2l6ZTogMS4zcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1jb2xvci1idXR0b24ge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAud2hlZWwtaW5mbyB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWRlZGVkO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICBwYWRkaW5nOiAxcmVtO1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC53aGVlbC1pbmZvIC53aGVlbC10aHVtYm5haWwge1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWluZm8sICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcy1pbmZvIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgd2lkdGg6IDEwMCU7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3doZWVsLWJyYW5kIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAuc3BlY3MtY29udGFpbmVyIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWNvbnRhaW5lciA+IC5zcGVjczpmaXJzdC1jaGlsZCB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgLnNwZWNzLWNvbnRhaW5lciA+IC5zcGVjczpmaXJzdC1jaGlsZCB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcyAuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC5zcGVjcyAuZGl2aWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI2ljbS12b3YtbG9hZGluZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBib3JkZXItcmFkaXVzOiAxMHB4O1xufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGZsZXgtZ3JvdzogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbWFnZSB7XG4gICAgcGFkZGluZzogMC43NXJlbSAwLjcxMjVyZW0gMC43NXJlbTtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWltYWdlIC52b3YtdmVoaWNsZS1pbWFnZS1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIGhlaWdodDogMTAwJTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudmVoaWNsZS1wb3B1cC1pbWFnZSAudm92LXZlaGljbGUtaW1hZ2UtY29udGFpbmVyIGltZyB7XG4gIHBhZGRpbmc6IDIuMjVyZW0gMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52ZWhpY2xlLXBvcHVwLWltYWdlIC52b3YtdmVoaWNsZS1pbWFnZS1jb250YWluZXIgaW1nIHtcbiAgICB3aWR0aDogMTEwMHB4O1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZvdi1hbmdsZS1hcnJvdyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBwYWRkaW5nOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgb3BhY2l0eTogMC45O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3NlZS1vbi12ZWhpY2xlLXBvcHVwIC52b3YtYW5nbGUtYXJyb3cge1xuICAgIHRvcDogNDglO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZvdi1hbmdsZS1hcnJvdyBpIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgLnZvdi1hbmdsZS1hcnJvdzpob3ZlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgb3BhY2l0eTogMTtcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAudm92LWFuZ2xlLWFycm93OmhvdmVyIGkge1xuICBjb2xvcjogI2NjY2NjYztcbn1cbiNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdm92LXByZXZpb3VzLWFuZ2xlIHtcbiAgbGVmdDogMDtcbiAgcGFkZGluZzogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNzZWUtb24tdmVoaWNsZS1wb3B1cCAjdm92LXByZXZpb3VzLWFuZ2xlIHtcbiAgICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4jc2VlLW9uLXZlaGljbGUtcG9wdXAgI3Zvdi1uZXh0LWFuZ2xlIHtcbiAgcmlnaHQ6IDA7XG4gIHBhZGRpbmc6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjc2VlLW9uLXZlaGljbGUtcG9wdXAgI3Zvdi1uZXh0LWFuZ2xlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDJyZW07XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG4jc3dhdGNoZXMtZGlhbG9nIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDB2bWF4IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cbiNzd2F0Y2hlcy1kaWFsb2cgaDQge1xuICBmb250LXNpemU6IDFyZW07XG59XG4jc3dhdGNoZXMtZGlhbG9nIC5pY20tdm92LXN3YXRjaC1ncmlkIHtcbiAgZGlzcGxheTogZ3JpZDtcbiAgZ2FwOiAxMHB4O1xuICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG59XG4jc3dhdGNoZXMtZGlhbG9nIC5pY20tdm92LXN3YXRjaC1kZXNjcmlwdGlvbiB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cblxuI3doZWVscyAud2hlZWwtZmlsdGVycyBoMywgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyBoMyB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC50aXRsZSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAudGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2FhYWFhYTtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLmFjY29yZGlvbi1jb250YWluZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLmFjY29yZGlvbi1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAuYWNjb3JkaW9uLXRpdGxlLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC5hY2NvcmRpb24tdGl0bGUge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLmFjY29yZGlvbi1jb250ZW50LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2FhYWFhYTtcbiAgfVxufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbiwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAuZml0bWVudC1zZWFyY2ggLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXJzIC5maXRtZW50LXNlYXJjaCAuYnV0dG9uLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC5maXRtZW50LXNlYXJjaCAuYnV0dG9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC5maXRtZW50LXNlYXJjaCAuYnV0dG9uOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC5maXRtZW50LXNlYXJjaCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2Njtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgaDUsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciBoNSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgdWwsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciBsaSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIGxpIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgaW5wdXQsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgbGFiZWwsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlciBsYWJlbCB7XG4gIGxpbmUtaGVpZ2h0OiAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSB1bCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgdWwge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGxpLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGEsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZzogMC4yNXJlbSAwLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgYTpob3ZlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSBhIGksICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIGEgaSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgYSNjbGVhciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgYSNjbGVhciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAwLjVyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQge1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyIGEsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyIGEge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLWNsZWFyLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2FhYWFhYTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLWNsZWFyIGEsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci5maWx0ZXItYWN0aXZlIC5maWx0ZXItYWN0aXZlLWNsZWFyIGEge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBwYWRkaW5nOiAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtY2xlYXIgYTpob3ZlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtY2xlYXIgYTpob3ZlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyIC5maWx0ZXItYnV0dG9uLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXIgLmZpbHRlci1idXR0b24ge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXBhcnQtbnVtYmVyIHtcbiAgbWF4LXdpZHRoOiA4MCU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNjY2NjY2O1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1wYXJ0LW51bWJlciBpbnB1dCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXBhcnQtbnVtYmVyIGlucHV0IHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXBhcnQtbnVtYmVyIGJ1dHRvbiwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXBhcnQtbnVtYmVyIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzMzY2OTk7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSB7XG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICM2NjY2NjY7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgbWF4LXdpZHRoOiA4MCU7XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgbGFiZWwsICN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IGxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIC53aGVlbC1maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBzZWxlY3QsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlcnMgLndoZWVsLWZpbHRlci1zaG9wYnkgc2VsZWN0IHtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgfVxufVxuI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBoNSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBoNSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBoNSwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVycyAud2hlZWwtZmlsdGVyLXNob3BieSBoNSB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjd2hlZWxzIC5maWx0ZXItc2VsZWN0aW9uLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXItc2VsZWN0aW9uLCAjZ2FsbGVyeSAuZmlsdGVyLXNlbGVjdGlvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDAuNzVyZW07XG4gIH1cbiAgI3doZWVscyAuYWNjb3JkaW9uLWl0ZW0sICN3aGVlbC1icmFuZHMgLmFjY29yZGlvbi1pdGVtLCAjZ2FsbGVyeSAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWFhYWE7XG4gIH1cbn1cbiN3aGVlbHMgLmFjY29yZGlvbi10aXRsZSwgI3doZWVsLWJyYW5kcyAuYWNjb3JkaW9uLXRpdGxlLCAjZ2FsbGVyeSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBib3JkZXI6IDA7XG59XG5cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAjd2hlZWwtZmlsdGVyLXNlYXJjaCwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyICN3aGVlbC1maWx0ZXItc2VhcmNoIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVyICN3aGVlbC1maWx0ZXItc2VhcmNoIC5icmFuZC1uYW1lLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgI3doZWVsLWZpbHRlci1zZWFyY2ggLmJyYW5kLW5hbWUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbjogMCAxcmVtO1xufVxuI3doZWVscyAud2hlZWwtZmlsdGVyICN3aGVlbC1maWx0ZXItc2VhcmNoIC5hY2NvcmRpb24tZmlsdGVyX19oZWFkZXIsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAjd2hlZWwtZmlsdGVyLXNlYXJjaCAuYWNjb3JkaW9uLWZpbHRlcl9faGVhZGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVuc2V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3doZWVscyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19jb250ZW50LCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2NvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2NvbnRhaW5lciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19jb250YWluZXIge1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuI3doZWVscyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biB7XG4gIGZsZXgtZ3JvdzogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgLmFjY29yZGlvbi1maWx0ZXJfX2Ryb3Bkb3duIHtcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuI3doZWVscyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biBzZWxlY3QsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gc2VsZWN0IHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZGRkZGRkO1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cbiN3aGVlbHMgLndoZWVsLWZpbHRlciAuYWNjb3JkaW9uLWZpbHRlcl9fZHJvcGRvd24gLmJ1dHRvbiwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIC5hY2NvcmRpb24tZmlsdGVyX19kcm9wZG93biAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMS43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDFyZW07XG59XG4jd2hlZWxzIC53aGVlbC1maWx0ZXIgLnNvcnQtd2hlZWxzLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXIgLnNvcnQtd2hlZWxzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMgLndoZWVsLWZpbHRlciAuc29ydC13aGVlbHMsICN3aGVlbC1icmFuZHMgLndoZWVsLWZpbHRlciAuc29ydC13aGVlbHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbn1cblxuI3doZWVscyAuZmlsdGVyLWZpdG1lbnQsICN3aGVlbC1icmFuZHMgLmZpbHRlci1maXRtZW50LCAjZ2FsbGVyeSAuZmlsdGVyLWZpdG1lbnQge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnZlaGljbGUtdGl0bGUsICNnYWxsZXJ5IC5maWx0ZXIgLnZlaGljbGUtdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBoZWlnaHQ6IDU0cHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuI3doZWVscyAuZmlsdGVyIC52ZWhpY2xlLXRpdGxlIGg0LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnZlaGljbGUtdGl0bGUgaDQsICNnYWxsZXJ5IC5maWx0ZXIgLnZlaGljbGUtdGl0bGUgaDQge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMgLmZpbHRlciAudmVoaWNsZS1zZWxlY3QsICN3aGVlbC1icmFuZHMgLmZpbHRlciAudmVoaWNsZS1zZWxlY3QsICNnYWxsZXJ5IC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IHtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgYm9yZGVyLXRvcDogMDtcbn1cbiN3aGVlbHMgLmZpbHRlciAudmVoaWNsZS1zZWxlY3Qgc2VsZWN0LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IHNlbGVjdCwgI2dhbGxlcnkgLmZpbHRlciAudmVoaWNsZS1zZWxlY3Qgc2VsZWN0IHtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xufVxuI3doZWVscyAuZmlsdGVyIC52ZWhpY2xlLXNlbGVjdCAuYnV0dG9uLWdyb3VwLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IC5idXR0b24tZ3JvdXAsICNnYWxsZXJ5IC5maWx0ZXIgLnZlaGljbGUtc2VsZWN0IC5idXR0b24tZ3JvdXAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI3doZWVscyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSwgI3doZWVsLWJyYW5kcyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUge1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG59XG4jd2hlZWxzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIGlucHV0LCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIGlucHV0LCAjZ2FsbGVyeSAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSBpbnB1dCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDA7XG59XG4jd2hlZWxzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xlLCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIC52c19fZHJvcGRvd24tdG9nZ2xlLCAjZ2FsbGVyeSAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkLCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIGlucHV0LCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCBpbnB1dCwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIGlucHV0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbiN3aGVlbHMgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIC52c19fZHJvcGRvd24tdG9nZ2xlLCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCAudnNfX2Ryb3Bkb3duLXRvZ2dsZSwgI2dhbGxlcnkgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3QgLnZzLS11bnNlYXJjaGFibGUudnMtLWRpc2FibGVkIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgYm9yZGVyOiAwO1xufVxuI3doZWVscyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZS52cy0tZGlzYWJsZWQgc3ZnLCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCBzdmcsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlLnZzLS1kaXNhYmxlZCBzdmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xufVxuI3doZWVscyAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCAudnMtLXVuc2VhcmNoYWJsZSAudnNfX3NlbGVjdGVkLCAjd2hlZWwtYnJhbmRzICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIC52c19fc2VsZWN0ZWQsICNnYWxsZXJ5ICNmaXRtZW50LXZlaGljbGUtc2VsZWN0IC52cy0tdW5zZWFyY2hhYmxlIC52c19fc2VsZWN0ZWQge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ucHJvZHVjdC1maWx0ZXJzIC5pY29uLXByb2R1Y3QtZmlsdGVyIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xufVxuLnByb2R1Y3QtZmlsdGVycyAuZmlsdGVyLWJyYW5kcy1vcHRzIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmljb24tZmlsdGVyLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLmljb24tZmlsdGVyLXRpdGxlIGg0IHtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi5pY29uLWZpbHRlci1pdGVtcyB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLmljb24tZmlsdGVyLWl0ZW1zIGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaWNvbi1maWx0ZXItaXRlbXMgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmljb24tZmlsdGVyLWl0ZW1zIGxhYmVsIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbiN3aGVlbHMgLmZpbHRlciwgI3doZWVsLWJyYW5kcyAuZmlsdGVyLCAjZ2FsbGVyeSAuZmlsdGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xufVxuI3doZWVscyAuZmlsdGVyIGg0LCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgaDQsICNnYWxsZXJ5IC5maWx0ZXIgaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgdWwsICN3aGVlbC1icmFuZHMgLmZpbHRlciB1bCwgI2dhbGxlcnkgLmZpbHRlciB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4jd2hlZWxzIC5maWx0ZXIgbGFiZWwsICN3aGVlbC1icmFuZHMgLmZpbHRlciBsYWJlbCwgI2dhbGxlcnkgLmZpbHRlciBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzIC5maWx0ZXIgaS5mYS1taW51cywgI3doZWVscyAuZmlsdGVyIGkuZmEtcGx1cywgI3doZWVsLWJyYW5kcyAuZmlsdGVyIGkuZmEtbWludXMsICN3aGVlbC1icmFuZHMgLmZpbHRlciBpLmZhLXBsdXMsICNnYWxsZXJ5IC5maWx0ZXIgaS5mYS1taW51cywgI2dhbGxlcnkgLmZpbHRlciBpLmZhLXBsdXMge1xuICBjb2xvcjogIzg4ODg4ODtcbn1cbiN3aGVlbHMgLmZpbHRlciBpLmZhLW1pbnVzOmhvdmVyLCAjd2hlZWxzIC5maWx0ZXIgaS5mYS1wbHVzOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgaS5mYS1taW51czpob3ZlciwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIGkuZmEtcGx1czpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciBpLmZhLW1pbnVzOmhvdmVyLCAjZ2FsbGVyeSAuZmlsdGVyIGkuZmEtcGx1czpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItdGl0bGUsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLXRpdGxlLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1idXR0b24sICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbiwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbiB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6ICM0NDQ0NDQ7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1idXR0b246aG92ZXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWJ1dHRvbjpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItaXRlbXMsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWl0ZW1zLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItaXRlbXMge1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWl0ZW1zIGxpLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWl0ZW1zIGxpIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBpbnB1dCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItaXRlbXMgaW5wdXQsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1pdGVtcyBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsYWJlbCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItaXRlbXMgbGFiZWwsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1pdGVtcyBsYWJlbCB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuI3doZWVscyAuZmlsdGVyIC5wcm9kdWN0LWZpbHRlcnMgLnByb2R1Y3QtZmlsdGVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIsICNnYWxsZXJ5IC5maWx0ZXIgLnByb2R1Y3QtZmlsdGVycyAucHJvZHVjdC1maWx0ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xuICB9XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEgaSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEgaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhIGkge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciBpLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgYTpob3ZlciBpLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGE6aG92ZXIgaSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhLmZpdG1lbnRTZXQge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSBhLmZpdG1lbnRTZXQgaSwgI3doZWVsLWJyYW5kcyAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpLCAjZ2FsbGVyeSAuZmlsdGVyIC5maWx0ZXItYWN0aXZlIGEuZml0bWVudFNldCBpIHtcbiAgY29sb3I6ICM2NjY2NjY7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgdWwgbGksICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSB1bCBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIH1cbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBjb2xvcjogIzQ0NDQ0NDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcbn1cbiN3aGVlbHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhOmhvdmVyLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUtY2xlYXIgYTpob3ZlciwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZS1jbGVhciBhOmhvdmVyIHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtdGl0bGUsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWxzIC5maWx0ZXIgLmZpbHRlci1hY3RpdmUgLmZpbHRlci1hY3RpdmUtdGl0bGUgaDQsICN3aGVlbC1icmFuZHMgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSBoNCwgI2dhbGxlcnkgLmZpbHRlciAuZmlsdGVyLWFjdGl2ZSAuZmlsdGVyLWFjdGl2ZS10aXRsZSBoNCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVscyAuZmlsdGVyIC5maWx0ZXItYnJhbmRzIGxhYmVsLCAjd2hlZWwtYnJhbmRzIC5maWx0ZXIgLmZpbHRlci1icmFuZHMgbGFiZWwsICNnYWxsZXJ5IC5maWx0ZXIgLmZpbHRlci1icmFuZHMgbGFiZWwge1xuICBtYXgtd2lkdGg6IDI2MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI3doZWVsIC53aGVlbC1pbmZvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIHtcbiAgLypwYWRkaW5nOjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjVweCAkZ3JheUM7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nOjIuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjIuNXJlbTtcbiAgfSovXG59XG4jd2hlZWwgLndoZWVsLWluZm8gaDEsICN3aGVlbCAud2hlZWwtaW5mbyBoNCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyBoMSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyBoNCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuICBsaW5lLWhlaWdodDogMS4xO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5ib3R0b20sICN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zdG9jaywgI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlLCAjd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctbWF0Y2gsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmJvdHRvbSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zdG9jaywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1tYXRjaCB7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3Mge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXNwZWNzLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAudG9wLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3Age1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmFmdGVyLCAjd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAucmVhciA+IHNwYW46YWZ0ZXIsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLnJlYXIgPiBzcGFuOmFmdGVyIHtcbiAgY29udGVudDogXCIsXCI7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLnRvcCAuZnJvbnQgPiBzcGFuOmxhc3QtY2hpbGQ6YWZ0ZXIsICN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAudG9wIC5yZWFyID4gc3BhbjpsYXN0LWNoaWxkOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLmZyb250ID4gc3BhbjpsYXN0LWNoaWxkOmFmdGVyLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC50b3AgLnJlYXIgPiBzcGFuOmxhc3QtY2hpbGQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXNwZWNzIC5ib3R0b20sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSBzcGFuIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1icmFuZCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIC5wcmljaW5nLWJyYW5kIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuY2FsbC1mb3IsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuY2FsbC1mb3Ige1xuICBjb2xvcjogI2QwMDIwNDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tIC5wcmljaW5nLXN0YXJ0aW5nIC5zYWxlLWl0ZW0sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbSAucHJpY2luZy1zdGFydGluZyAuc2FsZS1pdGVtIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctc3BlY3MgLmJvdHRvbS5ub24tc2t1cGFnZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tLm5vbi1za3VwYWdlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAuYm90dG9tLm5vbi1za3VwYWdlID4gZGl2LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXNwZWNzIC5ib3R0b20ubm9uLXNrdXBhZ2UgPiBkaXYge1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1zcGVjcyAucHJpY2luZy1zdG9jaywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1zcGVjcyAucHJpY2luZy1zdG9jayB7XG4gIGNvbG9yOiAjMzNjYzMzO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1wcmljZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZmVmZWY7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXByaWNlIC50aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlIC5zYWxlLWl0ZW0sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctcHJpY2UgLnRpdGxlIC5zYWxlLWl0ZW0ge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlIC5zdWJ0aXRsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAuc3VidGl0bGUge1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctcHJpY2UgLnN1YnRpdGxlIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctcHJpY2UgLnN1YnRpdGxlIHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLXByaWNlIC5wcmljZS1vcmlnaW5hbCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utb3JpZ2luYWwge1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utc2FsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy1wcmljZSAucHJpY2Utc2FsZSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5wcmljaW5nLW1hdGNoLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLW1hdGNoIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctdmVoaWNsZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAucHJpY2luZy12ZWhpY2xlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAucHJpY2luZy12ZWhpY2xlIGg0LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5wcmljaW5nLXZlaGljbGUgaDQge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLnByaWNpbmctdmVoaWNsZSBidXR0b24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLnByaWNpbmctdmVoaWNsZSBidXR0b24ge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDAuOTVyZW07XG4gIGNvbG9yOiAjZDAwMjA0O1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhIC5idXR0b24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YSAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMS42cmVtIDAuNXJlbTtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEgLmJ1dHRvbjpob3ZlciwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjY2NjO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEgLmJ1dHRvbi5ncmF5LCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5jdGEgLmJ1dHRvbi5ncmF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk5OTk5OTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhIC5idXR0b24uZ3JheTpob3ZlciwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b24uZ3JheTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YSAuYnV0dG9uLmFjdGl2ZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhIC5idXR0b24uYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWJ1dHRvbiwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5jdGEtbGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbms6bGFzdC1jaGlsZCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWxpbms6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rOmxhc3QtY2hpbGQgLmljb24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rOmxhc3QtY2hpbGQgLmljb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTk5OTk5O1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEtbGluay5vcmFuZ2UgLmljb24sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rLm9yYW5nZSAuaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4jd2hlZWwgLndoZWVsLWluZm8gLmN0YS1saW5rIGEsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIGEge1xuICBmb250LWZhbWlseTogXCJBcmlhbFwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5jdGEtbGluayAuaWNvbiwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuY3RhLWxpbmsgLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5zZXQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDIuNXJlbTtcbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbmsgLnRleHQsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIC50ZXh0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAud2hlZWwtaW5mbyAuY3RhLWxpbmsgLnRleHQsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmN0YS1saW5rIC50ZXh0IHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAuYnV5LW9wdGlvbnMsICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLmJ1eS1vcHRpb25zIHtcbiAgZm9udC1mYW1pbHk6IFwiQXJpYWxcIiwgc2Fucy1zZXJpZjtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Q0ZDRkNDtcbiAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5idXktb3B0aW9ucyBsYWJlbCwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuYnV5LW9wdGlvbnMgbGFiZWwge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI3doZWVsIC53aGVlbC1pbmZvIC5idXktb3B0aW9ucyAubWlzc2luZywgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAuYnV5LW9wdGlvbnMgLm1pc3Npbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgNTEsIDUxLCAwLjUpO1xufVxuXG4jd2hlZWwgLndoZWVsLWluZm8gaW1nLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIGltZyB7XG4gIG1heC13aWR0aDogMjAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2hlZWwgLndoZWVsLWluZm8gLnNlcmllcy1sb2dvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5zZXJpZXMtbG9nbyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICN3aGVlbCAud2hlZWwtaW5mbyAuc2VyaWVzLWxvZ28gaW1nLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIC5zZXJpZXMtbG9nbyBpbWcge1xuICAgIG1heC13aWR0aDogMTgwcHg7XG4gIH1cbn1cbiN3aGVlbCAud2hlZWwtaW5mbyAud2hlZWwtbmFtZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbCAud2hlZWwtaW5mbyAud2hlZWwtbmFtZSwgI3doZWVsIC5hY2Nlc3NvcnktaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuI3doZWVsIC53aGVlbC1pbmZvIC53aGVlbC1uYW1lIHNwYW4sICN3aGVlbCAuYWNjZXNzb3J5LWluZm8gLndoZWVsLW5hbWUgc3BhbiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG5cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwgaDUge1xuICBmb250LXdlaWdodDogNjAwO1xuICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4ud2hlZWwtZGV0YWlsLXNpemVzIC50aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi53aGVlbC1iYWRnZXMge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLWJhZGdlcyA+IGRpdiB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLndoZWVsLWJhZGdlcyBpbWcge1xuICBtYXgtd2lkdGg6IDEwMHB4O1xufVxuXG4ud2hlZWwtZmluaXNoZXMgaW1nIHtcbiAgbWF4LXdpZHRoOiAxNTBweDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ud2hlZWwtZmluaXNoZXMgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMC41O1xufVxuLndoZWVsLWZpbmlzaGVzIC50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAxLjE1cmVtO1xufVxuLndoZWVsLWZpbmlzaGVzIC5kZXRhaWwtdGh1bWIge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLWZpbmlzaGVzIC53aGVlbC1maW5pc2gge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuXG4ud2hlZWwtdmlkZW9zLmZpbmlzaGVzLWJvcmRlciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYWFhYWFhO1xuICBtYXJnaW4tdG9wOiAxLjVyZW07XG4gIHBhZGRpbmctdG9wOiAxLjVyZW07XG59XG4ud2hlZWwtdmlkZW9zIC50aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBtYXJnaW4tYm90dG9tOiAxLjE1cmVtO1xufVxuLndoZWVsLXZpZGVvcyAud2hlZWwtdmlkZW8ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLndoZWVsLXZpZGVvcyAud2hlZWwtdmlkZW8gPiBkaXYge1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiA1MCU7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyBhIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWFhYWE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi53aGVlbC12aWRlb3MgLndoZWVsLXZpZGVvIGE6aG92ZXIgLnBsYXktaWNvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyBhOmhvdmVyIC5wbGF5LWljb24gaW1nIHtcbiAgb3BhY2l0eTogMDtcbn1cbi53aGVlbC12aWRlb3MgLndoZWVsLXZpZGVvIC5wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ud2hlZWwtdmlkZW9zIC53aGVlbC12aWRlbyAucGxheS1pY29uIGltZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG4ucHJpY2luZy1pbmZvcm1hdGlvbiB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW07XG59XG5cbiN3aGVlbCAuc3BlYy1pbmZvcm1hdGlvbi1jb250YWluZXIgLnNwZWMtaW5mb3JtYXRpb24ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk5OTk5OTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5OTk5OTk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW0ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW06bnRoLWNoaWxkKG9kZCkgPiBkaXYge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlZWVlO1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi1pdGVtID4gZGl2IHtcbiAgd2lkdGg6IDUwJTtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW46IDAgMnB4O1xufVxuI3doZWVsIC5zcGVjLWluZm9ybWF0aW9uLWNvbnRhaW5lciAuc3BlYy1pbmZvcm1hdGlvbi1pdGVtID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4jd2hlZWwgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIC5zcGVjLWluZm9ybWF0aW9uLWl0ZW0gPiBkaXY6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuI3doZWVsIC53aGVlbC1kZXRhaWwtc3RhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IDM1JTtcbn1cbiN3aGVlbCAuc3RhZ2UtY29udGFpbmVyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgd2lkdGg6IDgwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbCAuc3RhZ2UtY29udGFpbmVyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogODUlO1xuICB9XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyB7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IDRyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cmVtO1xuICB9XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyAuc2xpY2stdHJhY2sge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB3aWR0aDogMTAwJTtcbn1cbiN3aGVlbCAuc3RhZ2UtY29udGFpbmVyIC5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZSwgI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMgLnNsaWNrLXRyYWNrIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbiN3aGVlbCAuc3RhZ2UtY29udGFpbmVyIC5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZSB7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgYm9yZGVyLWNvbG9yOiAjY2NjY2NjO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHdpZHRoOiAxMTVweCAhaW1wb3J0YW50O1xufVxuI3doZWVsIC5zdGFnZS1jb250YWluZXIgLmFsdC1pbWFnZXMgLnNsaWNrLXNsaWRlLnNsaWNrLWN1cnJlbnQge1xuICBib3JkZXItY29sb3I6ICM5OTk5OTk7XG59XG4jd2hlZWwgLnN0YWdlLWNvbnRhaW5lciAuYWx0LWltYWdlcyAuc2xpY2stYWN0aXZlOmFmdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiN3aGVlbCAuc3RhZ2UtY29udGFpbmVyIC5hbHQtaW1hZ2VzIHtcbiAgLyouc2xpY2stdHJhY2sge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgd2lkdGg6MTAwJSFpbXBvcnRhbnQ7XG4gICAgfVxuICB9Ki9cbn1cblxuLm1haW4taW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLm1haW4taW1hZ2UgaW1nIHtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5hbHQtaW1hZ2VzIHtcbiAgbWFyZ2luOiAwIGF1dG8gMnJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5hbHQtaW1hZ2VzIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5hbHQtaW1hZ2VzIC5zbGljay10cmFjayB7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmFsdC1pbWFnZXMtLXJldGFpbGVyIC5zbGljay10cmFjayB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAvKm1hcmdpbi10b3A6IDNyZW07Ki9cbiAgfVxufVxuLmFsdC1pbWFnZXMgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBib3R0b206IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1zbGlkZTpmb2N1cyB7XG4gIG91dGxpbmU6IDA7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stc2xpZGUgaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFsdC1pbWFnZXMgYSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgcGFkZGluZzogMC43cmVtO1xufVxuLmFsdC1pbWFnZXMgaW1nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIG9wYWNpdHk6IDAuNTtcbn1cbi5hbHQtaW1hZ2VzIGltZzpob3ZlciB7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbn1cbi5hbHQtaW1hZ2VzIC5zbGljay1hY3RpdmU6YWZ0ZXIge1xuICB3aWR0aDogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAgYXV0bztcbiAgaGVpZ2h0OiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stY3VycmVudDphZnRlciB7XG4gIHdpZHRoOiA4MCU7XG59XG4uYWx0LWltYWdlcyAuc2xpY2stY3VycmVudCBpbWcge1xuICBvcGFjaXR5OiAxO1xufVxuXG4jd2hlZWwgLmRldGFpbHMtbWVkaWEge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDJyZW07XG59XG5cbi56b29tIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uem9vbTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMzNweDtcbiAgaGVpZ2h0OiAzM3B4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG59XG4uem9vbSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi56b29tIGltZzo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi8qXG4uZWFzeXpvb20ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAnU2hyaW5rLXdyYXAnIHRoZSBlbGVtZW50IFxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgKmRpc3BsYXk6IGlubGluZTtcbiAgKnpvb206IDE7XG59XG5cbi5lYXN5em9vbSBpbWcge1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xufVxuXG4uZWFzeXpvb20uaXMtbG9hZGluZyBpbWcge1xuICBjdXJzb3I6IHByb2dyZXNzO1xufVxuXG4uZWFzeXpvb20uaXMtcmVhZHkgaW1nIHtcbiAgY3Vyc29yOiBjcm9zc2hhaXI7XG59XG5cbi5lYXN5em9vbS5pcy1lcnJvciBpbWcge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4uZWFzeXpvb20tbm90aWNlIHtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxNTA7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMGVtO1xuICBtYXJnaW46IC0xZW0gMCAwIC01ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm94LXNoYWRvdzogMCAwIDEwcHggIzg4ODtcbn1cblxuLmVhc3l6b29tLWZseW91dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4uZWFzeXpvb20tZmx5b3V0IGltZyB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cblxuXG5cbi5lYXN5em9vbS0tb3ZlcmxheSAuZWFzeXpvb20tZmx5b3V0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZWFzeXpvb20tLWFkamFjZW50IC5lYXN5em9vbS1mbHlvdXQge1xuICB0b3A6IC0xMHB4O1xuICBsZWZ0OiA3NSU7XG4gIHdpZHRoOiAzNTBweDtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gIGJvcmRlcjogM3B4IHNvbGlkICMzMzM7XG59XG5cblxuXG5cblxuXG5cblxuXG5cbiovXG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSBoMSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIGgxLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSBoMSB7XG4gICAgY29sb3I6ICNmZWZlZmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgaDEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgaDEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIGgxIHtcbiAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5jb250ZW50LWhlYWRlciwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuY29udGVudC1oZWFkZXIsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5jb250ZW50LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiL2ltYWdlcy9iYW5uZXJzL3doZWVscy1iYW5uZXIuanBnXCIpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0NDQ0NDQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuY29udGVudC1oZWFkZXIsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmNvbnRlbnQtaGVhZGVyLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuY29udGVudC1oZWFkZXIge1xuICAgIGhlaWdodDogMjQwcHg7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2UtY29udGVudC5wYWRkZWQuZXh0cmEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2UtY29udGVudC5wYWRkZWQuZXh0cmEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdlLWNvbnRlbnQucGFkZGVkLmV4dHJhIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGksICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDAuMzVyZW07XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwgPiBsaTpsYXN0LWNoaWxkLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgI3doZWVsLWZpbHRlci1zZWFyY2ggdWwgPiBsaTpsYXN0LWNoaWxkLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCBhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCBhIHtcbiAgd2lkdGg6IDk2cHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAjd2hlZWwtZmlsdGVyLXNlYXJjaCB1bCA+IGxpOmxhc3QtY2hpbGQgYSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCBhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyICN3aGVlbC1maWx0ZXItc2VhcmNoIHVsID4gbGk6bGFzdC1jaGlsZCBhIHtcbiAgICB3aWR0aDogNDBweDtcbiAgfVxufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGEge1xuICB3aWR0aDogNDZweDtcbiAgaGVpZ2h0OiA1MnB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcbiAgY29sb3I6ICM2NjY2NjY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYTpob3ZlciwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGEuYWN0aXZlLWxldHRlciwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIGE6aG92ZXIsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLmFjdGl2ZS1sZXR0ZXIsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYTpob3ZlciwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLmFjdGl2ZS1sZXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLmRpc2FibGUtbGV0dGVyLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5kaXNhYmxlLWxldHRlciwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciBhLmRpc2FibGUtbGV0dGVyIHtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIG9wYWNpdHk6IDAuMjU7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW4sICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnMsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1ucywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDAuMzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzVyZW07XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYSwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBhLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYnV0dG9uLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGJ1dHRvbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGJ1dHRvbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGEsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBidXR0b24sICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBidXR0b24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGEsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhID4gZGl2LCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSA+IGRpdiwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhID4gZGl2LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYSA+IGRpdiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSA+IGRpdiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhID4gZGl2LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiB7XG4gIHdpZHRoOiA2MCU7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYSwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGEsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24ge1xuICB3aWR0aDogYXV0bztcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogMDtcbiAgcGFkZGluZzogMCAxcmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MnB4O1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3Qge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmhvdmVyLWl0ZW0sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmhvdmVyLWl0ZW0sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5ob3Zlci1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaG92ZXItaXRlbTpob3ZlciBpbWcsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmhvdmVyLWl0ZW06aG92ZXIgaW1nLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaG92ZXItaXRlbTpob3ZlciBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDI1KTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNhbGUtaXRlbSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2FsZS1pdGVtLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2FsZS1pdGVtIHtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgI2QwMDIwNCAwLCAjZDAwMjA0IDQwJSwgdHJhbnNwYXJlbnQgNDAlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDBweDtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMS4xO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5pbmZvLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5pbmZvLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaW5mbyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaW1hZ2UsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLmltYWdlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgc3BhbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIHNwYW4sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgc3BhbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSAubmV3LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgLm5ldywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByb2R1Y3QtbmFtZSAubmV3IHtcbiAgd2lkdGg6IDU2cHg7XG4gIGhlaWdodDogMjhweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBtYXJnaW4tcmlnaHQ6IDAuNzVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGluZS1oZWlnaHQ6IDI7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgLmJyYW5kLWFuZC1uYW1lLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcm9kdWN0LW5hbWUgLmJyYW5kLWFuZC1uYW1lLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJvZHVjdC1uYW1lIC5icmFuZC1hbmQtbmFtZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3MsICN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zaGlwcGluZywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3MsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zaGlwcGluZywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zaGlwcGluZyB7XG4gIGZvbnQtZmFtaWx5OiBcIkFyaWFsXCIsIHNhbnMtc2VyaWY7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc3BlY3MsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcyB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzIC5za3UsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnNwZWNzIC5za3UsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zcGVjcyAuc2t1IHtcbiAgY29sb3I6ICM5OTk5OTk7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnN5bWJvbCwgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnZhbHVlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSAuc3ltYm9sLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSAudmFsdWUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZSAuc3ltYm9sLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnZhbHVlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnNldCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2UgLnNldCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlIC5zZXQge1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAuc3ltYm9sLCAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAudmFsdWUsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLm9yaWdpbmFsLXByaWNlIC5zeW1ib2wsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLm9yaWdpbmFsLXByaWNlIC52YWx1ZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLm9yaWdpbmFsLXByaWNlIC5zeW1ib2wsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAudmFsdWUge1xuICBmb250LXdlaWdodDogNTAwO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAucHJpY2Uub3JpZ2luYWwtcHJpY2UgLnZhbHVlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAudmFsdWUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5vcmlnaW5hbC1wcmljZSAudmFsdWUge1xuICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLnNhbGVzLXByaWNlLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5wcmljZS5zYWxlcy1wcmljZSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnByb2R1Y3RzLWxpc3QgLnByaWNlLnNhbGVzLXByaWNlIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zaGlwcGluZywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucHJvZHVjdHMtbGlzdCAuc2hpcHBpbmcsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5wcm9kdWN0cy1saXN0IC5zaGlwcGluZyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjOTk5OTk5O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAucGFnaW5hdGlvbiwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAucGFnaW5hdGlvbiwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLnBhZ2luYXRpb24ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdpbmF0aW9uIC5jdXJyZW50LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5wYWdpbmF0aW9uIC5jdXJyZW50LCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAucGFnaW5hdGlvbiAuY3VycmVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmZpbmFuY2luZywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmZpbmFuY2luZyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5maW5hbmNpbmcsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmZpbmFuY2luZywgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmZpbmFuY2luZyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24ge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24sICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG4gIH1cbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIGg1LCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiBoNSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIGg1IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjJyZW07XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiBwLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiBwLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gcCB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBsaW5lLWhlaWdodDogMjtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIC50aXRsZSwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gLnRpdGxlLCAjZ2FsbGVyeS5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gLnRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jd2hlZWxzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiB1bCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZSAuYnJhbmQtaW5mb3JtYXRpb24gdWwsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiB1bCB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHVsIGxpLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlIC5icmFuZC1pbmZvcm1hdGlvbiB1bCBsaSwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUgLmJyYW5kLWluZm9ybWF0aW9uIHVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoMywgI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCwgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoMywgI3doZWVsLWJyYW5kcy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCwgI2dhbGxlcnkuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDMsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDQsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUgaDQsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0IHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3doZWVscy5zZWFyY2gtYnktdmVoaWNsZS53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSBoNCBzcGFuLCAjd2hlZWwtYnJhbmRzLnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0IHNwYW4sICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIGg0IHNwYW4ge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cblxuLnN0aWNreS1jb250YWluZXIgLnRvcCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIHBhZGRpbmc6IDFyZW0gMS4yNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgYSwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggYSB7XG4gIHdpZHRoOiA0NnB4O1xuICBoZWlnaHQ6IDUycHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICBjb2xvcjogIzY2NjY2NjtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciBhLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCBhIHtcbiAgICB3aWR0aDogNDBweDtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIGE6aG92ZXIsIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5hY3RpdmUtbGV0dGVyLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCBhOmhvdmVyLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCBhLmFjdGl2ZS1sZXR0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgYS5kaXNhYmxlLWxldHRlciwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggYS5kaXNhYmxlLWxldHRlciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBvcGFjaXR5OiAwLjI1O1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbiwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnMsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLWxlZnQ6IDAuMzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDAuMzVyZW07XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6Zmlyc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46Zmlyc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGEsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmZpcnN0LWNoaWxkIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmZpcnN0LWNoaWxkIGJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uLCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhLCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlZmVmZWY7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYSA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhID4gZGl2LCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2LCAuc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIC5yb3cgPiAuY29sdW1uczpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW46bGFzdC1jaGlsZCBhID4gZGl2LCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCBhID4gZGl2LCAuc3RpY2t5LWNvbnRhaW5lciAuYnJhbmQtbGV0dGVyLXNlYXJjaCAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCAucm93ID4gLmNvbHVtbjpsYXN0LWNoaWxkIGJ1dHRvbiA+IGRpdiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggLnJvdyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQgYnV0dG9uID4gZGl2IHtcbiAgd2lkdGg6IDYwJTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5saXN0aW5nLXNlYXJjaC1iYXIgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYSwgLnN0aWNreS1jb250YWluZXIgLmxpc3Rpbmctc2VhcmNoLWJhciAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCBidXR0b24sIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGEsIC5zdGlja3ktY29udGFpbmVyIC5icmFuZC1sZXR0ZXItc2VhcmNoIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiB7XG4gIHdpZHRoOiBhdXRvO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBwYWRkaW5nOiAwIDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uc3RpY2t5LWNvbnRhaW5lciAubGlzdGluZy1zZWFyY2gtYmFyIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIGJ1dHRvbiwgLnN0aWNreS1jb250YWluZXIgLmJyYW5kLWxldHRlci1zZWFyY2ggLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2ggYnV0dG9uIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNTJweDtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5tYWluLmN0YS1hZGRlZCB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMGEwYTBhO1xufVxuLnN0aWNreS1jb250YWluZXIgLmNvbnRlbnQtaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMHB4IDVweCAxNXB4IC01cHggIzBhMGEwYTtcbn1cbi5zdGlja3ktY29udGFpbmVyIC5jb250ZW50LWhlYWRlciBoMSB7XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi8qXG4vLyBzZXJpZXMgdGl0bGVcbiN3aGVlbHMge1xuICBwYWRkaW5nLXRvcDoycmVtO1xuICAuc2VyaWVzLWFuY2hvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTIwMHB4O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc2VyaWVzLWxvZ28ge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDoyMDBweDtcbiAgICB9XG4gIH1cbiAgLnByb2R1Y3RzLXNlcmllcywgLnByb2R1Y3RzLXNlcmllcyAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgfVxufVxuXG4vLyB3aGVlbHMgbGlzdGluZ1xuI3doZWVscyB7XG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAucHJvZHVjdC1pbmZvcm1hdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBjb2xvcjokZ3JheTM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICAgIH1cbiAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgfVxuICAgICAgLndoZWVsLXNpemVzIHtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICAgICYtbm9uZSB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRml0bWVudFxuI3doZWVscywjd2hlZWwge1xuICAucGFnZS1oZWFkZXIuZml0bWVudC1oZWFkZXIge1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBmb250LXNpemU6MS44NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTo3MDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICAuZml0bWVudC1iYXItY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5maXRtZW50LWJhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6LjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6LjYyNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6LjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjkzNzVyZW07XG4gICAgICB9XG4gICAgICAmLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOjMwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maXRtZW50LWhlYWRlci1pbmZvIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnZlaGljbGUtc2l6ZSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjM1cmVtO1xuICAgICAgICBmb250LXdlaWdodDoxMDA7XG4gICAgICB9XG4gICAgfVxuICAgIC52ZWhpY2xlLWRpc3BsYXkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGdyYXlBO1xuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZS1kaXNwbGF5IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIH1cbiAgICAudmVoaWNsZVVwZGF0ZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICB9XG4gICAgLmZpdG1lbnQtY2hhbmdlIHtcbiAgICAgIGNvbG9yOiRncmF5NTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxufSovXG4udGlyZS1kZXRhaWxzIHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG59XG5cbi50aXJlLWluZm9fX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG4udGlyZS1jdGEgLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbjogMDtcbn1cbi50aXJlLWN0YSAuYnV0dG9uLWdyb3VwIGxpIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cbi50aXJlLWN0YSAuYnV0dG9uLWdyb3VwIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnRpcmUtc3BlY3Mge1xuICBtYXJnaW4tdG9wOiAycmVtO1xufVxuLnRpcmUtc3BlY3NfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLnRpcmUtc3BlY3NfX2RldGFpbHMge1xuICBjb2xvcjogIzAwMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbiN0aXJlcyBoMiwgI3RpcmVzIGgzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jdGlyZXMgaDIge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAtNXB4O1xufVxuI3RpcmVzIGgzIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiN0aXJlcyBhIHtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydCAucm93IHtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2NjY2NjY7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjdGlyZXMgLmZpbHRlci1zb3J0IC5idXR0b24ge1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gIH1cbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIHdpZHRoOiAxMDAlO1xufVxuI3RpcmVzIC5maWx0ZXItc29ydC1ib3R0b20gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItc2VyaWVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jdGlyZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiN0aXJlcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1jb3VudDpob3ZlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuI3RpcmVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbiBpIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiN0aXJlcyAucHJvZHVjdC1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHBhZGRpbmc6IDJyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3RpcmVzIC5wcm9kdWN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgfVxufVxuI3RpcmVzIC5wcm9kdWN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4jdGlyZXMgLnByb2R1Y3QtaXRlbSA+IC5jb2x1bW4sICN0aXJlcyAucHJvZHVjdC1pdGVtID4gLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI3RpcmVzIC5wcm9kdWN0cy1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICN0aXJlcyAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI3RpcmVzIC5wcm9kdWN0cy1saXN0IC5jb2x1bW4sICN0aXJlcyAucHJvZHVjdHMtbGlzdCAuY29sdW1ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuI3RpcmVzIC5wcm9kdWN0cy1saXN0IGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG59XG4jdGlyZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSBpbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiN0aXJlcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG4jdGlyZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI3RpcmVzIC5wcm9kdWN0cy1saXN0IC5pbmZvIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cbn1cbiN0aXJlcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN0aXJlcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICB9XG59XG5cbiNhY2Nlc3NvcmllcyBoMiwgI2FjY2Vzc29yaWVzIGgzIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jYWNjZXNzb3JpZXMgaDIge1xuICBjb2xvcjogIzMzMzMzMztcbiAgZm9udC1zaXplOiA1LjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxldHRlci1zcGFjaW5nOiAtNXB4O1xufVxuI2FjY2Vzc29yaWVzIGgzIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNhY2Nlc3NvcmllcyBhIHtcbiAgZm9udC1zaXplOiAxLjE1cmVtO1xuICBjb2xvcjogIzY2NjY2Njtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQge1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydCAucm93IHtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQtdG9wIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICM2NjY2NjY7XG4gIGNvbG9yOiAjNjY2NjY2O1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0IC5idXR0b24ge1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDU0cHg7XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQgLmJ1dHRvbiBpIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjY2NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0IC5kaXZpZGVyIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2NjY2M7XG4gIHdpZHRoOiAxMDAlO1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydC1ib3R0b20gbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB3aWR0aDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItc2VyaWVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jYWNjZXNzb3JpZXMgLmZpbHRlci1zb3J0LWJvdHRvbSAuYnV0dG9uLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbiNhY2Nlc3NvcmllcyAuZmlsdGVyLXNvcnQtYm90dG9tIC5idXR0b24uYWN0aXZlLWZpbHRlci1jb3VudDpob3ZlciB7XG4gIGNvbG9yOiAjNjY2NjY2O1xufVxuI2FjY2Vzc29yaWVzIC5maWx0ZXItc29ydC1ib3R0b20gLmJ1dHRvbiBpIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdC1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2NjY2M7XG4gIHBhZGRpbmc6IDJyZW07XG4gIHBhZGRpbmctdG9wOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5wcm9kdWN0LWl0ZW0ge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgfVxufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0LWl0ZW06bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1ib3R0b206IDA7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3QtaXRlbSA+IC5jb2x1bW4sICNhY2Nlc3NvcmllcyAucHJvZHVjdC1pdGVtID4gLmNvbHVtbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgbWF4LXdpZHRoOiA4MHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IC5jb2x1bW4sICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuY29sdW1ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDVyZW07XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgYSAuaG92ZXItaXRlbSBpbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCBhIC5ob3Zlci1pdGVtOmhvdmVyIGltZyB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG59XG4jYWNjZXNzb3JpZXMgLnByb2R1Y3RzLWxpc3QgLmluZm8ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2FjY2Vzc29yaWVzIC5wcm9kdWN0cy1saXN0IC5pbmZvIHtcbiAgICBmb250LXNpemU6IDAuODVyZW07XG4gIH1cbn1cbiNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNhY2Nlc3NvcmllcyAucHJvZHVjdHMtbGlzdCAuaW5mbyAud2hlZWwtbmFtZSB7XG4gICAgZm9udC1zaXplOiAxLjE1cmVtO1xuICB9XG59XG5cbi5hY2Nlc3NvcnktaW1hZ2Uge1xuICBtYXgtd2lkdGg6IDUwMHB4O1xufVxuXG4uYWNjZXNzb3J5LW5hbWUge1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cblxuLmFjY2Vzc29yeS1kZXRhaWxzIHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG59XG5cbi5hY2Nlc3NvcnktY3RhIC5jdGEtYnV0dG9ucyB7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cbi5hY2Nlc3NvcnktY3RhIC5jdGEtYnV0dG9uc19fYnRuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5hY2Nlc3NvcnktYmFyLWJ0biB7XG4gIG1hcmdpbjogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgI2QwMDIwNDtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGJveC1zaGFkb3c6IDFweCAxcHggIzk5OTtcbn1cbi5hY2Nlc3NvcnktYmFyLWJ0bjpob3ZlciB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG59XG5cbiNnYWxsZXJ5LWZpbHRlciB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jZ2FsbGVyeS1maWx0ZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMS4xcmVtO1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbiNnYWxsZXJ5LWZpbHRlciAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBsZWZ0OiBhdXRvO1xufVxuI2dhbGxlcnktZmlsdGVyIHNlbGVjdCB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG59XG5cbiNnYWxsZXJ5LWhlYWRlciAuYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5LWhlYWRlciAuYWNjb3JkaW9uIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4jZ2FsbGVyeS1oZWFkZXIgLmFjY29yZGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cblxuI2dhbGxlcnkgLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbn1cbiNnYWxsZXJ5IC5zbGljay1hcnJvdyB7XG4gIHotaW5kZXg6IDE7XG4gIHdpZHRoOiA3NXB4O1xuICBoZWlnaHQ6IDc1cHg7XG59XG4jZ2FsbGVyeSAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbn1cbiNnYWxsZXJ5IC5zbGljay1hcnJvdy5zbGljay1wcmV2IHtcbiAgbGVmdDogMTUlO1xufVxuI2dhbGxlcnkgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICByaWdodDogMTUlO1xufVxuI2dhbGxlcnkgLnNsaWNrLWRvdHMge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNnYWxsZXJ5IC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG4gIHdpZHRoOiAxMHB4O1xuICBoZWlnaHQ6IDEwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI2dhbGxlcnkgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG59XG4jZ2FsbGVyeSAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbn1cbiNnYWxsZXJ5IC5zbGljay1zbGlkZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLCAjZ2FsbGVyeSAuZ2FsbGVyeS1saXN0IC52aWRlbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAucGhvdG86aG92ZXIgLnBob3RvLWltYWdlLWNvbnRhaW5lciwgI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAudmlkZW86aG92ZXIgLnBob3RvLWltYWdlLWNvbnRhaW5lciB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvOmhvdmVyIC5waG90by1pbmZvcm1hdGlvbiwgI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAudmlkZW86aG92ZXIgLnBob3RvLWluZm9ybWF0aW9uIHtcbiAgdG9wOiAwO1xufVxuI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAucGhvdG8taW1hZ2UtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMTJyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAucGhvdG8taW1hZ2UtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTZyZW07XG4gIH1cbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWltYWdlLWNvbnRhaW5lciBpbWcge1xuICBvcGFjaXR5OiAwO1xufVxuI2dhbGxlcnkgLmdhbGxlcnktbGlzdCAucGhvdG8taW5mb3JtYXRpb24ge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2UtaW4tb3V0O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMXJlbTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWluZm9ybWF0aW9uIC52ZWhpY2xlIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWluZm9ybWF0aW9uIC5kaXZpZGVyIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cbiNnYWxsZXJ5IC5nYWxsZXJ5LWxpc3QgLnBob3RvLWluZm9ybWF0aW9uIC5zcGVjcyB7XG4gIGZvbnQtc2l6ZTogMC44cmVtO1xufVxuI2dhbGxlcnkgLmhvdmVyLWxpc3QgPiBkaXYge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2dhbGxlcnkgLmhvdmVyLWxpc3QgLnBob3RvLCAjZ2FsbGVyeSAuaG92ZXItbGlzdCAudmlkZW8ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNnYWxsZXJ5IC5ob3Zlci1saXN0IC52aWRlbzphZnRlciB7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuI2dhbGxlcnkgLmhvdmVyLWxpc3QgLmdhbGxlcnktaXRlbS12ZWhpY2xlLCAjZ2FsbGVyeSAuaG92ZXItbGlzdCAuZ2FsbGVyeS1pdGVtLXdoZWVsIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4jZ2FsbGVyeSAuaG92ZXItbGlzdCAuZ2FsbGVyeS1pdGVtLXZlaGljbGUge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jZ2FsbGVyeSAuaG92ZXItbGlzdCAuYmctaW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIHBhZGRpbmctYm90dG9tOiA3NSU7XG59XG4jZ2FsbGVyeSAubmF2aWdhdGlvbiB7XG4gIHBhZGRpbmc6IDJyZW0gMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2dhbGxlcnkgLm5hdmlnYXRpb24gYSB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAwLjg1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xMjVyZW07XG4gIHBhZGRpbmc6IDEuMjVyZW0gMnJlbTtcbn1cbiNnYWxsZXJ5IC5uYXZpZ2F0aW9uIGE6Zm9jdXMsICNnYWxsZXJ5IC5uYXZpZ2F0aW9uIGE6YWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbn1cblxuI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5wYWdlLWhlYWRlciBoMSwgI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDMge1xuICBsaW5lLWhlaWdodDogMTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgLnBhZ2UtaGVhZGVyIGgxIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtc2l6ZTogMS4wNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDEge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAucGFnZS1oZWFkZXIgaDMge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stcHJldiwgI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dCB7XG4gIHdpZHRoOiA1MHB4O1xuICBoZWlnaHQ6IDUwcHg7XG4gIHotaW5kZXg6IDE7XG4gIGNvbG9yOiAjMzMzMzMzO1xuICBmb250LXNpemU6IDNyZW07XG59XG4jZ2FsbGVyeS12ZWhpY2xlIC5zbGljay1wcmV2OmJlZm9yZSwgI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stbmV4dCB7XG4gIHJpZ2h0OiAtNiU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjZ2FsbGVyeS12ZWhpY2xlIC5zbGljay1uZXh0IHtcbiAgICByaWdodDogNXB4O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAuc2xpY2stcHJldiB7XG4gIGxlZnQ6IC02JTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNnYWxsZXJ5LXZlaGljbGUgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDVweDtcbiAgICB3aWR0aDogMjVweDtcbiAgICBoZWlnaHQ6IDI1cHg7XG4gIH1cbn1cbiNnYWxsZXJ5LXZlaGljbGUgLnNsaWNrLXNsaWRlIHtcbiAgcGFkZGluZzogMXB4O1xufVxuXG4uZ2FsbGVyeS10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luOiAwO1xufVxuLmdhbGxlcnktbWFpbi1pbWcge1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4uZ2FsbGVyeS1tYWluLWltZyBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cbi5nYWxsZXJ5LXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbn1cbi5nYWxsZXJ5LXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIC5zbGljay1kb3RzIHtcbiAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAwO1xufVxuLmdhbGxlcnktZGV0YWlscyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktdG9wIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LXRvcCAuc2xpY2stdHJhY2sge1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktZGV0YWlscyB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIHtcbiAgICBtYXgtd2lkdGg6IDU0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LWRldGFpbHMge1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yb3cge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yb3cgLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjY2NjO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yb3cgLmNvbHVtbnM6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjY2NjYztcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yaWdodCB7XG4gIHBhZGRpbmc6IDFyZW0gMC41cmVtO1xufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yaWdodCAud2hlZWwtbmFtZSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktZGV0YWlscyAucmlnaHQgLndoZWVsLXNpemVzIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LWRldGFpbHMgLnJpZ2h0IC53aGVlbC1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktZGV0YWlscyAucmlnaHQgcCB7XG4gIGZvbnQtc2l6ZTogMS4wNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjM7XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LWRldGFpbHMgLnJpZ2h0IC5idXR0b24ge1xuICBmb250LWZhbWlseTogXCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4ycmVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMGEwYTBhO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yaWdodCAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1kZXRhaWxzIC5yaWdodCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbn1cbiNnYWxsZXJ5LXZlaGljbGUgI2dhbGxlcnktc3BlY3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuI2dhbGxlcnktdmVoaWNsZSAjZ2FsbGVyeS1zcGVjcyAubGVmdCBpbWcge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG59XG4jZ2FsbGVyeS12ZWhpY2xlICNnYWxsZXJ5LXNwZWNzIC5yaWdodCBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTW9udHNlcnJhdFwiLCBcIlJvYm90byBDb25kZW5zZWRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAjY29udGFjdCAucGFnZS1oZWFkZXIgLmJhY2tncm91bmQtaW1hZ2UsICN0aGFua3MgLnBhZ2UtaGVhZGVyIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE2MCU7XG4gIH1cbn1cbiNjb250YWN0IGg0LCAjY29udGFjdCBoNSwgI3RoYW5rcyBoNCwgI3RoYW5rcyBoNSB7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jY29udGFjdCBsYWJlbCwgI3RoYW5rcyBsYWJlbCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jY29udGFjdCAub3B0aW9uLXR3bywgI3RoYW5rcyAub3B0aW9uLXR3byB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jY29udGFjdCBociwgI3RoYW5rcyBociB7XG4gIG1hcmdpbjogMi41cmVtIGF1dG87XG59XG5cbiNjb250YWN0IHAsXG4jdGhhbmtzIHAsXG4jY29udGFjdCBsaSxcbiN0aGFua3MgbGksXG4jZ2FsbGVyeSBwLFxuI2dhbGxlcnkgbGkge1xuICBmb250LXdlaWdodDogNDAwO1xuICBwYWRkaW5nLXRvcDogMHB4O1xufVxuXG4jY29udGFjdCBoMyxcbiN0aGFua3MgaDMsXG4jZ2FsbGVyeSBoMyB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5cbiNjb250YWN0IHAucmVkIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuI2Zvcm0tcmlnaHQge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbiNmb3JtLXJpZ2h0IGxpIHtcbiAgcGFkZGluZy10b3A6IDAuMjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjI1cmVtO1xufVxuI2Zvcm0tcmlnaHQgLmZhIHtcbiAgZm9udC1zaXplOiAyLjI1cmVtO1xufVxuI2Zvcm0tcmlnaHQgaDMge1xuICBmb250LXNpemU6IDEuNnJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0xcHg7XG59XG4jZm9ybS1yaWdodCBhZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cbiNmb3JtLXJpZ2h0IC5zb2NpYWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbiNmb3JtLXJpZ2h0IC5zb2NpYWwgaSB7XG4gIGZvbnQtc2l6ZTogMi4yNXJlbTtcbn1cbiNmb3JtLXJpZ2h0IC5zb2NpYWwgbGkge1xuICBtYXJnaW4tcmlnaHQ6IDJyZW07XG59XG5cbiNjb250YWN0IC5sb2NhdGlvbiB7XG4gIGNvbG9yOiAjMzM2Njk5O1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG5cbiNwYWdlIC5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xufVxuI3BhZ2UgaDEge1xuICBmb250LXdlaWdodDogNTAwO1xuICBmb250LXNpemU6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFnZSBoMSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG4jcGFnZSAucGFnZS1oZWFkZXIgaDEge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuI3BhZ2UgLnBhZ2UtaGVhZGVyIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiB1bnNldDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbiNwYWdlIC5wYWdlLWhlYWRlciAucGFnZS10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMjAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFnZSAucGFnZS1oZWFkZXIgLnBhZ2UtdGl0bGUge1xuICAgIGhlaWdodDogMjMwcHg7XG4gIH1cbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgPiAucm93IHtcbiAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCAjY2NjY2NjO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjcGFnZSAucGFnZS1jb250ZW50ID4gLnJvdyB7XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICB9XG59XG4jcGFnZSAucGFnZS1jb250ZW50IGgxLCAjcGFnZSAucGFnZS1jb250ZW50IGgyLCAjcGFnZSAucGFnZS1jb250ZW50IGgzLCAjcGFnZSAucGFnZS1jb250ZW50IGg0LCAjcGFnZSAucGFnZS1jb250ZW50IGg1LCAjcGFnZSAucGFnZS1jb250ZW50IGg2IHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIG1hcmdpbi1ib3R0b206IDByZW07XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgbWFyZ2luLWJvdHRvbTogMS43NXJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgaDIge1xuICBmb250LXNpemU6IDEuNnJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgaDMge1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuI3BhZ2UgLnBhZ2UtY29udGVudCBoNCB7XG4gIGZvbnQtc2l6ZTogMi4xNXJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgaDUge1xuICBmb250LXNpemU6IDEuNXJlbTtcbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgcCwgI3BhZ2UgLnBhZ2UtY29udGVudCB1bCB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS43NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNwYWdlIC5wYWdlLWNvbnRlbnQgcCwgI3BhZ2UgLnBhZ2UtY29udGVudCB1bCB7XG4gICAgZm9udC1zaXplOiAxLjFyZW07XG4gIH1cbn1cbiNwYWdlIC5wYWdlLWNvbnRlbnQgdWwge1xuICBtYXJnaW4tbGVmdDogMnJlbTtcbiAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxuLypcbi5wYWdlLWhlYWRlciB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gIHBhZGRpbmc6MDtcbiAgaDEge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaW1nIHtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG59XG5cbiovXG4ubmV3cy1hcnRpY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xufVxuLm5ld3MtYXJ0aWNsZSAudGltZXN0YW1wIHtcbiAgZm9udC1zaXplOiAwLjhyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQ6ICMzMzM7XG59XG4ubmV3cy1hcnRpY2xlIC50aW1lc3RhbXAgLmRhdGUge1xuICBmb250LXNpemU6IDIuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5uZXdzLWFydGljbGUgaW1nIHtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICNkMDAyMDQ7XG59XG4ubmV3cy1hcnRpY2xlIC5uZXdzLXNpZGViYXIge1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xufVxuLm5ld3MtYXJ0aWNsZSAubmV3cy1zaWRlYmFyIGxpIGEge1xuICBjb2xvcjogIzUwNTA1MDtcbn1cbi5uZXdzLWFydGljbGUgLm5ld3Mtc2lkZWJhciBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG5cbiNhYm91dCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2Fib3V0IGgyIHtcbiAgZm9udC1zaXplOiAzcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2Fib3V0IGgyIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cbiNhYm91dCBwIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG4jYWJvdXQgLnBhZ2UtaGVhZGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2Fib3V0IC5wYWdlLWNvbnRlbnQgLmFib3V0LWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2Fib3V0IC5wYWdlLWNvbnRlbnQgLmFib3V0LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDNyZW07XG4gIH1cbn1cbiNhYm91dCAuYW5pbWF0ZWQge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbiNkZWFsZXJzIGgxIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbn1cbiNkZWFsZXJzIGgyIHtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4jZGVhbGVycyBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiNkZWFsZXJzIGxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiNkZWFsZXJzLW1pZGRsZSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG59XG4jZGVhbGVycyAucGFnZS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbiNkZWFsZXJzIC5wYWdlLWNvbnRlbnQgLnJvdyB7XG4gIG1heC13aWR0aDogODByZW07XG59XG4jZGVhbGVycyAucGFnZS1jb250ZW50IC5yb3cgLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4jZGVhbGVycyAuaW5wdXQtZ3JvdXAge1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbiNkZWFsZXJzIGhyIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbiNkZWFsZXJzIC5sZWZ0IHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2NjY2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkZWFsZXJzIC5sZWZ0IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZGVhbGVycyAucmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG59XG4jZGVhbGVycyAjZGVhbGVycy1taWRkbGUgaDIge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkZWFsZXJzICNkZWFsZXJzLW1pZGRsZSBoMiB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07XG4gIH1cbn1cbiNkZWFsZXJzICNkZWFsZXJzLW1pZGRsZSBoMyB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI2RlYWxlcnMgI2RlYWxlcnMtbWlkZGxlIGg0IHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xufVxuXG4udnVlLW1hcCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG5cbi52dWUtbWFwLWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuOnJvb3Qge1xuICAtLXZ0LWMtd2hpdGU6ICNmZmZmZmY7XG4gIC0tdnQtYy13aGl0ZS1zb2Z0OiAjZjhmOGY4O1xuICAtLXZ0LWMtd2hpdGUtbXV0ZTogI2YyZjJmMjtcbiAgLS12dC1jLWJsYWNrOiAjMTgxODE4O1xuICAtLXZ0LWMtYmxhY2stc29mdDogIzIyMjIyMjtcbiAgLS12dC1jLWJsYWNrLW11dGU6ICMyODI4Mjg7XG4gIC0tdnQtYy1pbmRpZ286ICMyYzNlNTA7XG4gIC0tdnQtYy1kaXZpZGVyLWxpZ2h0LTE6IHJnYmEoNjAsIDYwLCA2MCwgLjI5KTtcbiAgLS12dC1jLWRpdmlkZXItbGlnaHQtMjogcmdiYSg2MCwgNjAsIDYwLCAuMTIpO1xuICAtLXZ0LWMtZGl2aWRlci1kYXJrLTE6IHJnYmEoODQsIDg0LCA4NCwgLjY1KTtcbiAgLS12dC1jLWRpdmlkZXItZGFyay0yOiByZ2JhKDg0LCA4NCwgODQsIC40OCk7XG4gIC0tdnQtYy10ZXh0LWxpZ2h0LTE6IHZhcigtLXZ0LWMtaW5kaWdvKTtcbiAgLS12dC1jLXRleHQtbGlnaHQtMjogcmdiYSg2MCwgNjAsIDYwLCAuNjYpO1xuICAtLXZ0LWMtdGV4dC1kYXJrLTE6IHZhcigtLXZ0LWMtd2hpdGUpO1xuICAtLXZ0LWMtdGV4dC1kYXJrLTI6IHJnYmEoMjM1LCAyMzUsIDIzNSwgLjY0KSA7XG59XG5cbjpyb290IHtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS12dC1jLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXNvZnQ6IHZhcigtLXZ0LWMtd2hpdGUtc29mdCk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1tdXRlOiB2YXIoLS12dC1jLXdoaXRlLW11dGUpO1xuICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWxpZ2h0LTIpO1xuICAtLWNvbG9yLWJvcmRlci1ob3ZlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWxpZ2h0LTEpO1xuICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLXZ0LWMtdGV4dC1saWdodC0xKTtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS12dC1jLXRleHQtbGlnaHQtMSk7XG4gIC0tc2VjdGlvbi1nYXA6IDE2MHB4IDtcbn1cblxuQG1lZGlhIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICA6cm9vdCB7XG4gICAgLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS12dC1jLWJsYWNrKTtcbiAgICAtLWNvbG9yLWJhY2tncm91bmQtc29mdDogdmFyKC0tdnQtYy1ibGFjay1zb2Z0KTtcbiAgICAtLWNvbG9yLWJhY2tncm91bmQtbXV0ZTogdmFyKC0tdnQtYy1ibGFjay1tdXRlKTtcbiAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWRhcmstMik7XG4gICAgLS1jb2xvci1ib3JkZXItaG92ZXI6IHZhcigtLXZ0LWMtZGl2aWRlci1kYXJrLTEpO1xuICAgIC0tY29sb3ItaGVhZGluZzogdmFyKC0tdnQtYy10ZXh0LWRhcmstMSk7XG4gICAgLS1jb2xvci10ZXh0OiB2YXIoLS12dC1jLXRleHQtZGFyay0yKSA7XG4gIH1cbn1cbi8qXG4qLCo6YmVmb3JlLCo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBtYXJnaW46IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZm9udC13ZWlnaHQ6IDQwMFxufVxuXG5ib2R5IHtcbiAgbWluLWhlaWdodDogMTAwdmg7XG4gIGNvbG9yOiB2YXIoLS1jb2xvci10ZXh0KTtcbiAgLy9iYWNrZ3JvdW5kOiB2YXIoLS1jb2xvci1iYWNrZ3JvdW5kKTtcbiAgdHJhbnNpdGlvbjogY29sb3IgLjVzLGJhY2tncm91bmQtY29sb3IgLjVzO1xuICBsaW5lLWhlaWdodDogMS42O1xuICBmb250LWZhbWlseTogSW50ZXIsLWFwcGxlLXN5c3RlbSxCbGlua01hY1N5c3RlbUZvbnQsU2Vnb2UgVUksUm9ib3RvLE94eWdlbixVYnVudHUsQ2FudGFyZWxsLEZpcmEgU2FucyxEcm9pZCBTYW5zLEhlbHZldGljYSBOZXVlLHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGVcbn1cbiovXG46cm9vdCB7XG4gIC0td2hpdGU6ICNmZmZmZmY7XG4gIC0tYmxhY2s6ICMwMDAwMDA7XG4gIC0td2hpdGVGNDogI2Y0ZjRmNDtcbiAgLS13aGl0ZUY3OiAjZjdmN2Y3O1xuICAtLWdyYXlDOiAjY2NjY2NjO1xuICAtLWdyYXk1OiAjNTU1NTU1O1xuICAtLWdyYXk2OiAjNjY2NjY2O1xuICAtLXJlZDogI2MxMDAzMTtcbiAgLS1ncmVlbjogIzQzZDAzNCA7XG59XG5cbi8qXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBjb2xvcjogdmFyKC0tYmxhY2spXG59XG4qL1xuI2ltYXBwLWRlYWxlci1sb2NhdG9yIHtcbiAgY29sb3I6IHZhcigtLWdyYXk1KTtcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIGgxIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yIHtcbiAgbWF4LXdpZHRoOiA5MHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgaGVpZ2h0OiA5NHZoO1xuICBwYWRkaW5nOiAxcmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDQ2MHB4O1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCA+IGRpdiB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCA+IGRpdiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdzogYXV0bztcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheUMpO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cbn1cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogNDAwcHg7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICB3aWR0aDogNzAlO1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5kZWFsZXItbG9jYXRvciBpOmJlZm9yZSwgI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5kZWFsZXItbG9jYXRvciBpOmFmdGVyLCAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yIGk6YmVmb3JlLCAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yIGk6YWZ0ZXIge1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0b3ItbGVmdCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlRjQpO1xuICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheUMpO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAubG9jYXRpb24gPiBkaXYge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAubG9jYXRpb24gLm5hbWUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmlzT3BlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlRjcpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuaXNPcGVuIGkge1xuICBjb2xvcjogdmFyKC0tZ3JlZW4pO1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjVyZW07XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAudy1pY29uIHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC53LWljb24gLmljb24ge1xuICBtYXJnaW4tcmlnaHQ6IDAuNXJlbTtcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC53LWljb24gYSB7XG4gIGNvbG9yOiB2YXIoLS1ncmF5NSk7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC53LWljb24ud2Vic2l0ZSBhIHtcbiAgY29sb3I6IHZhcigtLXJlZCk7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLnZ1ZS1tYXAge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC52dWUtbWFwLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXlDKTtcbn1cblxuI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgaDMge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNkZWFsZXJzLmRlYWxlci1sb2NhdG9yIC5wYWdlLWhlYWRlciBwIHtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgLnBob25lIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAucGhvbmU6aG92ZXIge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbiNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpbWFwcC1kZWFsZXItbG9jYXRvciB7XG4gIGhlaWdodDogNTV2aDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkZWFsZXJzLmRlYWxlci1sb2NhdG9yICNpbWFwcC1kZWFsZXItbG9jYXRvciB7XG4gICAgaGVpZ2h0OiA4MHZoO1xuICB9XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0b3ItbGVmdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQgPiBkaXY6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDUwdmg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQgPiBkaXY6bGFzdC1jaGlsZCB7XG4gICAgaGVpZ2h0OiA3NXZoO1xuICB9XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0b3ItY3RhLWJ1dHRvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2RlYWxlcnMuZGVhbGVyLWxvY2F0b3IgI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5sb2NhdG9yLWN0YS1idXR0b25zIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4jZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0b3ItY3RhLWJ1dHRvbnMgPiBhIHtcbiAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDAuNXJlbSAwO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjZGVhbGVycy5kZWFsZXItbG9jYXRvciAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0b3ItY3RhLWJ1dHRvbnMgPiBhIHtcbiAgICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICB9XG59XG5cbiNmaXRtZW50LWd1aWRlIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4jZml0bWVudC1ndWlkZSBoMiB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNmaXRtZW50LWd1aWRlIGgyIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cbn1cbiNmaXRtZW50LWd1aWRlIHAge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cbiNmaXRtZW50LWd1aWRlIC5wYWdlLWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNmaXRtZW50LWd1aWRlIC5wYWdlLWNvbnRlbnQgLmFib3V0LWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgcGFkZGluZzogMXJlbTtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2ZpdG1lbnQtZ3VpZGUgLnBhZ2UtY29udGVudCAuYWJvdXQtY29udGVudCB7XG4gICAgcGFkZGluZzogM3JlbTtcbiAgfVxufVxuI2ZpdG1lbnQtZ3VpZGUgLmFuaW1hdGVkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTtcbiAgfVxufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5pbm5lci1jb250YWluZXIsICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaGVhZCwgI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5jb250ZW50LCAjZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgI2FwcCB7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmlubmVyLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2NjY2M7XG59XG4jZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmhlYWQsICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaW5mbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaGVhZCBwLCAjZml0bWVudC1ndWlkZSAuZml0bWVudC1jb250YWluZXIgLmluZm8gcCB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbiNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuaGVhZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG4gIHBhZGRpbmctdG9wOiAxLjYyNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNjI1cmVtO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5oZWFkIHAge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5jb250ZW50ICNhcHAsICNmaXRtZW50LWd1aWRlIC5maXRtZW50LWNvbnRhaW5lciAuY29udGVudCAjZml0bWVudC12ZWhpY2xlLXNlbGVjdCB7XG4gIG1heC13aWR0aDogMzYwcHg7XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5jb250ZW50IC5pbmZvIHtcbiAgcGFkZGluZzogMS41cmVtO1xufVxuI2ZpdG1lbnQtZ3VpZGUgLmZpdG1lbnQtY29udGFpbmVyIC5mb290IHAge1xuICBmb250LXNpemU6IDAuODEyNXJlbTtcbn1cblxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvdXRpbGl0eS9lcnJvci1iZyAoMikucG5nXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgNSU7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTogNjAlO1xuICBwYWRkaW5nOiA3NXB4O1xuICBtYXJnaW4tdG9wOiA3NXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCB7XG4gICAgaGVpZ2h0OiAzMDBweDtcbiAgfVxufVxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCB7XG4gIGhlaWdodDogNDQwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcmVtO1xufVxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCBoMyB7XG4gIGZvbnQtc2l6ZTogM3JlbTtcbiAgZm9udC13ZWlnaHQ6IDEwMDA7XG4gIGNvbG9yOiAjZTgyYzM5O1xuICBtYXJnaW4tdG9wOiAzcmVtO1xufVxuI2Vycm9yLXBhZ2UgLnBhZ2UtY29udGVudCBwIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogLTZyZW07XG4gIGNvbG9yOiBibGFjaztcbiAgZm9udC1zaXplOiAxLjFyZW07XG59XG4jZXJyb3ItcGFnZSAucGFnZS1jb250ZW50IHAgYSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jZXJyb3ItcGFnZSAucGFnZS1jb250ZW50ICNyZXR1cm4taG9tZSB7XG4gIG1hcmdpbi10b3A6IDlyZW07XG4gIHBhZGRpbmctdG9wOiAxMXJlbTtcbn1cblxuI2Rvd25sb2FkcyAucGFnZS1oZWFkZXIgLnN1YnRpdGxlIHAge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4jZG93bmxvYWRzIC53aGVlbC1jb250YWluZXIgLmNvbHVtbiwgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW5zLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1uLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1ucyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZG93bmxvYWRzIC53aGVlbC1jb250YWluZXIgLmNvbHVtbiwgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW5zLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1uLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1ucyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgfVxufVxuI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW4gYSwgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW5zIGEsICNkb3dubG9hZHMgLmxvZ28tY29udGFpbmVyIC5jb2x1bW4gYSwgI2Rvd25sb2FkcyAubG9nby1jb250YWluZXIgLmNvbHVtbnMgYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogMCAwLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW4gYSwgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW5zIGEsICNkb3dubG9hZHMgLmxvZ28tY29udGFpbmVyIC5jb2x1bW4gYSwgI2Rvd25sb2FkcyAubG9nby1jb250YWluZXIgLmNvbHVtbnMgYSB7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICB9XG59XG4jZG93bmxvYWRzIC53aGVlbC1jb250YWluZXIgLmNvbHVtbiBhIGltZywgI2Rvd25sb2FkcyAud2hlZWwtY29udGFpbmVyIC5jb2x1bW5zIGEgaW1nLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1uIGEgaW1nLCAjZG93bmxvYWRzIC5sb2dvLWNvbnRhaW5lciAuY29sdW1ucyBhIGltZyB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jZG93bmxvYWRzIC5wYWdlLWNvbnRlbnQgLmRvd25sb2FkLWl0ZW0ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG59XG4jZG93bmxvYWRzIC5wYWdlLWNvbnRlbnQgLmRvd25sb2FkLWl0ZW0gaDMge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuY29udGVudC1oZWFkZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5jb250ZW50LWhlYWRlciBoMiB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbiB7XG4gIHBhZGRpbmc6IDJyZW0gMCA0cmVtO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDAuNXJlbSAxLjI1cmVtO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbiAgbWF4LXdpZHRoOiBub25lO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbn1cbiNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLmJ1dHRvbiBzcGFuIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAucmV0dXJuIGEge1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLnJldHVybiBzcGFuIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuZG93bmxvYWRzLXNlY3Rpb24tYnJhbmRzIC5jb250ZW50LWxpc3QgLmJyYW5kLWl0ZW0ge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBwYWRkaW5nOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1icmFuZHMgLmNvbnRlbnQtbGlzdCAuYnJhbmQtaXRlbSB7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1icmFuZHMgLmNvbnRlbnQtbGlzdCAuYnJhbmQtaXRlbSBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLmRvd25sb2Fkcy1zZWN0aW9uLWJyYW5kcyAuY29udGVudC1saXN0IC5icmFuZC1pdGVtIC5sb2dvLCAjZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1icmFuZHMgLmNvbnRlbnQtbGlzdCAuYnJhbmQtaXRlbSAuZXhjZXJwdCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1icmFuZHMgLmNvbnRlbnQtbGlzdCAuYnJhbmQtaXRlbSAuYnJlYWsge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIG1hcmdpbjogMXJlbSAwO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuZG93bmxvYWRzLXNlY3Rpb24tYXNzZXRzIC5jb250ZW50LWhlYWRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1oZWFkZXIgLmltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbn1cbiNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1oZWFkZXIgaW1nIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNkb3dubG9hZHMuZG93bmxvYWRzLWNvbGxlY3Rpb24gLmRvd25sb2Fkcy1zZWN0aW9uLWFzc2V0cyAuY29udGVudC1saXN0LWFzc2V0cyBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG4jZG93bmxvYWRzLmRvd25sb2Fkcy1jb2xsZWN0aW9uIC5kb3dubG9hZHMtc2VjdGlvbi1hc3NldHMgLmNvbnRlbnQtbGlzdC1hc3NldHMgLndoZWVsLW5hbWUge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuI2Rvd25sb2Fkcy5kb3dubG9hZHMtY29sbGVjdGlvbiAuZG93bmxvYWRzLXNlY3Rpb24tYXNzZXRzIC5jb250ZW50LWxpc3QtYXNzZXRzIC53aGVlbC1maW5pc2gge1xuICBmb250LXNpemU6IDAuODI1cmVtO1xufVxuXG4ucGFja2FnaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogODAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG59XG4ucGFja2FnaW5nIC5wb3B1cF9oZWFkZXIge1xuICBmb250LXNpemU6IDEuMnJlbTtcbn1cbi5wYWNrYWdpbmcgLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuLnBhY2thZ2luZyAucmV0dXJuVHh0IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG4gIG1hcmdpbi10b3A6IDFyZW07XG59XG5cbi5hY2Nlc3NvcnktY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5hY2Nlc3NvcnktY29udGFpbmVyIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgfVxufVxuLmFjY2Vzc29yeS1jb250YWluZXJfX2xlZnQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uYWNjZXNzb3J5LXBvcHVwIHtcbiAgbWF4LXdpZHRoOiA0MjVweDtcbiAgcGFkZGluZzogMCAwIDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi5hY2Nlc3NvcnktcG9wdXAtLXdpZGUge1xuICBtYXgtd2lkdGg6IDg1MHB4O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCAjY2NjO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSB7XG4gIHdpZHRoOiA5MCU7XG4gIG1hcmdpbjogMCBhdXRvIDEwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbS0tYm9yZGVyOm5vdCg6bGFzdC1jaGlsZCkge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2Nlc3NvcnktcG9wdXBfX2l0ZW0ge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwX19pdGVtIC5pbnB1dCB7XG4gIG1hcmdpbjogMCAyMHB4O1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSAuaW5wdXQtLXJpZ2h0IHtcbiAgbWFyZ2luOiAwO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9faXRlbSAuaW1nIHtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5hY2Nlc3NvcnktcG9wdXBfX2l0ZW0gLmltZyB7XG4gICAgbWF4LXdpZHRoOiA5MHB4O1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwX19pdGVtIC5pbWctLWxyZyB7XG4gIG1heC13aWR0aDogNTAlO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmFjY2Vzc29yeS1wb3B1cCAudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICB9XG59XG4uYWNjZXNzb3J5LXBvcHVwIC50aXRsZS0tcmlnaHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMS4yO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9fbGluayB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuLmFjY2Vzc29yeS1wb3B1cF9fbGluazpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYWNjZXNzb3J5LXBvcHVwLS1yaWdodCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmFjY2Vzc29yeS1wb3B1cC0tcmlnaHQgLmlucHV0IHtcbiAgbWFyZ2luOiAwO1xufVxuLmFjY2Vzc29yeS1wb3B1cC0tcmlnaHQgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwIDJyZW07XG59XG4uYWNjZXNzb3J5LXBvcHVwLS1yaWdodCAuc3VidGV4dCB7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cblxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS43cmVtO1xufVxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX3R4dCB7XG4gIGZvbnQtc2l6ZTogMC45NXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmdhbGxlcnktcXVvdGUtcG9wdXBfX3R4dCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxufVxuLmdhbGxlcnktcXVvdGUtcG9wdXBfX25vdGUge1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5nYWxsZXJ5LXF1b3RlLXBvcHVwIGxhYmVsIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuLmdhbGxlcnktcXVvdGUtcG9wdXAgaW5wdXQ6bm90KFt0eXBlPXN1Ym1pdF0pIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VlZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogIzAwMDtcbn1cblxuLmZvcm0tbmFtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mb3JtLW5hbWUge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbn1cbi5mb3JtLW5hbWUgaW5wdXQge1xuICB3aWR0aDogMTkuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5mb3JtLW5hbWUgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9ybS1uYW1lIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMzMzO1xuICBmb250LXNpemU6IDAuOXJlbTtcbn1cblxuLmdhbGxlcnktcHJvZHVjdC1pbmZvIHNwYW4ge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZml0bWVudENoZWNrX190eHQge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbWFyZ2luLXRvcDogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAycmVtO1xufVxuLmZpdG1lbnRDaGVja19fYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgcGFkZGluZy1yaWdodDogMnJlbTtcbiAgcGFkZGluZy1sZWZ0OiAycmVtO1xufVxuXG4jZmMgI2ZjLWNhcnQgaGVhZGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4jZmMgLm5vdGljZSB7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jZmMgLm5vdGljZSBwIHtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xufVxuXG4vKiBjYXJ0IHN1bW1hcnkgKi9cbi5zbmlwY2FydC1pdGVtLWN1c3RvbS1maWVsZHNfX2ZpZWxkLnNuaXBjYXJ0LWl0ZW0tY3VzdG9tLWZpZWxkcy0tdGV4dGJveCB7XG4gIHdpZHRoOiA4MCU7XG59XG5cbi5zbmlwY2FydC1pbnB1dF9faW5wdXQuc25pcGNhcnRfX2ZvbnQtLXNlY29uZGFyeS5zbmlwY2FydF9fZm9udC0tYm9sZCB7XG4gIGJvcmRlcjogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLmltLWN1c3RvbS1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG59XG5cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciB7XG4gIGJvcmRlci10b3A6IDA7XG59XG4uaW52ZW50b3J5LWxheW91dC1oZWFkZXIgLnRvcC1iYXIgLm5hdi1tZW51LXJpZ2h0IHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsaW5lLWhlaWdodDogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYSB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgYTpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmludmVudG9yeS1sYXlvdXQtaGVhZGVyIC50b3AtYmFyIC5uYXYtbWVudS1yaWdodCB1bCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhciAubmF2LW1lbnUtcmlnaHQgdWwgPiBsaSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5pbnZlbnRvcnktbGF5b3V0LWhlYWRlciAudG9wLWJhci10aXRsZSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmludmVudG9yeS1sYXlvdXQtaGVhZGVyIC50b3AtYmFyIC50b3AtYmFyLXRpdGxlIHtcbiAgICB3aWR0aDogMzAlO1xuICB9XG59XG5cbi5pbnZlbnRvcnktaGVhZCB7XG4gIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjN2Y4MjgzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xufVxuLmludmVudG9yeS1oZWFkLmZpeGVkIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDtcbn1cbi5pbnZlbnRvcnktaGVhZC5maXhlZCAjbGVmdCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4udXNlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctdG9wOiAycmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMnJlbTtcbiAgZm9udC1zaXplOiAxLjA1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnVzZXIge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgcGFkZGluZy10b3A6IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxufVxuLnVzZXItbmFtZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC51c2VyLW5hbWUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjNzc3Nzc3O1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIH1cbn1cbi51c2VyLWNvZGUge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbi51c2VyLW9wdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnVzZXItb3B0aW9ucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4udXNlci1vcHRpb25zID4gZGl2IHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudXNlci1vcHRpb25zID4gZGl2IHtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYgYSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAudXNlci1vcHRpb25zID4gZGl2IGEge1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIH1cbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYgYTpob3ZlciB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuLnVzZXItb3B0aW9ucyA+IGRpdiBhOmhvdmVyIGkge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYgaSB7XG4gIGNvbG9yOiAjN2Y4MjgzO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cblxuLmxvYWRpbmctc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjcpO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHotaW5kZXg6IDk5OTk7XG59XG4ubG9hZGluZy1zY3JlZW4gaSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDQ1cHg7XG4gIGhlaWdodDogNDVweDtcbiAgZm9udC1zaXplOiAzcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgLXdlYmtpdC1hbmltYXRpb246IHNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAtbW96LWFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIGFuaW1hdGlvbjogc3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG59XG5ALW1vei1rZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4ge1xuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgc3BpbiB7XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICB9XG59XG5cbi5pbnZlbnRvcnktbGF5b3V0LWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uaW52ZW50b3J5LWxheW91dC1mb290ZXIgLmZvb3Rlci1ib3R0b21fX2NvcHkge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuI2ludmVudG9yeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGZvbnQtZmFtaWx5OiBcIkRNIFNhbnNcIiwgc2Fucy1zZXJpZjtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1pdGVtIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgcGFkZGluZy10b3A6IDEuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LWl0ZW0gLnNsYXNob3V0IHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktcGFydC1udW1iZXIge1xuICBjb2xvcjogIzU1NTU1NTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zdG9jayB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgI2ludmVudG9yeSAuaW52ZW50b3J5LXN0b2NrIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zdG9jay1ieS1sb2NhdGlvbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LWRlYWxlciwgI2ludmVudG9yeSAuaW52ZW50b3J5LW1zcnAge1xuICBmb250LXdlaWdodDogMzAwO1xuICBjb2xvcjogI2NhY2FjYTtcbiAgZm9udC1zaXplOiAwLjgzNzVyZW07XG4gIHdpZHRoOiA1MCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5pbnZlbnRvcnktZGVhbGVyLCAjaW52ZW50b3J5IC5pbnZlbnRvcnktbXNycCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1tc3JwIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLmludmVudG9yeS1tc3JwIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICB9XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktZGVhbGVyIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktc2FsZSB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1zYWxlLXByaWNlIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5pbnZlbnRvcnktcHVyY2hhc2Uge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgfVxufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LXB1cmNoYXNlID4gYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2QwMDIwNDtcbiAgZm9udC1mYW1pbHk6IFwiRE0gU2Fuc1wiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLmludmVudG9yeS1wdXJjaGFzZSA+IGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmludmVudG9yeS1wdXJjaGFzZSA+IGJ1dHRvbi5iYWNrb3JkZXItbGluayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM1NTU1NTU7XG59XG4jaW52ZW50b3J5IC5pbnZlbnRvcnktcHVyY2hhc2UgPiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuI2ludmVudG9yeSAuaW52ZW50b3J5LWRpdmlkZXIge1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbiNpbnZlbnRvcnkgLm5vLW1hdGNoZXMsICNpbnZlbnRvcnkgLnJlc3VsdC1jb3VudC1lbXB0eSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1pdGVtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzdmODI4MztcbiAgd2lkdGg6IDEwMCU7XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS10aHVtYm5haWwge1xuICB3aWR0aDogMTIlO1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LXRodW1ibmFpbCBpbWcge1xuICBtYXgtd2lkdGg6IDcwcHg7XG59XG4jaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1pbmZvIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktaW5mbyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWxvY2F0aW9uIHtcbiAgd2lkdGg6IDQwJTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjaW52ZW50b3J5IC52aWV3LWxpc3QgLmludmVudG9yeS1kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDg4JTtcbiAgfVxufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tdG9wIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNpbnZlbnRvcnkgLnZpZXctbGlzdCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tbGVmdCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuI2ludmVudG9yeSAudmlldy1saXN0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4jaW52ZW50b3J5IC52aWV3LWdhbGxlcnkgLmludmVudG9yeS10aHVtYm5haWwge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4jaW52ZW50b3J5IC52aWV3LWdhbGxlcnkgLmludmVudG9yeS10aHVtYm5haWwgaW1nIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG4jaW52ZW50b3J5IC52aWV3LWdhbGxlcnkgLmludmVudG9yeS1tc3JwLCAjaW52ZW50b3J5IC52aWV3LWdhbGxlcnkgLmludmVudG9yeS1kZWFsZXIge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LWxvY2F0aW9uIHtcbiAgd2lkdGg6IDMzJTtcbn1cbiNpbnZlbnRvcnkgLnZpZXctZ2FsbGVyeSAuaW52ZW50b3J5LXB1cmNoYXNlIHtcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuXG4jd2FyZS1ib3gsICN3YXJlLWJveDIsICN3YXJlLWJveDMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG9wYWNpdHk6IDA7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgei1pbmRleDogMTA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi5pdGVtLXBvcHVwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICB3aWR0aDogNjAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIC8qQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1oZWlnaHQ6IDExMDBweCkge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgfSovXG59XG4uaXRlbS1wb3B1cCBoMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbi5pdGVtLXBvcHVwIC5pdGVtLXBvcHVwLXRpdGxlIGgzIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cbi5pdGVtLXBvcHVwIGxhYmVsIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgd2lkdGg6IDgwcHg7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uaXRlbS1wb3B1cCBpbnB1dCB7XG4gIHdpZHRoOiA1MHB4O1xufVxuLml0ZW0tcG9wdXAgaW5wdXRbbmFtZT12ZWhpY2xlXSB7XG4gIHdpZHRoOiA3MCU7XG59XG4uaXRlbS1wb3B1cCBpbnB1dDo6cGxhY2Vob2xkZXIge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4uaXRlbS1wb3B1cCA+IGRpdiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLml0ZW0tcG9wdXAgLmZpZWxkIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IGF1dG87XG59XG4uaXRlbS1wb3B1cCAuZmllbGQtdmVoaWNsZSB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4uaXRlbS1wb3B1cCAuZmllbGQgPiBkaXYge1xuICB3aWR0aDogYXV0bztcbn1cbi5pdGVtLXBvcHVwIC5maWVsZC51cHNlbGwge1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLml0ZW0tcG9wdXAgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDFyZW0gMS41cmVtO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwO1xufVxuLml0ZW0tcG9wdXAgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uaXRlbS1wb3B1cCAuaXRlbS1wb3B1cC1jdGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLml0ZW0tcG9wdXAgLml0ZW0tcG9wdXAtY3RhIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDgwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5pdGVtLXBvcHVwIC5pdGVtLXBvcHVwLWN0YSAuYnV0dG9uOmZpcnN0LWNoaWxkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbi5pdGVtLXBvcHVwIC5pdGVtLXBvcHVwLWN0YSAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbi5pdGVtLXBvcHVwIC51cHNlbGwge1xuICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xufVxuLml0ZW0tcG9wdXAgLnVwc2VsbCBsYWJlbCB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xufVxuLml0ZW0tcG9wdXAgLnVwc2VsbCBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuLml0ZW0tcG9wdXAgLnVwc2VsbCB0YWJsZSB7XG4gIGZvbnQtc2l6ZTogMC44NXJlbTtcbn1cbi5pdGVtLXBvcHVwIC51cHNlbGwgdGFibGUgdHIgdGQge1xuICBwYWRkaW5nOiAwLjI1cmVtIDAuNzVyZW07XG59XG4uaXRlbS1wb3B1cCAudXBzZWxsIHRhYmxlIHNwYW4ge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jd2FyZS1ib3gyIC5pdGVtLXBvcHVwLW1zZyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4jd2FyZS1ib3gyICNtZXNzYWdlIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI3dhcmUtYm94MiAjbWVzc2FnZSAuZmEtY2hlY2stY2lyY2xlLCAjd2FyZS1ib3gyICNtZXNzYWdlIC5mYS1taW51cy1jaXJjbGUsICN3YXJlLWJveDIgI21lc3NhZ2UgLmZhLXRpbWVzLWNpcmNsZSwgI3dhcmUtYm94MiAjbWVzc2FnZSAuZmEtZXhjbGFtYXRpb24tdHJpYW5nbGUge1xuICBmb250LXNpemU6IDNyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jd2FyZS1ib3gyICNtZXNzYWdlIC5mYS1jaGVjay1jaXJjbGUge1xuICBjb2xvcjogIzMzY2MzMztcbn1cbiN3YXJlLWJveDIgI21lc3NhZ2UgLmZhLW1pbnVzLWNpcmNsZSwgI3dhcmUtYm94MiAjbWVzc2FnZSAuZmEtdGltZXMtY2lyY2xlLCAjd2FyZS1ib3gyICNtZXNzYWdlIC5mYS1leGNsYW1hdGlvbi10cmlhbmdsZSB7XG4gIGNvbG9yOiAjZjRhODI2O1xufVxuI3dhcmUtYm94MiAuaXRlbS1wb3B1cC1jdGEge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuI3dhcmUtYm94MiAuaXRlbS1wb3B1cC1jdGEgYS5idXR0b246bGluazpmaXJzdC1jaGlsZCwgI3dhcmUtYm94MiAuaXRlbS1wb3B1cC1jdGEgYS5idXR0b246dmlzaXRlZDpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4jd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSBhLmJ1dHRvbjpsaW5rOmxhc3QtY2hpbGQsICN3YXJlLWJveDIgLml0ZW0tcG9wdXAtY3RhIGEuYnV0dG9uOnZpc2l0ZWQ6bGFzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZjgyODM7XG59XG4jd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSBhLmJ1dHRvbjpsaW5rOmhvdmVyLCAjd2FyZS1ib3gyIC5pdGVtLXBvcHVwLWN0YSBhLmJ1dHRvbjp2aXNpdGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cblxuI3dhcmUtYm94MyAuY2FydC1yZXN1bHRzIHRoLCAjd2FyZS1ib3gzIC5jYXJ0LXJlc3VsdHMgdGQge1xuICBmb250LXNpemU6IDFyZW07XG59XG4jd2FyZS1ib3gzIC5jYXJ0LXRvcCB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG59XG4jd2FyZS1ib3gzIC5jYXJ0LXRvcCBoMSB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzdmODI4MztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LXRpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LXRvdGFsIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5mYS1hbmdsZS1kb3duOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxmMTA2XCI7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjN2Y4MjgzO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMC43NXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktdGh1bWJuYWlsIHtcbiAgd2lkdGg6IDEyJTtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktdGh1bWJuYWlsIGltZyB7XG4gIG1heC13aWR0aDogNzBweDtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaW5mbyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24ge1xuICBmbG9hdDogbGVmdDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24ge1xuICAgIHdpZHRoOiA4OCU7XG4gIH1cbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tdG9wIHtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGxpbmUtaGVpZ2h0OiAxLjM1O1xuICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSA+IGRpdiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20gLmludmVudG9yeS1kZXNjcmlwdGlvbi1sZWZ0IHtcbiAgd2lkdGg6IDEwMCU7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSwgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLCAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24ge1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG4gIGZvbnQtc2l6ZTogMS4xNXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24uZWRpdC1jYXJ0LCAjd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24uZWRpdC1jYXJ0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4MztcbiAgbWFyZ2luLWxlZnQ6IDAuNzVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLmNoZWNrb3V0LWJ1dHRvbiwgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLmNoZWNrb3V0LWJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM2NjMzM7XG4gIG1hcmdpbi1sZWZ0OiAwLjc1cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jaGVja291dC10b3RhbCwgI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydC10YWJsZS1jb250YWluZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM3ZjgyODM7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0gLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0gLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiN3YXJlLWJveDMgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20tYm90dG9tIGkge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4jd2FyZS1ib3gzIC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIHtcbiAgcGFkZGluZzogMS4yNXJlbSAwLjc1cmVtO1xufVxuI3dhcmUtYm94MyAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jaW52ZW50b3J5IC5wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6IDNyZW0gMDtcbiAgbWFyZ2luOiAzcmVtIDA7XG59XG4jaW52ZW50b3J5IC5uYXZpZ2F0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbn1cbiNpbnZlbnRvcnkgLm5hdmlnYXRpb24gYSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXRvcDogMnJlbTtcbiAgcGFkZGluZzogMXJlbTtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkMDAyMDQ7XG59XG4jaW52ZW50b3J5IC5uYXZpZ2F0aW9uIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2NjY2O1xufVxuXG4jaW52ZW50b3J5ICNib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHBpbms7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMXMsIGJvcmRlciAxcztcbiAgd2lkdGg6IDM1MHB4O1xuICBoZWlnaHQ6IDM1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgcGFkZGluZzogMjBweDtcbn1cbiNpbnZlbnRvcnkgLnZlcnRpY2FsIHtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250OiAzMnB4IFwiQXJpYWxcIjtcbn1cbiNpbnZlbnRvcnkgLmV4dHJhIHtcbiAgd2lkdGg6IDM1MHB4O1xuICBoZWlnaHQ6IDM1MHB4O1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBib3JkZXI6IDRweCBzb2xpZCBibHVlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi5sb2dpbiBsYWJlbCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubG9naW4gaW5wdXQge1xuICAgIG1heC13aWR0aDogNDAlO1xuICB9XG59XG4ubG9naW4gLmludi1sb2dpbiwgLmxvZ2luIC5pbnYtbXNnLCAubG9naW4gI2xvZ2luX2Zvcm0sIC5sb2dpbiAuaW52LWxpbmtzIHtcbiAgcGFkZGluZzogMCAycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmxvZ2luIC5pbnYtbG9naW4sIC5sb2dpbiAuaW52LW1zZywgLmxvZ2luICNsb2dpbl9mb3JtLCAubG9naW4gLmludi1saW5rcyB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmxvZ2luIC5pbnYtbGlua3MgdWwge1xuICBtYXJnaW46IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4ubG9naW4gLmludi1saW5rcyB1bCBsaSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG4ubG9naW4gLmludi1kaXNjbGFpbWVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmxvZ2luIC50aXRsZSBoMyB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMnJlbTtcbn1cbi5sb2dpbiAjbG9naW5fZm9ybSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ubG9naW4gLmludi1tc2cgPiBwIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG5cbiNpbnZlbnRvcnkuaHViIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAjaW52ZW50b3J5Lmh1YiB7XG4gICAgcGFkZGluZy10b3A6IDVyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDVyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIHtcbiAgbWF4LXdpZHRoOiA3MHJlbTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbnZlbnRvcnkuaHViIC5odWItY3RhIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5Lmh1YiAuaHViLWN0YSAucm93ID4gLmNvbHVtbjpmaXJzdC1jaGlsZCAudGl0bGUsICNpbnZlbnRvcnkuaHViIC5odWItY3RhIC5yb3cgPiAuY29sdW1uczpmaXJzdC1jaGlsZCAudGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNpbnZlbnRvcnkuaHViIC5odWItY3RhIC5yb3cgPiAuY29sdW1uOm50aC1jaGlsZCgyKSAuaW1hZ2UsICNpbnZlbnRvcnkuaHViIC5odWItY3RhIC5yb3cgPiAuY29sdW1uczpudGgtY2hpbGQoMikgLmltYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMi41cmVtO1xuICAgIG1hcmdpbi10b3A6IC0xcmVtO1xuICB9XG59XG4jaW52ZW50b3J5Lmh1YiAuaHViLWN0YSAuaW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlLWluLW91dDtcbn1cbiNpbnZlbnRvcnkuaHViIC5odWItY3RhIGltZyB7XG4gIG1heC13aWR0aDogNzUlO1xufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgaDMge1xuICBmb250LWZhbWlseTogXCJETSBTYW5zXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgLnRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogNHJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNpbnZlbnRvcnkuaHViIC5odWItY3RhIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgYSB7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgYTpob3ZlciBoMyB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI2ludmVudG9yeS5odWIgLmh1Yi1jdGEgYTpob3ZlciAuaW1hZ2Uge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLmFjY29yZGlvbiwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLmFjY29yZGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgfVxuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLmFjY29yZGlvbiAjaW52ZW50b3J5LWZpbHRlci1zZWFyY2gsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24gI2ludmVudG9yeS1maWx0ZXItc2VhcmNoIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5vcmRlcnMgLnBhZ2UtY29udGVudCAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIge1xuICBmb250LXdlaWdodDogMXJlbTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIHBhZGRpbmc6IDJyZW07XG4gIG1hcmdpbjogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICB9XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciBsYWJlbCwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciBsYWJlbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiAxcmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIGxhYmVsLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIGxhYmVsIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciBpbnB1dCwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciBpbnB1dCB7XG4gIHdpZHRoOiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgaW5wdXQsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgaW5wdXQge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgPiBkaXYsIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgPiBkaXYge1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgPiBkaXYucG8tbnVtYmVyLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyID4gZGl2LnBvLW51bWJlciB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciA+IGRpdiwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciA+IGRpdiB7XG4gICAgLypcbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOjM3JTtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgd2lkdGg6NSU7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgd2lkdGg6MjAlO1xuICAgIH0qL1xuICB9XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciAuZGl2aWRlciwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciAuZGl2aWRlciB7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuLm9yZGVycyAucGFnZS1jb250ZW50IC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgLmJ1dHRvbiwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuc2VhcmNoLWZpbHRlciAuYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMC43cmVtIDEuNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5zZWFyY2gtZmlsdGVyIC5idXR0b24sIC5vcmRlcnMgLmludmVudG9yeS1oZWFkIC5zdWJoZWFkZXIgLnNlYXJjaC1maWx0ZXIgLmJ1dHRvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5kYXRlcyA+IGxhYmVsLCAub3JkZXJzIC5pbnZlbnRvcnktaGVhZCAuc3ViaGVhZGVyIC5kYXRlcyA+IGxhYmVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCAuc3ViaGVhZGVyIC5kYXRlcyA+IGxhYmVsOm50aC1jaGlsZCgyKSwgLm9yZGVycyAuaW52ZW50b3J5LWhlYWQgLnN1YmhlYWRlciAuZGF0ZXMgPiBsYWJlbDpudGgtY2hpbGQoMikge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ub3JkZXJzIC5wYWdlLWNvbnRlbnQge1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbn1cbi5vcmRlcnMgLnBhZ2UtY29udGVudCA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLm9yZGVycyAub3JkZXItcXVlcnkge1xuICBwYWRkaW5nOiAxcmVtIDJyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICNkMDAyMDQ7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAub3JkZXJzIC5vcmRlci1xdWVyeSB7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgfVxufVxuLm9yZGVycyAub3JkZXItdGFibGUge1xuICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5vcmRlcnMgLm9yZGVyLXRhYmxlIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSB0YWJsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSB0aGVhZCwgLm9yZGVycyAub3JkZXItdGFibGUgdGJvZHkge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1ib3R0b206IDEwcHggc29saWQgIzBhMGEwYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSB0ciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjY2NjYztcbn1cbi5vcmRlcnMgLm9yZGVyLXRhYmxlIHRkIHtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbi5vcmRlcnMgLm9yZGVyLXRhYmxlIC5idXR0b24ge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAwLjc1cmVtIDFyZW07XG59XG4ub3JkZXJzIC5vcmRlci10YWJsZSAuYnV0dG9uLnRyYWNraW5nLW9yZGVyLWJ1dHRvbiB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5vcmRlcnMgLmRpc2NsYWltZXIge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm9yZGVycyAuZGlzY2xhaW1lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cblxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzLCAjaW52LW9yZGVyLXByaW50IHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLml0ZW0tcG9wdXAsICNpbnYtb3JkZXItcHJpbnQgLml0ZW0tcG9wdXAge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLml0ZW0tcG9wdXAsICNpbnYtb3JkZXItcHJpbnQgLml0ZW0tcG9wdXAge1xuICAgIHBhZGRpbmc6IDJyZW07XG4gICAgd2lkdGg6IDkwMHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLml0ZW0tcG9wdXAsICNpbnYtb3JkZXItcHJpbnQgLml0ZW0tcG9wdXAge1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgfVxufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIsICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyLCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyID4gZGl2LCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIgPiBkaXYge1xuICB3aWR0aDogMzUlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIgPiBkaXYsICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciA+IGRpdiB7XG4gICAgd2lkdGg6IDQ1JTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciAuYWRkcmVzcywgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIC5hZGRyZXNzIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciAuYWRkcmVzcywgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIC5hZGRyZXNzIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5oZWFkZXIgLmFkZHJlc3MgPiBkaXYsICNpbnYtb3JkZXItcHJpbnQgLmhlYWRlciAuYWRkcmVzcyA+IGRpdiB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbiN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyIC5hZGRyZXNzID4gZGl2OmZpcnN0LWNoaWxkLCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIgLmFkZHJlc3MgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmhlYWRlciAub3JkZXItaW5mbywgI2ludi1vcmRlci1wcmludCAuaGVhZGVyIC5vcmRlci1pbmZvIHtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3YXJlLWJveDIub3JkZXItZGV0YWlscyAuaGVhZGVyIC5vcmRlci1pbmZvLCAjaW52LW9yZGVyLXByaW50IC5oZWFkZXIgLm9yZGVyLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLnByb2R1Y3QtbGlzdCwgI2ludi1vcmRlci1wcmludCAucHJvZHVjdC1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICN3YXJlLWJveDIub3JkZXItZGV0YWlscyAucHJvZHVjdC1saXN0LCAjaW52LW9yZGVyLXByaW50IC5wcm9kdWN0LWxpc3Qge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgIGZvbnQtc2l6ZTogMC45cmVtO1xuICB9XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgdGFibGUsICNpbnYtb3JkZXItcHJpbnQgdGFibGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIHRhYmxlIHRoZWFkLCAjd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgdGFibGUgdGJvZHksICNpbnYtb3JkZXItcHJpbnQgdGFibGUgdGhlYWQsICNpbnYtb3JkZXItcHJpbnQgdGFibGUgdGJvZHkge1xuICBib3JkZXI6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAxMHB4IHNvbGlkICMwYTBhMGE7XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgdGFibGUgdGQsICNpbnYtb3JkZXItcHJpbnQgdGFibGUgdGQge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzIC5jdGEsICNpbnYtb3JkZXItcHJpbnQgLmN0YSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmN0YSA+IGRpdiwgI2ludi1vcmRlci1wcmludCAuY3RhID4gZGl2IHtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG59XG4jd2FyZS1ib3gyLm9yZGVyLWRldGFpbHMgLmN0YSAuYnV0dG9uLCAjaW52LW9yZGVyLXByaW50IC5jdGEgLmJ1dHRvbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51c2VyLW9wdGlvbnMgPiBkaXYudXNlci1vcHRpb25zLWludmVudG9yeSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4udXNlci1vcHRpb25zID4gZGl2LnVzZXItb3B0aW9ucy1pbnZlbnRvcnkgYSwgLnVzZXItb3B0aW9ucyA+IGRpdi51c2VyLW9wdGlvbnMtaW52ZW50b3J5IGkge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbi51c2VyLW9wdGlvbnMgPiBkaXYudXNlci1vcHRpb25zLWludmVudG9yeSBhOmhvdmVyIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4udXNlci1vcHRpb25zID4gZGl2LnVzZXItb3B0aW9ucy1pbnZlbnRvcnkgYTpob3ZlciBpIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5cbi51c2VyLW9wdGlvbnMtaW52ZW50b3J5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnByaW50LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbiNpbnYtb3JkZXItcHJpbnQgLml0ZW0tcG9wdXAge1xuICBtYXJnaW46IDAgYXV0bztcbiAgd2lkdGg6IDEwMCU7XG59XG4jaW52LW9yZGVyLXByaW50IC5vcmRlci1pbmZvLCAjaW52LW9yZGVyLXByaW50IHRhYmxlIHtcbiAgZm9udC1zaXplOiAwLjlyZW07XG59XG5cbi5jYXJ0ICNsb2dpbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uY2FydCAuY2FydC10aXRsZSB7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xufVxuLmNhcnQgLnBhZ2UtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmNhcnQgLnBhZ2UtY29udGVudC5jYXJ0LXRhYmxlLWNvbnRhaW5lciBmb3JtIHtcbiAgd2lkdGg6IDEwMCU7XG59XG4uY2FydCAucGFnZS1jb250ZW50IC5jYXJ0LWxpc3Rpbmcge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYm9yZGVyLXRvcDogNXB4IHNvbGlkICNkMDAyMDQ7XG59XG4uY2FydCAucGFnZS1jb250ZW50IC5jYXJ0LWxpc3RpbmcgLnZlaGljbGUtbWVzc2FnZSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICM1NTU1NTU7XG4gIGxpbmUtaGVpZ2h0OiAyO1xufVxuLmNhcnQgdGgge1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzhhOGE4YTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5jYXJ0IHRkIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbi5jYXJ0LWJ1dHRvbnMsIC5jYXJ0LXRvdGFsIHtcbiAgcGFkZGluZzogMnJlbTtcbn1cbi5jYXJ0LWJ1dHRvbnMgLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDAuNzVyZW0gMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jYXJ0LWJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uY2FydCAudXBkYXRlLW1lc3NhZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2FydCAudXBkYXRlLW1lc3NhZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5jYXJ0IC51cGRhdGUtbWVzc2FnZSBzcGFuIHtcbiAgY29sb3I6ICMzM2NjMzM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG4uY2FydCAudXBkYXRlLWNoZWNrb3V0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY2FydCAudXBkYXRlLWNoZWNrb3V0IC5idXR0b246Zmlyc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuLmNhcnQgLnVwZGF0ZS1jaGVja291dCAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzNjYzMzO1xufVxuLmNhcnQgLnVwZGF0ZS1jaGVja291dCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogYmxhY2s7XG59XG4uY2FydCAuZWRpdC1jYXJ0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY2FydCAuZWRpdC1jYXJ0IC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuLmNhcnQgLmVkaXQtY2FydCAuYnV0dG9uOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbn1cbi5jYXJ0LXF0eSB7XG4gIHdpZHRoOiA2MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cbi5jYXJ0LXRvdGFsIHtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbi5jYXJ0LXRvdGFsLXRpdGxlIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4uY2FydCAuZGlzY2xhaW1lciB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctdG9wOiAxcmVtO1xuICBib3JkZXItdG9wOiA1cHggc29saWQgIzhhOGE4YTtcbiAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNhcnQgLmRpc2NsYWltZXIge1xuICAgIG1hcmdpbi10b3A6IDVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jYXJ0IC5pbnYtYnRuLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cbn1cbi5jYXJ0IC5jaGVja291dC1lcnJvciB7XG4gIGNvbG9yOiAjZWQwMDFhO1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLnBhZ2UtY29udGVudCAuY2hlY2tvdXQtZm9ybSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBhZ2UtY29udGVudCAuY2hlY2tvdXQtZm9ybSAuYnV0dG9ucyB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG5cbiNjaGVja291dCBoMSwgI2NoZWNrb3V0IGgyLCAjY2FydCBoMSwgI2NhcnQgaDIge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuI2NoZWNrb3V0IC5wYWdlLWNvbnRlbnQgaDEsICNjYXJ0IC5wYWdlLWNvbnRlbnQgaDEge1xuICBjb2xvcjogI2QwMDIwNDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNjaGVja291dCAuY2hlY2tvdXQtdGl0bGUsICNjaGVja291dCAuY2FydC10aXRsZSwgI2NhcnQgLmNoZWNrb3V0LXRpdGxlLCAjY2FydCAuY2FydC10aXRsZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAxcmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICNjaGVja291dCAuY2hlY2tvdXQtdGl0bGUgaDEsICNjaGVja291dCAuY2FydC10aXRsZSBoMSwgI2NhcnQgLmNoZWNrb3V0LXRpdGxlIGgxLCAjY2FydCAuY2FydC10aXRsZSBoMSB7XG4gICAgcGFkZGluZzogMCAwLjc1cmVtO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2NoZWNrb3V0IC5jaGVja291dC1mb3JtIGgyLCAjY2FydCAuY2hlY2tvdXQtZm9ybSBoMiB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIH1cbn1cblxuLmNoZWNrb3V0LXRvcCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5jaGVja291dC1mb3JtIHtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAjN2Y4MjgzO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmNoZWNrb3V0LWZvcm0ge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM4YThhOGE7XG4gICAgcGFkZGluZzogMnJlbTtcbiAgfVxufVxuLmNoZWNrb3V0LWZvcm0gLmJ1dHRvbnMgLmJ1dHRvbiB7XG4gIG1heC13aWR0aDogMTUwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNoZWNrb3V0LWZvcm0gLmJ1dHRvbnMgLmJ1dHRvbjpmaXJzdC1jaGlsZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzM2NjMzM7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG59XG4uY2hlY2tvdXQtZm9ybSAuYnV0dG9ucyAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjN2Y4MjgzO1xufVxuLmNoZWNrb3V0LWZvcm0gLmJ1dHRvbnMgLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwYTBhMGE7XG59XG4uY2hlY2tvdXQtZm9ybSAuaW52YWxpZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZDAwMWE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmNoZWNrb3V0IGxhYmVsIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIC8qZm9udC1zaXplOjFyZW07Ki9cbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2hlY2tvdXQgLmZpZWxkIGlucHV0LCAuY2hlY2tvdXQgLmZpZWxkIHNlbGVjdCB7XG4gICAgbWF4LXdpZHRoOiAzNTBweDtcbiAgfVxufVxuLmNoZWNrb3V0IC5maWVsZCB0ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1pbi1oZWlnaHQ6IDE1MHB4O1xufVxuLmNoZWNrb3V0IC5jdXN0b21lci1hZGRyZXNzIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4jY2hlY2tvdXQgLnN1bW1hcnkge1xuICBwYWRkaW5nOiAycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBib3JkZXItbGVmdDogMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2NoZWNrb3V0IC5zdW1tYXJ5IC5jYXJ0LWxpc3Rpbmcge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG59XG4jY2hlY2tvdXQgLnN1bW1hcnkgdGFibGUge1xuICBsaW5lLWhlaWdodDogMS4yNTtcbn1cbiNjaGVja291dCAuc3VtbWFyeSB0aDpudGgtY2hpbGQoMykge1xuICBtaW4td2lkdGg6IDEwMHB4O1xufVxuXG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzdmODI4MztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIHBhZGRpbmc6IDFyZW0gMC43NXJlbTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUsICNjYXJ0IC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTo6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS10aXRsZSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIC5tb2JpbGUtc3VtbWFyeS10aXRsZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LWljb24sICNjYXJ0IC5tb2JpbGUtY2FydCAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSAubW9iaWxlLXN1bW1hcnktaWNvbiB7XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LXRvdGFsLCAjY2FydCAubW9iaWxlLWNhcnQgLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgLm1vYmlsZS1zdW1tYXJ5LXRvdGFsIHtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5mYS1hbmdsZS1kb3duOmJlZm9yZSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgLmZhLWFuZ2xlLWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGYxMDZcIjtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktaXRlbSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwLjc1cmVtO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS10aHVtYm5haWwsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gIHdpZHRoOiAxMiU7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS10aHVtYm5haWwsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LXRodW1ibmFpbCB7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktdGh1bWJuYWlsIGltZywgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktdGh1bWJuYWlsIGltZyB7XG4gIG1heC13aWR0aDogNzBweDtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktaW5mbywgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaW5mbyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktaW5mbywgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaW5mbyB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIH1cbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24sICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDg4JTtcbiAgfVxufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbi10b3AsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLXRvcCB7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBsaW5lLWhlaWdodDogMS4zNTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20ge1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20sICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tID4gZGl2LCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20gPiBkaXYge1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tbGVmdCwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tbGVmdCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tLCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbiAuaW52ZW50b3J5LXF1YW50aXR5LCAjY2FydCAubW9iaWxlLWNhcnQgLmludmVudG9yeS1kZXNjcmlwdGlvbiAuaW52ZW50b3J5LXF1YW50aXR5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5pbnZlbnRvcnktZGVzY3JpcHRpb24gLmludmVudG9yeS1xdWFudGl0eSAuY2FydC1xdHksICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIC5pbnZlbnRvcnktcXVhbnRpdHkgLmNhcnQtcXR5IHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xufVxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLmludmVudG9yeS1kZXNjcmlwdGlvbiAuaW52ZW50b3J5LXZlaGljbGUsICNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWRlc2NyaXB0aW9uIC5pbnZlbnRvcnktdmVoaWNsZSB7XG4gIGNvbG9yOiAjNTU1NTU1O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNoZWNrb3V0LWN0YSwgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jYXJ0LWN0YSwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSB7XG4gIHBhZGRpbmc6IDAuNzVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLCAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24sICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uIHtcbiAgcGFkZGluZzogMC43NXJlbSAxcmVtO1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4jY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNoZWNrb3V0LWN0YSAuYnV0dG9uLmVkaXQtY2FydCwgI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLmVkaXQtY2FydCwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24uZWRpdC1jYXJ0LCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LWN0YSAuYnV0dG9uLmVkaXQtY2FydCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzdmODI4Mztcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uLCAjY2hlY2tvdXQgLm1vYmlsZS1jaGVja291dCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uLCAjY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jaGVja291dC1jdGEgLmJ1dHRvbi5jaGVja291dC1idXR0b24sICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtY3RhIC5idXR0b24uY2hlY2tvdXQtYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzMzY2MzMztcbn1cbiNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQtdG90YWwsICNjaGVja291dCAubW9iaWxlLWNoZWNrb3V0IC5tb2JpbGUtY2FydC10b3RhbCwgI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2hlY2tvdXQtdG90YWwsICNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLWNhcnQtdG90YWwge1xuICBwYWRkaW5nOiAwLjc1cmVtO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLyovLy8vLyBNb2JpbGUgLSBDYXJ0IC8vLy8vKi9cbiNjYXJ0IC5tb2JpbGUtY2FydC10YWJsZS1jb250YWluZXIge1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM3ZjgyODM7XG59XG5cbiNjYXJ0IC5tb2JpbGUtY2FydCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjN2Y4MjgzO1xufVxuI2NhcnQgLm1vYmlsZS1jYXJ0IC5pbnZlbnRvcnktaXRlbSAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWJvdHRvbS1ib3R0b20ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0gLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tLWJvdHRvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCAuaW52ZW50b3J5LWl0ZW0gLmludmVudG9yeS1kZXNjcmlwdGlvbi1ib3R0b20tYm90dG9tLWJvdHRvbSBpIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI2NhcnQgLm1vYmlsZS1jYXJ0IC5tb2JpbGUtY2FydC1jdGEge1xuICBwYWRkaW5nOiAxLjI1cmVtIDAuNzVyZW07XG59XG4jY2FydCAubW9iaWxlLWNhcnQgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4jY2FydCAubW9iaWxlLWNhcnQgLml0ZW0tdXBkYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCAubW9iaWxlLXVwZGF0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzBhMGEwYTtcbiAgYm9yZGVyOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzMzY2MzMztcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi8qLy8vLy8gUmVtb3ZlIEl0ZW0gUG9wdXAgLy8vLy8qL1xuI3dhcmUtYm94Mi5jYXJ0IC5pdGVtLXBvcHVwLWN0YSB7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2ludmVudG9yeSB7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gIH1cbn1cblxuI2ludmVudG9yeSAuZmlsdGVyLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlciB7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXNlbGVjdGlvbiwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2VsZWN0aW9uIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzdmODI4Mztcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zZWxlY3Rpb24gaDUsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNlbGVjdGlvbiBoNSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwO1xuICBmb250LXNpemU6IDEuMTVyZW07XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2VsZWN0aW9uIHVsLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zZWxlY3Rpb24gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2VsZWN0aW9uIGxpLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zZWxlY3Rpb24gbGkge1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMDtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zZWxlY3Rpb24gaW5wdXQsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNlbGVjdGlvbiBpbnB1dCB7XG4gIG1hcmdpbi1ib3R0b206IDAuNzVyZW07XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2VsZWN0aW9uIGxhYmVsLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zZWxlY3Rpb24gbGFiZWwge1xuICBsaW5lLWhlaWdodDogMDtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1hY3RpdmUsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZSB7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZTphZnRlciwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYWN0aXZlOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA3NSU7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3ZjgyODM7XG4gIGhlaWdodDogMXB4O1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZSB1bCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYWN0aXZlIHVsIHtcbiAgcGFkZGluZy1ib3R0b206IDJyZW07XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYWN0aXZlIGEsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZSBhIHtcbiAgY29sb3I6ICMzMzY2OTk7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1hY3RpdmUgYSNjbGVhciwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYWN0aXZlIGEjY2xlYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC41cmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItYWN0aXZlLXNlbGVjdGVkIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLW91dDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1hY3RpdmUtc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogd2hpdGU7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYWN0aXZlLXNlbGVjdGVkOmhvdmVyIGEsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLWFjdGl2ZS1zZWxlY3RlZDpob3ZlciBhIHtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4jaW52ZW50b3J5IC5maWx0ZXItYnV0dG9uLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1idXR0b24ge1xuICBjb2xvcjogI2QwMDIwNDtcbiAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXBhcnQtbnVtYmVyLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1wYXJ0LW51bWJlciB7XG4gIG1heC13aWR0aDogODAlO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzdmODI4MztcbiAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG4jaW52ZW50b3J5IC5maWx0ZXItcGFydC1udW1iZXIgaW5wdXQsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXBhcnQtbnVtYmVyIGlucHV0IHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkge1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAjaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkge1xuICAgIGJvcmRlci1ib3R0b206IDVweCBzb2xpZCAjN2Y4MjgzO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgIG1heC13aWR0aDogODAlO1xuICB9XG59XG4jaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IGxhYmVsLCAjaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IHNlbGVjdCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IGxhYmVsLCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkgc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnkgbGFiZWwsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBsYWJlbCB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSBsYWJlbCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IGxhYmVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnkgc2VsZWN0LCAuaW52ZW50b3J5LWhlYWQgLmZpbHRlci1zaG9wYnkgc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAjaW52ZW50b3J5IC5maWx0ZXItc2hvcGJ5IHNlbGVjdCwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAwLjlyZW07XG4gIH1cbn1cbiNpbnZlbnRvcnkgLmZpbHRlci1zaG9wYnkgaDUsIC5pbnZlbnRvcnktaGVhZCAuZmlsdGVyLXNob3BieSBoNSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNob3BieSBoNSwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2hvcGJ5IGg1IHtcbiAgICBmb250LXNpemU6IDEuMTVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICB9XG59XG4jaW52ZW50b3J5ICNjbGVhclNLVSwgLmludmVudG9yeS1oZWFkICNjbGVhclNLVSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyIHtcbiAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICM3ZjgyODM7XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xuICBjb2xvcjogIzBhMGEwYTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXIgc2VsZWN0LCAjaW52ZW50b3J5IC5vcHRpb25zLWJhciBpbnB1dCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyID4gZGl2IHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyID4gZGl2OmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgIzdmODI4Mztcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyLXZpZXcge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhci12aWV3IGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6ICNlNGU0ZTQ7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2Utb3V0O1xufVxuI2ludmVudG9yeSAub3B0aW9ucy1iYXItdmlldyBpOmhvdmVyIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhci12aWV3IGJ1dHRvbi5hY3RpdmUtdmlldyBpIHtcbiAgY29sb3I6ICNkMDAyMDQ7XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhci1pbnN0b2NrIGlucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbiNpbnZlbnRvcnkgLm9wdGlvbnMtYmFyLXNvcnQgc2VsZWN0IHtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG59XG4jaW52ZW50b3J5IC5vcHRpb25zLWJhciAucmVzdWx0LWNvdW50LCAjaW52ZW50b3J5IC5vcHRpb25zLWJhciAucmVzdWx0LWNvdW50LWVtcHR5IHtcbiAgcGFkZGluZy1yaWdodDogMC4yNXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgI2ludmVudG9yeSAuZmlsdGVyLXNlbGVjdGlvbiwgLmludmVudG9yeS1oZWFkIC5maWx0ZXItc2VsZWN0aW9uIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMC43NXJlbTtcbiAgICBoZWlnaHQ6IDUwdmg7XG4gICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICB9XG4gICNpbnZlbnRvcnkgLmFjY29yZGlvbi1pdGVtLCAuaW52ZW50b3J5LWhlYWQgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjN2Y4MjgzO1xuICB9XG59XG4jaW52ZW50b3J5IC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgYSwgLmludmVudG9yeS1oZWFkIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgYSB7XG4gIGNvbG9yOiAjZDAwMjA0O1xufVxuI2ludmVudG9yeSAuYWNjb3JkaW9uLXRpdGxlLCAuaW52ZW50b3J5LWhlYWQgLmFjY29yZGlvbi10aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBcIk1vbnRzZXJyYXRcIiwgXCJSb2JvdG8gQ29uZGVuc2VkXCIsIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYm9yZGVyOiAwO1xufVxuXG4uaW52LnRoYW5rcyB7XG4gIC8qICAucGFnZS1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgfSovXG59XG4uaW52LnRoYW5rcyBoMyB7XG4gIGNvbG9yOiAjMzNjYzMzO1xuICBmb250LXNpemU6IDRyZW07XG59XG4uaW52LnRoYW5rcyAuYnV0dG9ucyA+IGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDAwMjA0O1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG59XG4uaW52LnRoYW5rcyAudGhhbmtzLXRleHQge1xuICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuaW52LnRoYW5rcyAudGhhbmtzLXRleHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDNyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAzcmVtO1xuICB9XG59IiwiLyogXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblRhYmxlIG9mIENvbnRlbnRzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiovXG5cbkBjaGFyc2V0ICd1dGYtOCc7XG4vLyAqKioqKioqKioqIEZPVU5EQVRJT04gKioqKioqKioqKiAvL1xuQGltcG9ydCAnc2V0dGluZ3MnO1xuQGltcG9ydCAnZm91bmRhdGlvbic7XG5AaW5jbHVkZSBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoZmFsc2UpO1xuLy8gKioqKioqKioqKiBNT1RJT04gVUkgKioqKioqKioqKiAvL1xuQGltcG9ydCAnbW90aW9uLXVpJztcbkBpbmNsdWRlIG1vdGlvbi11aS10cmFuc2l0aW9ucztcbkBpbmNsdWRlIG1vdGlvbi11aS1hbmltYXRpb25zO1xuLy8gKioqKioqKioqKiBTTElDSyBTTElERVIgKioqKioqKioqKiAvL1xuQGltcG9ydCAnc2xpY2stdGhlbWUuc2Nzcyc7XG5AaW1wb3J0ICdvdmVycmlkZXMvc2xpY2suc2Nzcyc7XG5AaW1wb3J0ICdzbGljay5zY3NzJztcbi8vICoqKioqKioqKiogTUFHTklGSUMgUE9QVVAgKioqKioqKioqKiAvL1xuQGltcG9ydCAnbWFpbic7XG4vLyAqKioqKioqKioqIEdFTkVSQUwgKioqKioqKioqKiAvL1xuQGltcG9ydCAnZ2VuZXJhbCc7XG5AaW1wb3J0ICd1dGlsaXR5JztcbkBpbXBvcnQgJ2hlYWRlcic7XG5AaW1wb3J0ICdmb290ZXInO1xuLy8gKioqKioqKioqKiBIT01FICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2hvbWUvc2VjdGlvbnMnO1xuQGltcG9ydCAnaG9tZS9oZXJvJztcbkBpbXBvcnQgJ2hvbWUvZXhwbG9yZSc7XG5AaW1wb3J0ICdob21lL3BlbmNpbCc7XG5AaW1wb3J0ICdob21lL3doZWVscyc7XG5AaW1wb3J0ICdob21lL3Nlcmllcyc7XG5AaW1wb3J0ICdob21lL3RpcmVzLWFjY2Vzc29yaWVzJztcbkBpbXBvcnQgJ2hvbWUvY3RhJztcbkBpbXBvcnQgJ2hvbWUvZGVhbGVycyc7XG5AaW1wb3J0ICdob21lL2Fib3V0JztcbkBpbXBvcnQgJ2hvbWUvaW5zdGFncmFtJztcbkBpbXBvcnQgJ2hvbWUvZ2FsbGVyeSc7XG4vLyAqKioqKioqKioqIE1JU0NFTExBTkVPVVMgKioqKioqKioqKiAvL1xuQGltcG9ydCAnZmlsdGVycyc7XG5AaW1wb3J0ICd2ZWhpY2xlLWJhcic7XG5AaW1wb3J0ICduYXYtc2VhcmNoJztcbi8vICoqKioqKioqKiogV0hFRUxTICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3doZWVsL3doZWVscyc7XG5AaW1wb3J0ICd3aGVlbC93aGVlbCc7XG5AaW1wb3J0ICd3aGVlbC9zdGFnZSc7XG5AaW1wb3J0ICd3aGVlbC9zcGVjcyc7XG5AaW1wb3J0ICd3aGVlbC9pbmZvJztcbkBpbXBvcnQgJ3doZWVsL2N0YSc7XG5AaW1wb3J0ICd3aGVlbC9kZXRhaWxzLW1lZGlhJztcbkBpbXBvcnQgJ3doZWVsL3ZpZXctb24tdmVoaWNsZSc7XG5AaW1wb3J0ICd3aGVlbC92aWV3LW9uLXZlaGljbGUtcG9wdXAnO1xuQGltcG9ydCAnd2hlZWwvdmVoaWNsZS1nYWxsZXJ5JztcbkBpbXBvcnQgJ3doZWVsL3NwZWMtdGFicyc7XG5AaW1wb3J0ICd3aGVlbC9maW5pc2hlcyc7XG5AaW1wb3J0ICd3aGVlbC9nYWxsZXJ5JztcbkBpbXBvcnQgJ3doZWVsL25hdmlnYXRpb24nO1xuQGltcG9ydCAnd2hlZWwvdGl0bGUnO1xuQGltcG9ydCAnd2hlZWwvY2FydCc7XG4vLyAqKioqKioqKioqIEVMSVRFIEZMT1cgKioqKioqKioqKiAvL1xuQGltcG9ydCAnZWxpdGUtZmxvdy9maWx0ZXJzJztcbkBpbXBvcnQgJ2VsaXRlLWZsb3cvbGlzdGluZyc7XG4vLyAqKioqKioqKioqIEVMSVRFIEZMT1cgLSBkZXRhaWxzICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2VsaXRlLWZsb3cvZGV0YWlsJztcbkBpbXBvcnQgJ2VsaXRlLWZsb3cvZml0bWVudCc7XG5AaW1wb3J0ICdlbGl0ZS1mbG93L3ZpZXctb24tdmVoaWNsZSc7XG4vLyAqKioqKioqKioqIFdIRUVMUyAtIEZpdG1lbnQgKioqKioqKioqKiAvL1xuQGltcG9ydCAnd2hlZWwvZml0bWVudC9maWx0ZXInO1xuQGltcG9ydCAnd2hlZWwvZml0bWVudC9pbmZvJztcbkBpbXBvcnQgJ3doZWVsL2ZpdG1lbnQvc3BlY3MnO1xuQGltcG9ydCAnd2hlZWwvZml0bWVudC9zdGFnZSc7XG5AaW1wb3J0ICd3aGVlbC9maXRtZW50L3doZWVscyc7XG4vLyAqKioqKioqKioqIFRJUkVTICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ3RpcmUvdGlyZSc7XG5AaW1wb3J0ICd0aXJlL2luZm8nO1xuQGltcG9ydCAndGlyZS9jdGEnO1xuQGltcG9ydCAndGlyZS9zcGVjcyc7XG5AaW1wb3J0ICd0aXJlL3RpcmVzJztcbi8vICoqKioqKioqKiogQUNDRVNTT1JJRVMgKioqKioqKioqKiAvL1xuQGltcG9ydCAnYWNjZXNzb3J5L2FjY2Vzc29yaWVzJztcbkBpbXBvcnQgJ2FjY2Vzc29yeS9hY2Nlc3NvcnknO1xuQGltcG9ydCAnYWNjZXNzb3J5L2N0YSc7XG5AaW1wb3J0ICdhY2Nlc3NvcnkvYmFyJztcbi8vICoqKioqKioqKiogR0FMTEVSWSAqKioqKioqKioqIC8vXG5AaW1wb3J0ICdnYWxsZXJ5L2ZpbHRlcic7XG5AaW1wb3J0ICdnYWxsZXJ5L2xhbmRpbmcnO1xuQGltcG9ydCAnZ2FsbGVyeS9kZXRhaWwnO1xuLy8gKioqKioqKioqKiBDT05URU5UICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ2NvbnRlbnQvY29udGFjdCc7XG5AaW1wb3J0ICdjb250ZW50L3BhZ2UnO1xuQGltcG9ydCAnY29udGVudC9uZXdzJztcbkBpbXBvcnQgJ2NvbnRlbnQvYWJvdXQnO1xuQGltcG9ydCAnY29udGVudC9kZWFsZXJzJztcbkBpbXBvcnQgJ2NvbnRlbnQvZGVhbGVyLWxvY2F0b3InO1xuQGltcG9ydCAnY29udGVudC9maXRtZW50JztcbkBpbXBvcnQgJ2NvbnRlbnQvZXJyb3InO1xuQGltcG9ydCAnY29udGVudC9kb3dubG9hZHMnO1xuLy8gKioqKioqKioqKiBQT1BVUFMgKioqKioqKioqKiAvL1xuQGltcG9ydCAncG9wdXBzL3BhY2thZ2UnO1xuQGltcG9ydCAncG9wdXBzL2FjY2Vzc29yeSc7XG5AaW1wb3J0ICdwb3B1cHMvZ2FsbGVyeS1xdW90ZSc7XG5AaW1wb3J0ICdwb3B1cHMvZml0bWVudC1jaGVjayc7XG4vLyAqKioqKioqKioqIEZPWFkgQ0FSVCAqKioqKioqKioqIC8vXG5AaW1wb3J0ICd1dGlsaXR5L2ZveHljYXJ0Jztcbi8vICoqKioqKioqKiogT1ZFUlJJREVTICoqKioqKioqKiogLy9cbkBpbXBvcnQgJ292ZXJyaWRlcy9zbmlwY2FydCc7XG4vLyAqKioqKioqKioqIElOVkVOVE9SWSAqKioqKioqKioqIC8vXG5AaW1wb3J0ICdpbnZlbnRvcnkvaGVhZGVyJztcbkBpbXBvcnQgJ2ludmVudG9yeS9mb290ZXInO1xuQGltcG9ydCAnaW52ZW50b3J5L2ludmVudG9yeSc7XG5AaW1wb3J0ICdpbnZlbnRvcnkvbG9naW4nO1xuQGltcG9ydCAnaW52ZW50b3J5L29yZGVycyc7XG5AaW1wb3J0ICdpbnZlbnRvcnkvY2FydCc7XG5AaW1wb3J0ICdpbnZlbnRvcnkvZmlsdGVyJztcbkBpbXBvcnQgJ2ludmVudG9yeS90aGFua3MnOyIsIi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi45LjBcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5cbi8vIC0tLSBEZXBlbmRlbmNpZXMgLS0tXG5AaW1wb3J0ICd2ZW5kb3Ivbm9ybWFsaXplJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvaGVscGVycy9taXNzaW5nLWRlcGVuZGVuY2llcyc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvdHJ1ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9jb250YWluJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3B1cmdlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3JlbW92ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZXBsYWNlJztcbkBpbXBvcnQgJy4uL192ZW5kb3Ivc2Fzc3ktbGlzdHMvc3R5bGVzaGVldHMvZnVuY3Rpb25zL3RvLWxpc3QnO1xuXG4vLyAtLS0gU2V0dGluZ3MgLS0tXG4vLyBpbXBvcnQgeW91ciBvd24gYHNldHRpbmdzYCBoZXJlIG9yXG4vLyBpbXBvcnQgYW5kIG1vZGlmeSB0aGUgZGVmYXVsdCBzZXR0aW5ncyB0aHJvdWdoXG4vLyBAaW1wb3J0ICdzZXR0aW5ncy9zZXR0aW5ncyc7XG5cbi8vIC0tLSBDb21wb25lbnRzIC0tLVxuLy8gVXRpbGl0aWVzXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuLy8gR2xvYmFsIHN0eWxlc1xuQGltcG9ydCAnZ2xvYmFsJztcbkBpbXBvcnQgJ2Zvcm1zL2Zvcm1zJztcbkBpbXBvcnQgJ3R5cG9ncmFwaHkvdHlwb2dyYXBoeSc7XG5cbi8vIEdyaWRzXG5AaW1wb3J0ICdncmlkL2dyaWQnO1xuQGltcG9ydCAneHktZ3JpZC94eS1ncmlkJztcbi8vIEdlbmVyaWMgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9idXR0b24tZ3JvdXAnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jbG9zZS1idXR0b24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9sYWJlbCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Byb2dyZXNzLWJhcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3NsaWRlcic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3N3aXRjaCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYmxlJztcbi8vIEJhc2ljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYmFkZ2UnO1xuQGltcG9ydCAnY29tcG9uZW50cy9icmVhZGNydW1icyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2NhbGxvdXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYXJkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9wYWdpbmF0aW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9vbHRpcCc7XG5cbi8vIENvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYWNjb3JkaW9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVkaWEtb2JqZWN0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvb3JiaXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXNwb25zaXZlLWVtYmVkJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGFicyc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RodW1ibmFpbCc7XG4vLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUtaWNvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbi1tZW51JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJpbGxkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZHJvcGRvd24tbWVudSc7XG5cbi8vIExheW91dCBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL29mZi1jYW52YXMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9yZXZlYWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9zdGlja3knO1xuQGltcG9ydCAnY29tcG9uZW50cy90aXRsZS1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy90b3AtYmFyJztcblxuLy8gSGVscGVyc1xuQGltcG9ydCAnY29tcG9uZW50cy9mbG9hdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2ZsZXgnO1xuQGltcG9ydCAnY29tcG9uZW50cy92aXNpYmlsaXR5JztcbkBpbXBvcnQgJ3Byb3RvdHlwZS9wcm90b3R5cGUnO1xuXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWV2ZXJ5dGhpbmcoXG4gICRmbGV4OiB0cnVlLFxuICAkcHJvdG90eXBlOiBmYWxzZSxcbiAgJHh5LWdyaWQ6ICR4eS1ncmlkXG4pIHtcbiAgQGlmICRmbGV4IHtcbiAgICAkZ2xvYmFsLWZsZXhib3g6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIEBpZiAkeHktZ3JpZCB7XG4gICAgJHh5LWdyaWQ6IHRydWUgIWdsb2JhbDtcbiAgfVxuXG4gIC8vIEdsb2JhbCBzdHlsZXNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZvcm1zO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXR5cG9ncmFwaHk7XG5cbiAgLy8gR3JpZHNcbiAgQGlmIG5vdCAkZmxleCB7XG4gICAgQGluY2x1ZGUgZm91bmRhdGlvbi1ncmlkO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaWYgJHh5LWdyaWQge1xuICAgICAgQGluY2x1ZGUgZm91bmRhdGlvbi14eS1ncmlkLWNsYXNzZXM7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxleC1ncmlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b24tZ3JvdXA7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2xvc2UtYnV0dG9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWxhYmVsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb2dyZXNzLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1zbGlkZXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3dpdGNoO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYmxlO1xuICAvLyBCYXNpYyBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYmFkZ2U7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnJlYWRjcnVtYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FsbG91dDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1jYXJkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWRyb3Bkb3duO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXBhZ2luYXRpb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9vbHRpcDtcblxuICAvLyBDb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1vcmJpdDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRhYnM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdGh1bWJuYWlsO1xuICAvLyBNZW51LWJhc2VkIGNvbnRhaW5lcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW1lbnUtaWNvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcmlsbGRvd24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bi1tZW51O1xuXG4gIC8vIExheW91dCBjb21wb25lbnRzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb2ZmLWNhbnZhcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1yZXZlYWw7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc3RpY2t5O1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRpdGxlLWJhcjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10b3AtYmFyO1xuXG4gIC8vIEhlbHBlcnNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mbG9hdC1jbGFzc2VzO1xuICBAaWYgJGZsZXggeyBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlczsgfVxuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcztcbiAgQGlmICRwcm90b3R5cGUgeyBAaW5jbHVkZSBmb3VuZGF0aW9uLXByb3RvdHlwZS1jbGFzc2VzOyB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWtwb2ludHNcbi8vLy9cblxuLy8vIFBhdGNoIHRvIGZpeCBpc3N1ZSAjMTIwODBcbiQtemYtc2l6ZTogbnVsbDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcy5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50czogKFxuICBcInNtYWxsXCI6IDAsXG4gIFwibWVkaXVtXCI6IDY0MHB4LFxuICBcImxhcmdlXCI6IDEwMjRweCxcbiAgXCJ4bGFyZ2VcIjogMTIwMHB4LFxuICBcInh4bGFyZ2VcIjogMTQ0MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEEgbGlzdCBvZiBuYW1lZCBIaURQSSBicmVha3BvaW50cy4gWW91IGNhbiB1c2UgdGhlc2Ugd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gcXVpY2tseSBjcmVhdGUgbWVkaWEgcXVlcmllcyBmb3IgcmVzb2x1dGlvbnMuXG4vLy8gVmFsdWVzIG11c3QgcmVwcmVzZW50IHRoZSBkZXZpY2UgcGl4ZWxzIC8gd2ViIHBpeGVscyByYXRpb24gYW5kIGJlIHVuaXRsZXNzIG9yIGluIERQUFguXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgXCJoaWRwaS0xXCI6IDEsXG4gIFwiaGlkcGktMS01XCI6IDEuNSxcbiAgXCJoaWRwaS0yXCI6IDIsXG4gIFwicmV0aW5hXCI6IDIsXG4gIFwiaGlkcGktM1wiOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtIGRpdmlkZSgxLCAkc3RkLXdlYi1kcGkpLCAtemYtYnAtdG8tZW0oJGJwLW5leHQpIC0gMC4wMDEyNSk7XG4gICAgfVxuICB9XG5cbiAgLy8gR2VuZXJhdGUgdGhlIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIG1pbiBhbmQgbWF4IGxpbWl0cy5cbiAgQGlmICRoaWRwaSB7XG4gICAgLy8gR2VuZXJhdGUgdmFsdWVzIGluIERQSSBpbnN0ZWFkIG9mIERQUFggZm9yIGFuIElFOS0xMS9PcGVyYSBtaW5pIGNvbXBhdGliaWxpdHkuXG4gICAgLy8gU2VlIGh0dHBzOi8vY2FuaXVzZS5jb20vI2ZlYXQ9Y3NzLW1lZGlhLXJlc29sdXRpb25cbiAgICAkYnAtbWluLWRwaTogaWYoJGJwLW1pbiwgJGJwLW1pbiAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1taW4pO1xuICAgICRicC1tYXgtZHBpOiBpZigkYnAtbWF4LCAkYnAtbWF4ICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1heCk7XG4gICAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgsICctd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW8nLCAnLXdlYmtpdC1tYXgtZGV2aWNlLXBpeGVsLXJhdGlvJyksXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLWRwaSwgJGJwLW1heC1kcGksICdtaW4tcmVzb2x1dGlvbicsICdtYXgtcmVzb2x1dGlvbicpLFxuICAgICAgJywgJyk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCk7XG4gIH1cbn1cblxuLy8vIFdyYXBzIGEgbWVkaWEgcXVlcnkgYXJvdW5kIHRoZSBjb250ZW50IHlvdSBwdXQgaW5zaWRlIHRoZSBtaXhpbi4gVGhpcyBtaXhpbiBhY2NlcHRzIGEgbnVtYmVyIG9mIHZhbHVlczpcbi8vLyAgLSBJZiBhIHN0cmluZyBpcyBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGxvb2sgZm9yIGl0IGluIHRoZSBgJGJyZWFrcG9pbnRzYCBhbmQgYCRicmVha3BvaW50cy1oaWRwaWAgbWFwcywgYW5kIHVzZSBhIG1lZGlhIHF1ZXJ5IHRoZXJlLlxuLy8vICAtIElmIGEgcGl4ZWwgdmFsdWUgaXMgcGFzc2VkLCBpdCB3aWxsIGJlIGNvbnZlcnRlZCB0byBhbiBlbSB2YWx1ZSB1c2luZyBgJGdsb2JhbC1mb250LXNpemVgIGFzIHRoZSBiYXNlLlxuLy8vICAtIElmIGEgcmVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHVuaXQgd2lsbCBiZSBjaGFuZ2VkIHRvIGVtLlxuLy8vICAtIElmIGFuIGVtIHZhbHVlIGlzIHBhc3NlZCwgdGhlIHZhbHVlIHdpbGwgYmUgdXNlZCBhcy1pcy5cbi8vL1xuLy8vIElmIG11bHRpcGxlIHZhbHVlcyBhcmUgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBnZW5lcmF0ZSBhIG1lZGlhIHF1ZXJ5IGZvciBlYWNoIG9mIHRoZW0gYXMgZGVzY3JpYmVkIGFib3ZlLlxuLy8vIFNpbmNlIHRoZSBjb250ZW50IGlzIGR1cGxpY2F0ZWQgZm9yIGVhY2ggYnJlYWtwb2ludCwgdGhpcyBtaXhpbiBzaG91bGQgb25seSBiZSB1c2VkIHdpdGggcHJvcGVydGllcyB0aGF0XG4vLy8gY2hhbmdlIGFjcm9zcyBicmVha3BvaW50cy5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWx1ZXMuLi4gLSBCcmVha3BvaW50IG5hbWUgb3IgcHgvcmVtL2VtIHZhbHVlIHRvIHByb2Nlc3MuXG4vLy9cbi8vLyBAb3V0cHV0IElmIHRoZSBicmVha3BvaW50IGlzIFwiMHB4IGFuZCBsYXJnZXJcIiwgb3V0cHV0cyB0aGUgY29udGVudCBhcy1pcy4gT3RoZXJ3aXNlLCBvdXRwdXRzIHRoZSBjb250ZW50IHdyYXBwZWQgaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBicmVha3BvaW50KCR2YWx1ZXMuLi4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCBsZW5ndGgoJHZhbHVlcykge1xuICAgICR2YWx1ZTogbnRoKCR2YWx1ZXMsICRpKTtcbiAgICAkc3RyOiBicmVha3BvaW50KCR2YWx1ZSk7XG4gICAgJGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsIG50aCgkdmFsdWUsIDEpKTtcbiAgICAkcGJwOiBpbmRleCgkLXpmLWJyZWFrcG9pbnRzLWtleXMsICRwcmludC1icmVha3BvaW50KTtcbiAgICAvLyBEaXJlY3Rpb24gb2YgbWVkaWEgcXVlcnkgKHVwLCBkb3duLCBvciBvbmx5KVxuICAgICRkaXI6IGlmKGxlbmd0aCgkdmFsdWUpID4gMSwgbnRoKCR2YWx1ZSwgMiksIHVwKTtcblxuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcblxuICAgIC8vIE1ha2UgYnJlYWtwb2ludCBzaXplIGF2YWlsYWJsZSBhcyBhIHZhcmlhYmxlXG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6IG50aCgkdmFsdWUsIDEpICFnbG9iYWw7IC8vIGdldCB0aGUgZmlyc3QgdmFsdWUgdG8gYWNjb3VudCBmb3IgYG9ubHlgIGFuZCBgZG93bmAga2V5d29yZHNcblxuICAgIC8vIElmICRzdHIgaXMgc3RpbGwgYW4gZW1wdHkgc3RyaW5nLCBubyBtZWRpYSBxdWVyeSBpcyBuZWVkZWRcbiAgICBAaWYgJHN0ciA9PSAnJyB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG5cbiAgICAvLyBPdGhlcndpc2UsIHdyYXAgdGhlIGNvbnRlbnQgaW4gYSBtZWRpYSBxdWVyeVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEZvciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gb3IgZXF1YWwgdG8gJHByaW50LWJyZWFrcG9pbnQsIGFkZCBwcmludCB0byB0aGUgbWVkaWEgdHlwZXNcbiAgICAgIC8vIGdlbmVyYXRlIHByaW50IGlmIHRoZSBicmVha3BvaW50IGFmZmVjdHMgdGhlIHByaW50LWJyZWFrcG9pbnQgKG9yIHNtYWxsZXIpLlxuICAgICAgLy8gVGhpcyBtZWFucyB0aGUgY3VycmVudCBjb25kaXRpb24gb25seSBuZWVkcyB0byBiZSBleHRlbmRlZCBzbyAnZG93bicgYWx3YXlzIGdlbmVyYXRlcyBwcmludC5cbiAgICAgIEBpZiAkYnAgIT0gbnVsbCBhbmQgKCRicCA8PSAkcGJwIG9yICRkaXIgPT0gZG93bikge1xuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgI3skc3RyfSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAkLXpmLXNpemU6ICRvbGQtemYtc2l6ZSAhZ2xvYmFsO1xuICB9XG59XG5cbi8vLyBDb252ZXJ0cyB0aGUgYnJlYWtwb2ludHMgbWFwIHRvIGEgVVJMLWVuY29kZWQgc3RyaW5nLCBsaWtlIHRoaXM6IGBrZXkxPXZhbHVlMSZrZXkyPXZhbHVlMmAuIFRoZSB2YWx1ZSBpcyB0aGVuIGRyb3BwZWQgaW50byB0aGUgQ1NTIGZvciBhIHNwZWNpYWwgYDxtZXRhPmAgdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHQuIFRoaXMgaXMgaG93IHdlIHRyYW5zZmVyIHZhbHVlcyBmcm9tIFNhc3MgdG8gSmF2YVNjcmlwdCwgc28gdGhleSBjYW4gYmUgZGVmaW5lZCBpbiBvbmUgcGxhY2UuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBjb252ZXJ0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gQSBzdHJpbmcgY29udGFpbmluZyB0aGUgbWFwJ3MgY29udGVudHMuXG5AZnVuY3Rpb24gLXpmLWJwLXNlcmlhbGl6ZSgkbWFwKSB7XG4gICRzdHI6ICcnO1xuICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgJHN0cjogJHN0ciArICRrZXkgKyAnPScgKyAtemYtYnAtdG8tZW0oJHZhbHVlKSArICcmJztcbiAgfVxuICAkc3RyOiBzdHItc2xpY2UoJHN0ciwgMSwgLTIpO1xuXG4gIEByZXR1cm4gJHN0cjtcbn1cblxuLy8vIEZpbmQgdGhlIG5leHQga2V5IGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJGtleSAtIEtleSB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIHZhbHVlIGZvciB0aGUga2V5IGFmdGVyIGAka2V5YCwgaWYgYCRrZXlgIHdhcyBmb3VuZC4gSWYgYCRrZXlgIHdhcyBub3QgZm91bmQsIG9yIGAka2V5YCB3YXMgdGhlIGxhc3QgdmFsdWUgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0KCRtYXAsICRrZXkpIHtcblxuICAvLyBTdG9yZSB0aGUga2V5cyBvZiB0aGUgbWFwIGFzIGEgbGlzdFxuICAkdmFsdWVzOiBtYXAta2V5cygkbWFwKTtcblxuICAkaTogMDtcblxuICAvLyBJZiB0aGUgS2V5IEV4aXN0cywgR2V0IHRoZSBpbmRleCBvZiB0aGUga2V5IHdpdGhpbiB0aGUgbWFwIGFuZCBhZGQgMSB0byBpdCBmb3IgdGhlIG5leHQgYnJlYWtwb2ludCBpbiB0aGUgbWFwXG4gIEBpZiAobWFwLWhhcy1rZXkoJG1hcCwgJGtleSkpIHtcbiAgICAkaTogaW5kZXgoJHZhbHVlcywgJGtleSkgKyAxO1xuICB9XG5cbiAgLy8gSWYgdGhlIGtleSBkb2Vzbid0IGV4aXN0LCBvciBpdCdzIHRoZSBsYXN0IGtleSBpbiB0aGUgbWFwLCByZXR1cm4gbnVsbFxuICBAaWYgKCRpID4gbGVuZ3RoKCRtYXApIG9yICRpID09IDApIHtcbiAgICBAcmV0dXJuIG51bGw7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gdGhlIHZhbHVlXG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgbnRoKCR2YWx1ZXMsICRpKSk7XG4gIH1cblxufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBudW1iZXIgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAkbnVtYmVyIC0gTnVtYmVyIHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgbnVtYmVyIGZvbGxvd2luZyBgJG51bWJlcmAsIGlmIGAkbnVtYmVyYCB3YXMgZm91bmQuIElmIGAkbnVtYmVyYCB3YXMgbm90IGZvdW5kLCBvciBgJG51bWJlcmAgd2FzIHRoZSBiaWdnZXN0IG51bWJlciBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQtbnVtYmVyKCRtYXAsICRudW1iZXIpIHtcblxuICAkbmV4dC1udW1iZXI6IG51bGw7XG5cbiAgQGVhY2ggJGssICR2IGluICRtYXAge1xuICAgIEBpZiB0eXBlLW9mKCR2KSA9PSAnbnVtYmVyJyBhbmQgJHYgPiAkbnVtYmVyIGFuZCAoJG5leHQtbnVtYmVyID09IG51bGwgb3IgJHYgPCAkbmV4dC1udW1iZXIpIHtcbiAgICAgICRuZXh0LW51bWJlcjogJHY7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV4dC1udW1iZXI7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGxhc3QgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCRrZXkpIHtcbiAgJGxpc3Q6ICgpO1xuICAkZm91bmQta2V5OiBmYWxzZTtcblxuICBAZWFjaCAkbmFtZSBpbiAkLXpmLWJyZWFrcG9pbnRzLWtleXMge1xuICAgIEBpZiAoJG5hbWUgPT0gJGtleSkge1xuICAgICAgJGZvdW5kLWtleTogdHJ1ZTtcbiAgICB9XG4gICAgQGlmIG5vdCAkZm91bmQta2V5IHtcbiAgICAgICRsaXN0OiBhcHBlbmQoJGxpc3QsICRuYW1lKTtcbiAgICB9XG4gIH1cbiAgQHJldHVybiAkbGlzdDtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgLSBhIG5hbWVkIG9yIG5vbi1uYW1lZCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgJGxhc3Q6ICQtemYtemVyby1icmVha3BvaW50O1xuICAkZm91bmQ6IGZhbHNlO1xuXG4gICR2YWx1ZTogdW5pdGxlc3MtY2FsYygkYnJlYWtwb2ludCwgMXB4KTtcbiAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgIEBpZiB1bml0bGVzcy1jYWxjKCR2YWwpID4gJHZhbHVlIHtcbiAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRsYXN0OiAka2V5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJGxhc3Q7XG59XG5cbi8vLyBHZXQgYSB2YWx1ZSBmb3IgYSBicmVha3BvaW50IGZyb20gYSByZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0IHJlZ2FyZGxlc3Mgb2YgYCR2YWx1ZWAuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBoYXMgdGhlIGtleSBgJHZhbHVlYCwgdGhlIGV4YWN0IGJyZWFrcG9pbnQgdmFsdWUgaXMgcmV0dXJuZWQuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgbWFwIGFuZCBkb2VzICpub3QqIGhhdmUgdGhlIGJyZWFrcG9pbnQsIHRoZSB2YWx1ZSBtYXRjaGluZyB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBpbiB0aGUgY29uZmlnIG1hcCBpcyByZXR1cm5lZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJG1hcCAtIFJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgLSBCcmVha3BvaW50IG5hbWUgdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TWl4ZWR9IFRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUuXG5AZnVuY3Rpb24gLXpmLWdldC1icC12YWwoJG1hcCwgJHZhbHVlKSB7XG4gIC8vIElmIHRoZSBnaXZlbiBtYXAgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdFxuICBAaWYgdHlwZS1vZigkbWFwKSA9PSAnbnVtYmVyJyB7XG4gICAgQHJldHVybiAkbWFwO1xuICB9XG5cblxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBnbG9iYWxseVxuICBAaWYgbm90IG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJHZhbHVlKSB7XG4gICAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkdmFsdWU6IC16Zi1jbG9zZXN0LW5hbWVkLWJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIEByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgaW4gdGhlIGxvY2FsIGNvbmZpZyBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJG1hcCwgJHZhbHVlKSB7XG4gICAgLy8gSWYgaXQgZG9lcywganVzdCByZXR1cm4gdGhlIHZhbHVlXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICR2YWx1ZSk7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCBmaW5kIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGFuZCByZXR1cm4gdGhhdCB2YWx1ZVxuICBAZWxzZSB7XG4gICAgJGFuY2hvcjogbnVsbDtcbiAgICAkZm91bmQ6IGZhbHNlO1xuXG4gICAgQGVhY2ggJGtleSwgJHZhbCBpbiAkYnJlYWtwb2ludHMge1xuICAgICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJG1hcCwgJGtleSkge1xuICAgICAgICAgICRhbmNob3I6ICRrZXk7XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRrZXkgPT0gJHZhbHVlIHtcbiAgICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJGFuY2hvcik7XG4gIH1cbn1cblxuLy8vIFJldHVybiB0aGUgYmVzdCBicmVha3BvaW50IHRvIHVzZSBhY2NvcmRpbmcgdG8gdGhlIGNhbGxpbmcgY29udGV4dC4gSXQgcmV0dXJucyBpbiBvcmRlcjpcbi8vLyAxLiB0aGUgZ2l2ZW4gYCR2YWx1ZWAgYXJndW1lbnQgaWYgaXQgaXMgbm90IG51bGwuXG4vLy8gMi4gdGhlIGdsb2JhbCBicmVha3BvaW50IGNvbnRleHQgYCQtemYtc2l6ZWAgaWYgaXQgaXMgbm90IG51bGwgKGxpa2UgaWYgY2FsbGVkIGluc2lkZSB0aGVuIGBicmVha3BvaW50KClgIG1peGluKVxuLy8vIDMuIHRoZSBnaXZlbiBgJGRlZmF1bHRgIGFyZ3VtZW50LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdmFsdWUgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgaW4gcHJpb3JpdHkgaWYgbm9uLW51bGwuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGVmYXVsdCBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBieSBkZWZhdWx0IGlmIG5vIG90aGVyIHZhbHVlIGNhbiBiZSB1c2VkLlxuLy8vXG4vLy8gQHJldHVybiB7S2V5d29yZH0gVGhlIHJlc29sdmVkIGJyZWFrcG9pbnQuXG5AZnVuY3Rpb24gLXpmLWN1cnJlbnQtYnJlYWtwb2ludCgkdmFsdWU6IG51bGwsICRkZWZhdWx0OiBudWxsKSB7XG4gIEBpZiAoJHZhbHVlICE9IG51bGwpIHtcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuICBAZWxzZSBpZiAodmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSBhbmQgdHlwZS1vZigkLXpmLXNpemUpICE9ICdudW1iZXInKSBhbmQgJC16Zi1zaXplICE9IG51bGwge1xuICAgIEByZXR1cm4gJC16Zi1zaXplO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuICRkZWZhdWx0O1xuICB9XG59XG5cbi8vLyBSZXR1cm4gbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gdGhlIGdpdmVuIG1pbiBhbmQvb3IgbWF4IGxpbWl0cy5cbi8vLyBJZiBhIGxpbWl0IGlzIGVxdWFsIHRvIGBudWxsYCBvciBgMGAsIGl0IGlzIGlnbm9yZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1pbiBbMF0gLSBNaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggWzBdIC0gTWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbWluLW5hbWUgWydtaW4td2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGRlbGltaXRlciBbJ21heC13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWF4IG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vXG4vLy8gQHJldHVybnMge1N0cmluZ30gTWVkaWEgUXVlcnkgc3RyaW5nLlxuQGZ1bmN0aW9uIC16Zi1icC1qb2luKFxuICAkbWluOiAwLFxuICAkbWF4OiAwLFxuICAkbWluLW5hbWU6ICdtaW4td2lkdGgnLFxuICAkbWF4LW5hbWU6ICdtYXgtd2lkdGgnXG4pIHtcbiAgQHJldHVybiB6Zi1zdHItam9pbihcbiAgICBpZigkbWluIGFuZCAkbWluID4gMCwgJygjeyRtaW4tbmFtZX06ICN7JG1pbn0pJywgbnVsbCksXG4gICAgaWYoJG1heCBhbmQgJG1heCA+IDAsICcoI3skbWF4LW5hbWV9OiAjeyRtYXh9KScsIG51bGwpLFxuICAgICcgYW5kICcpO1xufVxuXG4kc21hbGwtdXA6ICcnO1xuJHNtYWxsLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBzbWFsbCkge1xuICAkc21hbGwtdXA6IHNjcmVlbjtcbiAgJHNtYWxsLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHNtYWxsIG9ubHkpfScpO1xufVxuXG4kbWVkaXVtLXVwOiAnJztcbiRtZWRpdW0tb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIG1lZGl1bSkge1xuICAkbWVkaXVtLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0pfScpO1xuICAkbWVkaXVtLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSBvbmx5KX0nKTtcbn1cblxuJGxhcmdlLXVwOiAnJztcbiRsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbGFyZ2UpIHtcbiAgJGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSl9Jyk7XG4gICRsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHhsYXJnZS11cDogJyc7XG4keGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4bGFyZ2UpIHtcbiAgJHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlKX0nKTtcbiAgJHhsYXJnZS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4eGxhcmdlLXVwOiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeHhsYXJnZSkge1xuICAkeHhsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeHhsYXJnZSl9Jyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgcmV2ZWFsXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHdpZHRoIG9mIGEgbW9kYWwsIHdpdGggbm8gY2xhc3MgYXBwbGllZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtd2lkdGg6IDYwMHB4ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXhpbXVtIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIHotaW5kZXggZm9yIG1vZGFscy4gVGhlIG92ZXJsYXkgdXNlcyB0aGlzIHZhbHVlLCB3aGlsZSB0aGUgbW9kYWwgaXRzZWxmIHVzZXMgdGhpcyB2YWx1ZSBwbHVzIG9uZS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtemluZGV4OiAxMDA1ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBtb2RhbCBvdmVybGF5cy5cbi8vLyBAdHlwZSBDb2xvclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KSAhZGVmYXVsdDtcblxuXG4vLyBQbGFjZWhvbGRlciBzZWxlY3RvciBmb3IgbWVkaXVtLWFuZC11cCBtb2RhbHNcbi8vIFByZXZlbnRzIGR1cGxpY2F0ZSBDU1Mgd2hlbiBkZWZpbmluZyBtdWx0aXBsZSBSZXZlYWwgc2l6ZXNcbi8vIFRoaXMgc2hvdWxkIGJlIGluIHRoZSBzYW1lIGJyZWFrcG9pbnQgdGhlbiBgQG1peGluIHJldmVhbC1tb2RhbC13aWR0aGBcbkBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICVyZXZlYWwtY2VudGVyZWQge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgbW9kYWwgb3ZlcmxheS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgb3ZlcmxheS5cbkBtaXhpbiByZXZlYWwtb3ZlcmxheSgkYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQpIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4O1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXggKyAxO1xuICAvLyBXb3JrYXJvdW5kIGFuZHJvaWQgYnJvd3NlciB6LWluZGV4IGJ1Z1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogJHJldmVhbC1wYWRkaW5nO1xuXG4gIGJvcmRlcjogJHJldmVhbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRyZXZlYWwtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmV2ZWFsLWJhY2tncm91bmQ7XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWluLWhlaWdodDogMDtcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSByb3dzIGRvbid0IGhhdmUgYSBtaW4td2lkdGggb24gdGhlbVxuICAuY29sdW1uIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cblxuICAvLyBTdHJpcCBtYXJnaW5zIGZyb20gdGhlIGxhc3QgaXRlbSBpbiB0aGUgbW9kYWxcbiAgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRqdXN0cyB0aGUgd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHdpZHRoIC0gV2lkdGggb2YgdGhlIG1vZGFsLiBHZW5lcmFsbHkgYSBwZXJjZW50YWdlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4LXdpZHRoIFskcmV2ZWFsLW1heC13aWR0aF0gLSBNYXhpbXVtIHdpZHRoIG9mIHRoZSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGgoXG4gICR3aWR0aDogJHJldmVhbC13aWR0aCxcbiAgJG1heC13aWR0aDogJHJldmVhbC1tYXgtd2lkdGhcbikge1xuICAvLyBFeHRlbmRzIG11c3QgYmUgbWFkZSBvdXRzaWRlIG9mIGJyZWFrcG9pbnRzIGZvciBjb21wYXRpYmlsaXR5IHdpdGggbmV3ZXIgU2FzcyB2ZXJzaW9ucyAobGlic2FzcyB2My41KVxuICBAZXh0ZW5kICVyZXZlYWwtY2VudGVyZWQ7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXNjcmVlbiBtb2RhbCwgd2hpY2ggc3RyZXRjaGVzIHRoZSBmdWxsIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHdpbmRvdy5cbkBtaXhpbiByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbiB7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcblxuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiBub25lO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuXG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tcmV2ZWFsIHtcblxuICAvLy8gRGlzYWJsZXMgdGhlIHNjcm9sbCB3aGVuIFJldmVhbCBpcyBzaG93biB0byBwcmV2ZW50IHRoZSBiYWNrZ3JvdW5kIGZyb20gc2hpZnRpbmdcbiAgaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgICYuemYtaGFzLXNjcm9sbCB7XG4gICAgICBvdmVyZmxvdy15OiBzY3JvbGw7XG4gICAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgfVxuXG4gICAgYm9keSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIC8vIE92ZXJsYXlcbiAgLnJldmVhbC1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSByZXZlYWwtb3ZlcmxheTtcbiAgfVxuXG4gIC8vIE1vZGFsIGNvbnRhaW5lclxuICAucmV2ZWFsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZTtcbiAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoJHJldmVhbC13aWR0aCk7XG5cbiAgICAvLyBSZW1vdmUgcGFkZGluZ1xuICAgICYuY29sbGFwc2Uge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAvLyBTaXppbmcgY2xhc3Nlc1xuICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoMzAlKTsgfVxuICAgICYuc21hbGwgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoNTAlKTsgfVxuICAgICYubGFyZ2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtd2lkdGgoOTAlKTsgfVxuXG4gICAgLy8gRnVsbC1zY3JlZW4gbW9kZVxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIHJldmVhbC1tb2RhbC1mdWxsc2NyZWVuO1xuICAgIH1cblxuICAgICYud2l0aG91dC1vdmVybGF5IHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIHNhc3MtbGludDpkaXNhYmxlIG5vLXZlbmRvci1wcmVmaXhlc1xuXG5AbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgd2VpZ2h0IGluIENocm9tZSwgRWRnZSwgYW5kIFNhZmFyaS5cblxuICBiLFxuICBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkZXI7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmhlcml0YW5jZSBhbmQgc2NhbGluZyBvZiBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvZGQgYGVtYCBmb250IHNpemluZyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgY29kZSxcbiAga2JkLFxuICBzYW1wIHtcbiAgICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7IC8vIDFcbiAgICBmb250LXNpemU6IDFlbTsgLy8gMlxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogODAlO1xuICB9XG5cbiAgLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgZWxlbWVudHMgZnJvbSBhZmZlY3RpbmcgdGhlIGxpbmUgaGVpZ2h0IGluXG4gIC8vIGFsbCBicm93c2Vycy5cblxuICBzdWIsXG4gIHN1cCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIHN1YiB7XG4gICAgYm90dG9tOiAtMC4yNWVtO1xuICB9XG5cbiAgc3VwIHtcbiAgICB0b3A6IC0wLjVlbTtcbiAgfVxuXG4gIC8vIEVtYmVkZGVkIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBSZW1vdmUgdGhlIGJvcmRlciBvbiBpbWFnZXMgaW5zaWRlIGxpbmtzIGluIElFIDEwLlxuXG4gIGltZyB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICB9XG5cbiAgLy8gRm9ybXNcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDaGFuZ2UgdGhlIGZvbnQgc3R5bGVzIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gRmlyZWZveCBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMTAwJTsgLy8gMVxuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgbWFyZ2luOiAwOyAvLyAyXG4gIH1cblxuICAvLyBTaG93IHRoZSBvdmVyZmxvdyBpbiBJRS5cbiAgLy8gMS4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZS5cblxuICBidXR0b24sXG4gIGlucHV0IHsgLy8gMVxuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBFZGdlLCBGaXJlZm94LCBhbmQgSUUuXG4gIC8vIDEuIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRmlyZWZveC5cblxuICBidXR0b24sXG4gIHNlbGVjdCB7IC8vIDFcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBbdHlwZT1cImJ1dHRvblwiXSxcbiAgW3R5cGU9XCJyZXNldFwiXSxcbiAgW3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBib3JkZXIgYW5kIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBidXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cInN1Ym1pdFwiXTo6LW1vei1mb2N1cy1pbm5lciB7XG4gICAgYm9yZGVyLXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBmb2N1cyBzdHlsZXMgdW5zZXQgYnkgdGhlIHByZXZpb3VzIHJ1bGUuXG5cbiAgYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cImJ1dHRvblwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJyZXNldFwiXTotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICAgIG91dGxpbmU6IDFweCBkb3R0ZWQgQnV0dG9uVGV4dDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIHBhZGRpbmcgaW4gRmlyZWZveC5cblxuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgdGV4dCB3cmFwcGluZyBpbiBFZGdlIGFuZCBJRS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgY29sb3IgaW5oZXJpdGFuY2UgZnJvbSBgZmllbGRzZXRgIGVsZW1lbnRzIGluIElFLlxuICAvLyAzLiBSZW1vdmUgdGhlIHBhZGRpbmcgc28gZGV2ZWxvcGVycyBhcmUgbm90IGNhdWdodCBvdXQgd2hlbiB0aGV5IHplcm8gb3V0XG4gIC8vICAgIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGxlZ2VuZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIGNvbG9yOiBpbmhlcml0OyAvLyAyXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDFcbiAgICBtYXgtd2lkdGg6IDEwMCU7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAzXG4gICAgd2hpdGUtc3BhY2U6IG5vcm1hbDsgLy8gMVxuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IHZlcnRpY2FsIGFsaWdubWVudCBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBPcGVyYS5cblxuICBwcm9ncmVzcyB7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSAxMCsuXG5cbiAgdGV4dGFyZWEge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gSUUgMTAuXG4gIC8vIDIuIFJlbW92ZSB0aGUgcGFkZGluZyBpbiBJRSAxMC5cblxuICBbdHlwZT1cImNoZWNrYm94XCJdLFxuICBbdHlwZT1cInJhZGlvXCJdIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gMlxuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgY3Vyc29yIHN0eWxlIG9mIGluY3JlbWVudCBhbmQgZGVjcmVtZW50IGJ1dHRvbnMgaW4gQ2hyb21lLlxuXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgb2RkIGFwcGVhcmFuY2UgaW4gQ2hyb21lIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG91dGxpbmUgc3R5bGUgaW4gU2FmYXJpLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gMVxuICAgIG91dGxpbmUtb2Zmc2V0OiAtMnB4OyAvLyAyXG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIHBhZGRpbmcgaW4gQ2hyb21lIGFuZCBTYWZhcmkgb24gbWFjT1MuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWRlY29yYXRpb24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgdHlwZXMgaW4gaU9TIGFuZCBTYWZhcmkuXG4gIC8vIDIuIENoYW5nZSBmb250IHByb3BlcnRpZXMgdG8gYGluaGVyaXRgIGluIFNhZmFyaS5cblxuICA6Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjsgLy8gMVxuICAgIGZvbnQ6IGluaGVyaXQ7IC8vIDJcbiAgfVxuXG4gIC8vIEludGVyYWN0aXZlXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gRWRnZSwgSUUgMTArLCBhbmQgRmlyZWZveC5cblxuICBkZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIGFsbCBicm93c2Vycy5cblxuICBzdW1tYXJ5IHtcbiAgICBkaXNwbGF5OiBsaXN0LWl0ZW07XG4gIH1cblxuICAvLyBNaXNjXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTArLlxuXG4gIHRlbXBsYXRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gSUUgMTAuXG5cbiAgW2hpZGRlbl0ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBEaXNhYmxlIG91dGxpbmUgd2hlbiBpbnRlbnQgaXMgY2xlYXJseSBtb3VzZSBhbmQgdG91Y2hcbiAgW2RhdGEtd2hhdGludGVudD1cIm1vdXNlXCJdLFxuICBbZGF0YS13aGF0aW50ZW50PVwidG91Y2hcIl0sXG4gIFtkYXRhLXdoYXRpbnB1dD1cIm1vdXNlXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJ0b3VjaFwiXSB7XG4gICAgKiwgKjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC8vIERpc2FibGUgaU9TIGNhbGxvdXRzIHdoZW4gZHJhZ2dhYmxlIGlzIGZhbHNlXG4gIFtkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgXCJwcmltYXJ5XCI6ICMxNzc5YmEsXG4gIFwic2Vjb25kYXJ5XCI6ICM3Njc2NzYsXG4gIFwic3VjY2Vzc1wiOiAjM2FkYjc2LFxuICBcIndhcm5pbmdcIjogI2ZmYWUwMCxcbiAgXCJhbGVydFwiOiAjY2M0YjM3LFxuKSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGxpZ2h0IGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsaWdodC1ncmF5OiAjZTZlNmU2ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3IgbWVkaXVtIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRtZWRpdW0tZ3JheTogI2NhY2FjYSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGRhcmsgZ3JheSBVSSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRhcmstZ3JheTogIzhhOGE4YSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIGJsYWNrIHVpIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxhY2s6ICMwYTBhMGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciB3aGl0ZSB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJHdoaXRlOiAjZmVmZWZlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBDb2xvclxuJGJvZHktZm9udC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBMaXN0XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgc2FmZSBwYWRkaW5nIG9uIHRoZSBib2R5IGZvciBub24tcmVjdGFuZ3VsYXIgZGV2aWNlcyAoaS5lLiBwaG9uZXMgd2l0aCBub3RjaGVzKVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LXNhZmUtcGFkZGluZzogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSBhbnRpYWxpYXNlZCB0eXBlLCB1c2luZyB0aGUgYC13ZWJraXQtZm9udC1zbW9vdGhpbmdgIGFuZCBgLW1vei1vc3gtZm9udC1zbW9vdGhpbmdgIENTUyBwcm9wZXJ0aWVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRib2R5LWFudGlhbGlhc2VkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIG1hcmdpbiBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcGFkZGluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBvc2l0aW9uaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBvc2l0aW9uOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIG5vcm1hbCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIGZvbnQgd2VpZ2h0IHVzZWQgZm9yIGJvbGQgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBlbGVtZW50cyB0aGF0IGhhdmUgYSBib3JkZXIgcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1yYWRpdXM6IDAgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBDYW4gYmUgb3ZlcndyaXR0ZW4gYXQgaW5kaXZpZHVhbCBtZW51IGNvbXBvbmVudCBsZXZlbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIE5lc3RlZCBtYXJnaW4gZm9yIHN1Ym1lbnUuXG4kZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFNldHMgdGhlIHRleHQgZGlyZWN0aW9uIG9mIHRoZSBDU1MuIENhbiBiZSBlaXRoZXIgYGx0cmAgb3IgYHJ0bGAuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGZvciBjb21wb25lbnRzIHRoYXQgc3VwcG9ydCBpdC5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLWZsZXhib3g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVkIHJlc3BvbnNpdmUgYnJlYWtwb2ludHMgZm9yIHByb3RvdHlwZXMgaWYgYXBwbGljYWJsZVxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBjdXJzb3IncyB2YWx1ZSwgYGF1dG9gIGJ5IGRlZmF1bHRcbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLWJ1dHRvbi1jdXJzb3I6IGF1dG8gIWRlZmF1bHQ7XG5cbkBpZiBub3QgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICBAZXJyb3IgJ0luICRmb3VuZGF0aW9uLXBhbGV0dGUsIHlvdSBtdXN0IGhhdmUgYSBjb2xvciBuYW1lZCBcInByaW1hcnlcIi4nO1xufVxuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgdGV4dCBkaXJlY3Rpb25cbiRnbG9iYWwtbGVmdDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIHJpZ2h0LCBsZWZ0KTtcbiRnbG9iYWwtcmlnaHQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBsZWZ0LCByaWdodCk7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlIHRoYXQgY29udGFpbnMgdGhlIGZsZXgganVzdGlmeWluZyBvcHRpb25zXG4kLXpmLWZsZXgtanVzdGlmeTogLXpmLWZsZXgtanVzdGlmeSgkZ2xvYmFsLXRleHQtZGlyZWN0aW9uKTtcblxuLy8vIEdsb2JhbCB0b2xlcmFuY2UgZm9yIGNvbG9yIHBpY2sgY29udHJhc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlOiAwICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZXMgdXNlZCBmb3IgY29sb3JzXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWdsb2JhbC1zdHlsZXMge1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW5vcm1hbGl6ZTtcblxuICAvLyBUaGVzZSBzdHlsZXMgYXJlIGFwcGxpZWQgdG8gYSA8bWV0YT4gdGFnLCB3aGljaCBpcyByZWFkIGJ5IHRoZSBGb3VuZGF0aW9uIEphdmFTY3JpcHRcbiAgLmZvdW5kYXRpb24tbXEge1xuICAgIGZvbnQtZmFtaWx5OiAnI3stemYtYnAtc2VyaWFsaXplKCRicmVha3BvaW50cyl9JztcbiAgfVxuXG4gIGh0bWwge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIFNldCBib3gtc2l6aW5nIGdsb2JhbGx5IHRvIGhhbmRsZSBwYWRkaW5nIGFuZCBib3JkZXIgd2lkdGhzXG4gICosXG4gICo6OmJlZm9yZSxcbiAgKjo6YWZ0ZXIge1xuICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBEZWZhdWx0IGJvZHkgc3R5bGVzXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgQGlmICgkYm9keS1zYWZlLXBhZGRpbmcpIHtcbiAgICAgIC8vIHVzaW5nIGVudmlyb25tZW50IHZhcmlhYmxlcyB0byBhY2NvdW50IGZvciBub24tcmVjdGFuZ3VsYXIgZGlzcGxheXMgZS5nLiBwaG9uZXMgd2l0aCBub3RjaGVzXG4gICAgICBwYWRkaW5nLXRvcDogZW52KHNhZmUtYXJlYS1pbnNldC10b3ApO1xuICAgICAgcGFkZGluZy1yaWdodDogZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCk7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogZW52KHNhZmUtYXJlYS1pbnNldC1ib3R0b20pO1xuICAgICAgcGFkZGluZy1sZWZ0OiBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpO1xuICAgIH1cblxuICAgIGJhY2tncm91bmQ6ICRib2R5LWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG4gICAgQGlmICgkYm9keS1hbnRpYWxpYXNlZCkge1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgLy8gR3JpZCBkZWZhdWx0cyB0byBnZXQgaW1hZ2VzIGFuZCBlbWJlZHMgdG8gd29yayBwcm9wZXJseVxuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbiAgfVxuXG4gIC8vIE1ha2Ugc3VyZSB0ZXh0YXJlYSB0YWtlcyBvbiBoZWlnaHQgYXV0b21hdGljYWxseVxuICB0ZXh0YXJlYSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBNYWtlIHNlbGVjdCBlbGVtZW50cyBhcmUgMTAwJSB3aWR0aCBieSBkZWZhdWx0XG4gIHNlbGVjdCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gIC8vIFN0eWxlcyBHb29nbGUgTWFwcyBhbmQgTWFwUXVlc3QgZW1iZWRzIHByb3Blcmx5XG4gIC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8taWRzXG4gIC5tYXBfY2FudmFzLFxuICAubXFhLWRpc3BsYXkge1xuICAgIGltZyxcbiAgICBlbWJlZCxcbiAgICBvYmplY3Qge1xuICAgICAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgPGJ1dHRvbj4gc3R5bGVzIGNyZWF0ZWQgYnkgbW9zdCBicm93c2Vyc1xuICBidXR0b24ge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGN1cnNvcjogJGdsb2JhbC1idXR0b24tY3Vyc29yO1xuICB9XG5cbiAgLy8gUHJldmVudCB0ZXh0IG92ZXJmbG93IG9uIHByZVxuICBwcmUge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXHJcbi8vICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG4vL1xyXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XHJcbi8vXHJcbi8vICAgMS4gR2xvYmFsXHJcbi8vICAgMi4gQnJlYWtwb2ludHNcclxuLy8gICAzLiBUaGUgR3JpZFxyXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxyXG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xyXG4vLyAgIDYuIEFiaWRlXHJcbi8vICAgNy4gQWNjb3JkaW9uXHJcbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcclxuLy8gICA5LiBCYWRnZVxyXG4vLyAgMTAuIEJyZWFkY3J1bWJzXHJcbi8vICAxMS4gQnV0dG9uXHJcbi8vICAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vICAxMy4gQ2FsbG91dFxyXG4vLyAgMTQuIENhcmRcclxuLy8gIDE1LiBDbG9zZSBCdXR0b25cclxuLy8gIDE2LiBEcmlsbGRvd25cclxuLy8gIDE3LiBEcm9wZG93blxyXG4vLyAgMTguIERyb3Bkb3duIE1lbnVcclxuLy8gIDE5LiBGb3Jtc1xyXG4vLyAgMjAuIExhYmVsXHJcbi8vICAyMS4gTWVkaWEgT2JqZWN0XHJcbi8vICAyMi4gTWVudVxyXG4vLyAgMjMuIE1ldGVyXHJcbi8vICAyNC4gT2ZmLWNhbnZhc1xyXG4vLyAgMjUuIE9yYml0XHJcbi8vICAyNi4gUGFnaW5hdGlvblxyXG4vLyAgMjcuIFByb2dyZXNzIEJhclxyXG4vLyAgMjguIFJlc3BvbnNpdmUgRW1iZWRcclxuLy8gIDI5LiBSZXZlYWxcclxuLy8gIDMwLiBTbGlkZXJcclxuLy8gIDMxLiBTd2l0Y2hcclxuLy8gIDMyLiBUYWJsZVxyXG4vLyAgMzMuIFRhYnNcclxuLy8gIDM0LiBUaHVtYm5haWxcclxuLy8gIDM1LiBUaXRsZSBCYXJcclxuLy8gIDM2LiBUb29sdGlwXHJcbi8vICAzNy4gVG9wIEJhclxyXG5cclxuQGltcG9ydCAndXRpbC91dGlsJztcclxuXHJcbi8vIDEuIEdsb2JhbFxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKTtcclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjU7XHJcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcclxuICBwcmltYXJ5OiAjMTc3OWJhLFxyXG4gIHNlY29uZGFyeTogIzc2NzY3NixcclxuICBzdWNjZXNzOiAjM2FkYjc2LFxyXG4gIHdhcm5pbmc6ICNmZmFlMDAsXHJcbiAgYWxlcnQ6ICNjYzRiMzcsXHJcbik7XHJcbiRsaWdodC1ncmF5OiAjZTZlNmU2O1xyXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2E7XHJcbiRkYXJrLWdyYXk6ICM4YThhOGE7XHJcbiRibGFjazogIzBhMGEwYTtcclxuJHdoaXRlOiAjZmVmZWZlO1xyXG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjaztcclxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcclxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XHJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtO1xyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW07XHJcbiRnbG9iYWwtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xyXG4kZ2xvYmFsLXdlaWdodC1ib2xkOiBib2xkO1xyXG4kZ2xvYmFsLXJhZGl1czogMDtcclxuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xyXG4kZ2xvYmFsLWZsZXhib3g6IGZhbHNlO1xyXG4kcHJpbnQtdHJhbnNwYXJlbnQtYmFja2dyb3VuZHM6IHRydWU7XHJcblxyXG5AaW5jbHVkZSBhZGQtZm91bmRhdGlvbi1jb2xvcnM7XHJcblxyXG4vLyAyLiBCcmVha3BvaW50c1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJyZWFrcG9pbnRzOiAoXHJcbiAgc21hbGw6IDAsXHJcbiAgbWVkaXVtOiA2NDBweCxcclxuICBsYXJnZTogMTAyNHB4LFxyXG4gIHhsYXJnZTogMTIwMHB4LFxyXG4gIHh4bGFyZ2U6IDE0NDBweFxyXG4pO1xyXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2U7XHJcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpO1xyXG5cclxuLy8gMy4gVGhlIEdyaWRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGdyaWQtY29sdW1uLWNvdW50OiAxMjtcclxuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxyXG4gIHNtYWxsOiAyMHB4LFxyXG4gIG1lZGl1bTogMzBweCxcclxuKTtcclxuJGdyaWQtY29sdW1uLWFsaWduLWVkZ2U6IHRydWU7XHJcbiRibG9jay1ncmlkLW1heDogODtcclxuXHJcbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xyXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xyXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdDtcclxuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XHJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4kaGVhZGVyLXN0eWxlczogKFxyXG4gIHNtYWxsOiAoXHJcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcclxuICAgICdoMic6ICgnZm9udC1zaXplJzogMjApLFxyXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXHJcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcclxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMTcpLFxyXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXHJcbiAgKSxcclxuICBtZWRpdW06IChcclxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxyXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXHJcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDMxKSxcclxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxyXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXHJcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcclxuICApLFxyXG4pO1xyXG4kaGVhZGVyLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XHJcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42O1xyXG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IDFyZW07XHJcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcclxuJGNvZGUtY29sb3I6ICRibGFjaztcclxuJGNvZGUtZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XHJcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XHJcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kY29kZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XHJcbiRjb2RlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNSAxKTtcclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xyXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI6IG5vbmU7XHJcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcclxuJGhyLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGhyLW1hcmdpbjogcmVtLWNhbGMoMjApIGF1dG87XHJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcclxuJGxpc3QtbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xyXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xyXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW07XHJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbTtcclxuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XHJcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcclxuJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xyXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJGJsb2NrcXVvdGUtcGFkZGluZzogcmVtLWNhbGMoOSAyMCAwIDE5KTtcclxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRjaXRlLXBzZXVkby1jb250ZW50OiAnXFwyMDE0IFxcMDAyMCc7XHJcbiRrZXlzdHJva2UtZm9udDogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTtcclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrO1xyXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKTtcclxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xyXG5cclxuLy8gNS4gVHlwb2dyYXBoeSBIZWxwZXJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGxlYWQtZm9udC1zaXplOiAkZ2xvYmFsLWZvbnQtc2l6ZSAqIDEuMjU7XHJcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcclxuJHN1YmhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XHJcbiRzdWJoZWFkZXItY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJHN1YmhlYWRlci1tYXJnaW4tdG9wOiAwLjJyZW07XHJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xyXG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcclxuXHJcbi8vIDYuIEFiaWRlXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kYWJpZGUtaW5wdXRzOiB0cnVlO1xyXG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xyXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpO1xyXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XHJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcclxuJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG5cclxuLy8gNy4gQWNjb3JkaW9uXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG5cclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRhY2NvcmRpb24tcGx1c21pbnVzOiB0cnVlO1xyXG4kYWNjb3JkaW9uLXRpdGxlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xyXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRhY2NvcmRpb24taXRlbS1wYWRkaW5nOiAxLjI1cmVtIDFyZW07XHJcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDguIEFjY29yZGlvbiBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kYWNjb3JkaW9ubWVudS1hcnJvd3M6IHRydWU7XHJcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xyXG5cclxuLy8gOS4gQmFkZ2VcclxuLy8gLS0tLS0tLS1cclxuXHJcbiRiYWRnZS1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XHJcbiRiYWRnZS1jb2xvci1hbHQ6ICRibGFjaztcclxuJGJhZGdlLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XHJcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbTtcclxuJGJhZGdlLWZvbnQtc2l6ZTogMC42cmVtO1xyXG5cclxuLy8gMTAuIEJyZWFkY3J1bWJzXHJcbi8vIC0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJGJyZWFkY3J1bWJzLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XHJcbiRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XHJcbiRicmVhZGNydW1icy1pdGVtLWNvbG9yLWN1cnJlbnQ6ICRibGFjaztcclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xyXG4kYnJlYWRjcnVtYnMtaXRlbS11cHBlcmNhc2U6IHRydWU7XHJcbiRicmVhZGNydW1icy1pdGVtLXNsYXNoOiB0cnVlO1xyXG5cclxuLy8gMTEuIEJ1dHRvblxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XHJcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcclxuJGJ1dHRvbi1maWxsOiBzb2xpZDtcclxuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xyXG4kYnV0dG9uLWNvbG9yOiAkd2hpdGU7XHJcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XHJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGJ1dHRvbi1zaXplczogKFxyXG4gIHRpbnk6IDAuNnJlbSxcclxuICBzbWFsbDogMC43NXJlbSxcclxuICBkZWZhdWx0OiAwLjlyZW0sXHJcbiAgbGFyZ2U6IDEuMjVyZW0sXHJcbik7XHJcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xyXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAtMjAlO1xyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCU7XHJcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XHJcblxyXG4vLyAxMi4gQnV0dG9uIEdyb3VwXHJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XHJcbiRidXR0b25ncm91cC1zcGFjaW5nOiAxcHg7XHJcbiRidXR0b25ncm91cC1jaGlsZC1zZWxlY3RvcjogJy5idXR0b24nO1xyXG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcclxuJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoOiB0cnVlO1xyXG5cclxuLy8gMTMuIENhbGxvdXRcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSU7XHJcbiRjYWxsb3V0LWJvcmRlcjogMXB4IHNvbGlkIHJnYmEoJGJsYWNrLCAwLjI1KTtcclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xyXG4kY2FsbG91dC1wYWRkaW5nOiAxcmVtO1xyXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZDtcclxuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhbGxvdXQtbGluay10aW50OiAzMCU7XHJcblxyXG4vLyAxNC4gQ2FyZFxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcclxuJGNhcmQtc2hhZG93OiBub25lO1xyXG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kY2FyZC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xyXG5cclxuLy8gMTUuIENsb3NlIEJ1dHRvblxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kY2xvc2VidXR0b24tcG9zaXRpb246IHJpZ2h0IHRvcDtcclxuJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsOiAoXHJcbiAgc21hbGw6IDAuNjZyZW0sXHJcbiAgbWVkaXVtOiAxcmVtLFxyXG4pO1xyXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXHJcbiAgc21hbGw6IDAuMzNlbSxcclxuICBtZWRpdW06IDAuNXJlbSxcclxuKTtcclxuJGNsb3NlYnV0dG9uLXNpemU6IChcclxuICBzbWFsbDogMS41ZW0sXHJcbiAgbWVkaXVtOiAyZW0sXHJcbik7XHJcbiRjbG9zZWJ1dHRvbi1saW5laGVpZ2h0OiAxO1xyXG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XHJcbiRjbG9zZWJ1dHRvbi1jb2xvci1ob3ZlcjogJGJsYWNrO1xyXG5cclxuLy8gMTYuIERyaWxsZG93blxyXG4vLyAtLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XHJcbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlO1xyXG4kZHJpbGxkb3duLWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcclxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHg7XHJcbiRkcmlsbGRvd24tYmFja2dyb3VuZDogJHdoaXRlO1xyXG5cclxuLy8gMTcuIERyb3Bkb3duXHJcbi8vIC0tLS0tLS0tLS0tLVxyXG5cclxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XHJcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xyXG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xyXG4kZHJvcGRvd24td2lkdGg6IDMwMHB4O1xyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuJGRyb3Bkb3duLXNpemVzOiAoXHJcbiAgdGlueTogMTAwcHgsXHJcbiAgc21hbGw6IDIwMHB4LFxyXG4gIGxhcmdlOiA0MDBweCxcclxuKTtcclxuXHJcbi8vIDE4LiBEcm9wZG93biBNZW51XHJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvcjtcclxuJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplOiA2cHg7XHJcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweDtcclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiRkcm9wZG93bm1lbnUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG5cclxuLy8gMTkuIEZvcm1zXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XHJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcclxuJGZvcm0tc3BhY2luZzogcmVtLWNhbGMoMTYpO1xyXG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xyXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljO1xyXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XHJcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XHJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XHJcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2s7XHJcbiRmb3JtLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xyXG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xyXG4kZm9ybS1sYWJlbC1saW5lLWhlaWdodDogMS44O1xyXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcclxuJHNlbGVjdC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kaW5wdXQtY29sb3I6ICRibGFjaztcclxuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XHJcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdDtcclxuJGlucHV0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xyXG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcclxuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZm9jdXM6ICR3aGl0ZTtcclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xyXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAxcHggc29saWQgJGRhcmstZ3JheTtcclxuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpO1xyXG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XHJcbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcclxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcclxuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjAuIExhYmVsXHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xyXG4kbGFiZWwtY29sb3I6ICR3aGl0ZTtcclxuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xyXG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtO1xyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XHJcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjEuIE1lZGlhIE9iamVjdFxyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXHJcblxyXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCU7XHJcblxyXG4vLyAyMi4gTWVudVxyXG4vLyAtLS0tLS0tLVxyXG5cclxuJG1lbnUtbWFyZ2luOiAwO1xyXG4kbWVudS1tYXJnaW4tbmVzdGVkOiAxcmVtO1xyXG4kbWVudS1pdGVtLXBhZGRpbmc6IDAuN3JlbSAxcmVtO1xyXG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xyXG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XHJcbiRtZW51LWljb24tc3BhY2luZzogMC4yNXJlbTtcclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcclxuJG1lbnUtYm9yZGVyOiAkbGlnaHQtZ3JheTtcclxuXHJcbi8vIDIzLiBNZXRlclxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiRtZXRlci1oZWlnaHQ6IDFyZW07XHJcbiRtZXRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtbWVkaXVtOiAkd2FybmluZy1jb2xvcjtcclxuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XHJcblxyXG4vLyAyNC4gT2ZmLWNhbnZhc1xyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuLy8kb2ZmY2FudmFzLXNpemU6IDI1MHB4O1xyXG4vLyRvZmZjYW52YXMtdmVydGljYWwtc2l6ZTogMjUwcHg7XHJcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IDI1MHB4O1xyXG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XHJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDE7XHJcbiRvZmZjYW52YXMtb3ZlcmxhcC16aW5kZXg6IDEwO1xyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDE7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXM7XHJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XHJcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xyXG4kb2ZmY2FudmFzLWV4aXQtYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuMjUpO1xyXG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xyXG5cclxuLy8gMjUuIE9yYml0XHJcbi8vIC0tLS0tLS0tLVxyXG5cclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XHJcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW46IDAuMXJlbTtcclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XHJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xyXG4kb3JiaXQtY2FwdGlvbi1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcclxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XHJcbiRvcmJpdC1jb250cm9sLXBhZGRpbmc6IDFyZW07XHJcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XHJcblxyXG4vLyAyNi4gUGFnaW5hdGlvblxyXG4vLyAtLS0tLS0tLS0tLS0tLVxyXG5cclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCk7XHJcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMyAxMCk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XHJcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XHJcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheTtcclxuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcclxuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcclxuJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbTogZmFsc2U7XHJcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcclxuXHJcbi8vIDI3LiBQcm9ncmVzcyBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLS0tLVxyXG5cclxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcclxuJHByb2dyZXNzLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xyXG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRwcm9ncmVzcy1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMjguIFJlc3BvbnNpdmUgRW1iZWRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcclxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXHJcbiAgZGVmYXVsdDogNCBieSAzLFxyXG4gIHdpZGVzY3JlZW46IDE2IGJ5IDksXHJcbik7XHJcblxyXG4vLyAyOS4gUmV2ZWFsXHJcbi8vIC0tLS0tLS0tLS1cclxuXHJcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XHJcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xyXG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG4kcmV2ZWFsLXppbmRleDogMTAwNTtcclxuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcclxuXHJcbi8vIDMwLiBTbGlkZXJcclxuLy8gLS0tLS0tLS0tLVxyXG5cclxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xyXG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xyXG4kc2xpZGVyLWhlaWdodDogMC41cmVtO1xyXG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xyXG4kc2xpZGVyLWhhbmRsZS1oZWlnaHQ6IDEuNHJlbTtcclxuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcclxuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XHJcbiRzbGlkZXItb3BhY2l0eS1kaXNhYmxlZDogMC4yNTtcclxuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMzEuIFN3aXRjaFxyXG4vLyAtLS0tLS0tLS0tXHJcblxyXG4kc3dpdGNoLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XHJcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xyXG4kc3dpdGNoLWhlaWdodC10aW55OiAxLjVyZW07XHJcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcclxuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kc3dpdGNoLXBhZGRsZS1vZmZzZXQ6IDAuMjVyZW07XHJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XHJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcclxuXHJcbi8vIDMyLiBUYWJsZVxyXG4vLyAtLS0tLS0tLS1cclxuXHJcbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWJsZS1jb2xvci1zY2FsZTogNSU7XHJcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xyXG4kdGFibGUtaG92ZXItc2NhbGU6IDIlO1xyXG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XHJcbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlO1xyXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcclxuJHRhYmxlLXN0cmlwZTogZXZlbjtcclxuJHRhYmxlLWhlYWQtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSAvIDIpO1xyXG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xyXG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcclxuJHRhYmxlLWZvb3Qtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWZvb3QtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcclxuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcclxuJHNob3ctaGVhZGVyLWZvci1zdGFja2VkOiBmYWxzZTtcclxuXHJcbi8vIDMzLiBUYWJzXHJcbi8vIC0tLS0tLS0tXHJcblxyXG4kdGFiLW1hcmdpbjogMDtcclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XHJcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdGFiLWJhY2tncm91bmQtYWN0aXZlOiAkbGlnaHQtZ3JheTtcclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xyXG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XHJcbiR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkd2hpdGU7XHJcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcclxuJHRhYi1leHBhbmQtbWF4OiA2O1xyXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlO1xyXG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcclxuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xyXG4kdGFiLWNvbnRlbnQtcGFkZGluZzogMXJlbTtcclxuXHJcbi8vIDM0LiBUaHVtYm5haWxcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRodW1ibmFpbC1ib3JkZXI6IHNvbGlkIDRweCAkd2hpdGU7XHJcbiR0aHVtYm5haWwtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XHJcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XHJcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xyXG4kdGh1bWJuYWlsLXRyYW5zaXRpb246IGJveC1zaGFkb3cgMjAwbXMgZWFzZS1vdXQ7XHJcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcclxuXHJcbi8vIDM1LiBUaXRsZSBCYXJcclxuLy8gLS0tLS0tLS0tLS0tLVxyXG5cclxuJHRpdGxlYmFyLWJhY2tncm91bmQ6ICRibGFjaztcclxuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XHJcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XHJcbiR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0OiBib2xkO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xyXG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xyXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xyXG5cclxuLy8gMzYuIFRvb2x0aXBcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xyXG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRkYXJrLWdyYXk7XHJcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcclxuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcclxuJHRvb2x0aXAtcGFkZGluZzogMC43NXJlbTtcclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xyXG4kdG9vbHRpcC1waXAtd2lkdGg6IDAuNzVyZW07XHJcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xyXG5cclxuLy8gMzcuIFRvcCBCYXJcclxuLy8gLS0tLS0tLS0tLS1cclxuXHJcbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xyXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xyXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kO1xyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xyXG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcclxuJHRvcGJhci11bnN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcclxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmVkICAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJyZWRcIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGdyZWVuIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiZ3JlZW5cIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGJsdWUgIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiYmx1ZVwiLCAkc3BhY2U6IHJnYikpO1xuICAkcmdiICAgOiAncmdiJTI4I3skcmVkfSwgI3skZ3JlZW59LCAjeyRibHVlfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+PC9wb2x5Z29uPjwvc3ZnPicpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBAaWYgY29sb3IuY2hhbm5lbCgkY29sb3IsIFwibGlnaHRuZXNzXCIsICRzcGFjZTogaHNsKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKGRpdmlkZSgxLCAkaSkpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gUmVtb3ZlcyB0aGUgZm9jdXMgcmluZyBhcm91bmQgYW4gZWxlbWVudCB3aGVuIGEgbW91c2UgaW5wdXQgaXMgZGV0ZWN0ZWQuXG5AbWl4aW4gZGlzYWJsZS1tb3VzZS1vdXRsaW5lIHtcbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddICYge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgc3RpbGwgYWNjZXNzaWJsZSB0byBrZXlib2FyZHMgYW5kIGFzc2lzdGl2ZSBkZXZpY2VzLlxuLy8vIEBsaW5rIGh0dHA6Ly9zbm9vay5jYS9hcmNoaXZlcy9odG1sX2FuZF9jc3MvaGlkaW5nLWNvbnRlbnQtZm9yLWFjY2Vzc2liaWxpdHkgSGlkaW5nIENvbnRlbnQgZm9yIEFjY2Vzc2liaWxpdHlcbi8vLyBAbGluayBodHRwOi8vaHVnb2dpcmF1ZGVsLmNvbS8yMDE2LzEwLzEzL2Nzcy1oaWRlLWFuZC1zZWVrL1xuLy8vXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZShcbiAgJGVuZm9yY2U6IHRydWVcbikge1xuICAkaW1wb3J0YW50OiBpZigkZW5mb3JjZSwgJyFpbXBvcnRhbnQnLCBudWxsKTtcblxuICBwb3NpdGlvbjogYWJzb2x1dGUgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IDFweCAjeyRpbXBvcnRhbnR9O1xuICBwYWRkaW5nOiAwICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiBoaWRkZW4gI3skaW1wb3J0YW50fTtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICN7JGltcG9ydGFudH07XG4gIGJvcmRlcjogMCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gUmV2ZXJzZXMgdGhlIENTUyBvdXRwdXQgY3JlYXRlZCBieSB0aGUgYGVsZW1lbnQtaW52aXNpYmxlKClgIG1peGluLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGVuZm9yY2UgLSBJZiBgdHJ1ZWAsIHVzZSBgIWltcG9ydGFudGAgb24gYXBwbGllZCBwcm9wZXJ0aWVzXG5AbWl4aW4gZWxlbWVudC1pbnZpc2libGUtb2ZmKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBzdGF0aWMgI3skaW1wb3J0YW50fTtcbiAgd2lkdGg6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgaGVpZ2h0OiBhdXRvICN7JGltcG9ydGFudH07XG4gIG92ZXJmbG93OiB2aXNpYmxlICN7JGltcG9ydGFudH07XG4gIGNsaXA6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAjeyRpbXBvcnRhbnR9O1xufVxuXG4vLy8gVmVydGljYWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiB2ZXJ0aWNhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgY2VudGVycyB0aGUgZWxlbWVudCBpbnNpZGUgb2YgaXRzIGZpcnN0IG5vbi1zdGF0aWMgcGFyZW50LFxuLy8vIEBsaW5rIGh0dHA6Ly93d3cuc2l0ZXBvaW50LmNvbS9jZW50ZXJpbmctd2l0aC1zYXNzLyBDZW50ZXJpbmcgV2l0aCBTYXNzXG5AbWl4aW4gaG9yaXpvbnRhbC1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuXG4vLy8gQWJzb2x1dGVseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBhYnNvbHV0ZS1jZW50ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xufVxuXG4vLy8gSXRlcmF0ZXMgdGhyb3VnaCBicmVha3BvaW50cyBkZWZpbmVkIGluIGAkYnJlYWtwb2ludC1jbGFzc2VzYCBhbmQgcHJpbnRzIHRoZSBDU1MgaW5zaWRlIHRoZSBtaXhpbiBhdCBlYWNoIGJyZWFrcG9pbnQncyBtZWRpYSBxdWVyeS4gVXNlIHRoaXMgd2l0aCB0aGUgZ3JpZCwgb3IgYW55IG90aGVyIGNvbXBvbmVudCB0aGF0IGhhcyByZXNwb25zaXZlIGNsYXNzZXMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRzbWFsbCBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBza2lwIHRoZSBgc21hbGxgIGJyZWFrcG9pbnQuIFVzZSB0aGlzIHdpdGggY29tcG9uZW50cyB0aGF0IGRvbid0IHByZWZpeCBjbGFzc2VzIHdpdGggYHNtYWxsLWAsIG9ubHkgYG1lZGl1bS1gIGFuZCB1cC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhdXRvLWluc2VydC1icmVha3BvaW50cyBbdHJ1ZV0gLSBJZiBgZmFsc2VgLCB0aGUgbWl4aW4gd2lsbCBpdGVyYXRlIG92ZXIgYnJlYWtwb2ludHMgd2l0aG91dCBkb2luZyB0aGUgbWVkaWEgcXVlcnkgaXRzZWxmLiBVc2VmdWwgZm9yIG1vcmUgY29tcGxleCBtZWRpYSBxdWVyeSBnZW5lcmF0aW9uIGFzIGluIHRoZSBtYXJnaW4gZ3JpZC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50KFxuICAkc21hbGw6IHRydWUsXG4gICRhdXRvLWluc2VydC1icmVha3BvaW50czogdHJ1ZVxuKSB7XG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oYXV0bywgLXpmLWJvb2woJHNtYWxsKSwgLXpmLWJvb2woJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzKSkge1xuICAgIEBjb250ZW50XG4gIH07XG59XG5cbi8vLyBJdGVyYXRlcyB3aXRoIGBAY29udGVudGAgdGhyb3VnaCB0aGUgZ2l2ZW4gbGlzdCBvZiBicmVha3BvaW50cyBgJGJyZWFrcG9pbnRzYC5cbi8vL1xuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfExpc3R9ICRicmVha3BvaW50cyBbYXV0b10gLSBCcmVha3BvaW50cyB0byBpdGVyYXRlcyBvbi4gSXQgY2FuIGJlIGEgYnJlYWtwb2ludCBuYW1lLCBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIGBhdXRvYCBmb3IgYWxsIGJyZWFrcG9pbnRzLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbnxOdWxsfSAkemVyby1icmVha3BvaW50IFtudWxsXSAtIFdoZXRoZXIgdGhlIHplcm8tYnJlYWtwb2ludCAob2Z0ZW4gYHNtYWxsYCkgbXVzdCBiZSBpbmNsdWRlZC4gSWYgYHRydWVgLCBpdCB3aWxsIGFsd2F5cyBiZSBhZGRlZCB0byB0aGUgbGlzdCBpZiBub3QgYWxyZWFkeSB0aGVyZS4gSWYgYGZhbHNlYCwgaXQgd2lsbCBhbHdheXMgYmUgcmVtb3ZlZC4gRG9lcyBub3RoaW5nIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtCb29sZWFufEtleXdvcmR9ICRtZWRpYS1xdWVyaWVzIFt0cnVlXSAtIFdoZXRoZXIgbWVkaWEtcXVlcmllcyBtdXN0IGJlIGdlbmVyYXRlZC4gSWYgYGZvci1saXN0c2AsIG9ubHkgZ2VuZXJhdGUgbWVkaWEtcXVlcmllcyB3aGVuIGAkYnJlYWtwb2ludHNgIGlzIGEgbGlzdC5cbkBtaXhpbiAtemYtZWFjaC1icmVha3BvaW50LWluKFxuICAkYnJlYWtwb2ludHM6IGF1dG8sXG4gICR6ZXJvLWJyZWFrcG9pbnQ6IG51bGwsXG4gICRtZWRpYS1xdWVyaWVzOiB0cnVlXG4pIHtcbiAgJC1saXN0OiAoKTtcbiAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IHRydWU7XG5cbiAgLy8gUmV0cmlldmUgdGhlIGxpc3Qgb2YgYnJlYWtwb2ludChzKSB0byBpdGVyYXRlIG9uLlxuICBAaWYgJGJyZWFrcG9pbnRzID09IGF1dG8ge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnQtY2xhc3NlcztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ2xpc3QnIHtcbiAgICAkLWxpc3Q6ICRicmVha3BvaW50cztcbiAgfVxuICBAZWxzZSBpZiB0eXBlLW9mKCRicmVha3BvaW50cykgPT0gJ3N0cmluZycge1xuICAgICQtbGlzdDogKCRicmVha3BvaW50cyk7XG4gICAgJC1icmVha3BvaW50cy1pcy1hLWxpc3Q6IGZhbHNlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ1dyb25nIHN5bnRheCBmb3IgXCIkYnJlYWtwb2ludHNcIiBpbiBcIi16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oKVwiLiBHb3QgXCIjeyRicmVha3BvaW50c31cIiAoI3t0eXBlLW9mKCRicmVha3BvaW50cyl9KS4gRXhwZWN0ZWQgYSBicmVha3BvaW50IG5hbWUsIGEgbGlzdCBvZiBicmVha3BvaW50cyBvciBcImF1dG9cIic7XG4gIH1cblxuICAvLyBBZGQgb3IgcmVtb3ZlIHRoZSB6ZXJvIGJyZWFrcG9pbnQgYWNjb3JkaW5nIHRvIGAkemVyby1icmVha3BvaW50YFxuICBAaWYgJHplcm8tYnJlYWtwb2ludCA9PSB0cnVlIHtcbiAgICAkLWxpc3Q6IGpvaW4oKCQtemYtemVyby1icmVha3BvaW50KSwgc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpKTtcbiAgfVxuICBAZWxzZSBpZiAkemVyby1icmVha3BvaW50ID09IGZhbHNlIHtcbiAgICAkLWxpc3Q6IHNsLXJlbW92ZSgkLWxpc3QsICQtemYtemVyby1icmVha3BvaW50KTtcbiAgfVxuXG4gIC8vIEl0ZXJhdGUgb24gYnJlYWtwb2ludChzKVxuICBAZWFjaCAkYnAgaW4gJC1saXN0IHtcbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG4gICAgQGlmIGdsb2JhbC12YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIHtcbiAgICAgICRvbGQtemYtc2l6ZTogJC16Zi1zaXplO1xuICAgIH1cbiAgICAkLXpmLXNpemU6ICRicCAhZ2xvYmFsO1xuXG4gICAgQGlmICgkbWVkaWEtcXVlcmllcyA9PSB0cnVlIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgKiAwLjUgIWRlZmF1bHQ7XG5cbi8vLyBCb3ggc2hhZG93IGluc2lkZSB0ZXh0IGlucHV0cyB3aGVuIG5vdCBmb2N1c2VkLlxuLy8vIEB0eXBlIFNoYWRvd1xuJGlucHV0LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoJGJsYWNrLCAwLjEpICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBvdXRzaWRlIHRleHQgaW5wdXRzIHdoZW4gZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQ3Vyc29yIHRvIHVzZSB3aGVuIGhvdmVyaW5nIG92ZXIgYSBkaXNhYmxlZCB0ZXh0IGlucHV0LlxuLy8vIEB0eXBlIEN1cnNvclxuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vLyBQcm9wZXJ0aWVzIHRvIHRyYW5zaXRpb24gb24gdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0ICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlcyB0aGUgdXAvZG93biBidXR0b25zIHRoYXQgQ2hyb21lIGFuZCBGaXJlZm94IGFkZCB0byBgPGlucHV0IHR5cGU9J251bWJlcic+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUmFkaXVzIGZvciB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBmb3IgZm9ybSBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmb3JtLWJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAkaW5wdXQtcGFkZGluZztcblxuICBib3JkZXI6ICRpbnB1dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kO1xuICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93O1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tdGV4dCB7XG4gIC8vIFRleHQgaW5wdXRzXG4gICN7dGV4dC1pbnB1dHMoKX0sXG4gIHRleHRhcmVhIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIEBpbmNsdWRlIGZvcm0tZWxlbWVudDtcbiAgfVxuXG4gIC8vIFRleHQgYXJlYXNcbiAgdGV4dGFyZWEge1xuICAgIG1heC13aWR0aDogMTAwJTtcblxuICAgICZbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgLy8gRGlzYWJsZWQvcmVhZG9ubHkgc3RhdGVcbiAgICAmOmRpc2FibGVkLFxuICAgICZbcmVhZG9ubHldIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWRpc2FibGVkO1xuICAgICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IHN0eWxlcyBvbiBidXR0b24tbGlrZSBpbnB1dHNcbiAgW3R5cGU9J3N1Ym1pdCddLFxuICBbdHlwZT0nYnV0dG9uJ10ge1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogJGZvcm0tYnV0dG9uLXJhZGl1cztcbiAgfVxuXG4gIC8vIFJlc2V0IE5vcm1hbGl6ZSBzZXR0aW5nIGNvbnRlbnQtYm94IHRvIHNlYXJjaCBlbGVtZW50c1xuICBpbnB1dFt0eXBlPSdzZWFyY2gnXSB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICAvLyBOdW1iZXIgaW5wdXQgc3R5bGVzXG4gIFt0eXBlPSdudW1iZXInXSB7XG4gICAgQGlmIG5vdCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuXG4gICAgICAmOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgICAgJjo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFBsYWNlaG9sZGVyIHRleHRcbiAgOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1jb2xvcjtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBsaW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAqIDAuNSArIHJlbS1jYWxjKCRpbnB1dC1ib3JkZXItd2lkdGgpKSAwO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWxhYmVsIHtcbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm0tbGFiZWw7XG5cbiAgICAmLm1pZGRsZSB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWxhYmVsLW1pZGRsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaGVscHRleHQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVscHRleHQtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc3R5bGUgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaGVscHRleHQtZm9udC1zdHlsZTogaXRhbGljICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWhlbHB0ZXh0IHtcbiAgLmhlbHAtdGV4dCB7XG4gICAgJG1hcmdpbi10b3A6ICgkZm9ybS1zcGFjaW5nICogMC41KSAqIC0xO1xuXG4gICAgbWFyZ2luLXRvcDogJG1hcmdpbi10b3A7XG4gICAgZm9udC1zaXplOiAkaGVscHRleHQtZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6ICRoZWxwdGV4dC1mb250LXN0eWxlO1xuICAgIGNvbG9yOiAkaGVscHRleHQtY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQ29sb3Igb2YgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBhcm91bmQgbGFiZWxzIHByZWZpeGVkIHRvIGFuIGlucHV0LlxuLy8vIEB0eXBlIEJvcmRlclxuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0L3JpZ2h0IHBhZGRpbmcgb2YgYW4gcHJlL3Bvc3RmaXhlZCBpbnB1dCBsYWJlbFxuJGlucHV0LXByZWZpeC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXByZXBvc3RmaXgge1xuICAkaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSAqICRpbnB1dC1saW5lLWhlaWdodCkgKyAoZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICd0b3AnKSArIGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAnYm90dG9tJykpIC0gcmVtLWNhbGMoMSk7XG5cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIHRhYmxlKTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB9XG5cbiAgICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiA6bGFzdC1jaGlsZCB7XG4gICAgICAmLCAmLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgICAgICBib3JkZXItcmFkaXVzOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgJGlucHV0LXJhZGl1cyAwIDAgJGlucHV0LXJhZGl1cywgMCAkaW5wdXQtcmFkaXVzICRpbnB1dC1yYWRpdXMgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJWlucHV0LWdyb3VwLWNoaWxkIHtcbiAgICBtYXJnaW46IDA7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1sYWJlbCB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZzogMCAkaW5wdXQtcHJlZml4LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAkaW5wdXQtcHJlZml4LWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtcHJlZml4LWJhY2tncm91bmQ7XG5cbiAgICBjb2xvcjogJGlucHV0LXByZWZpeC1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXByZWZpeC1ib3JkZXIpIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtZmllbGQge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgemVyby11bml0XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBhLFxuICAgIGlucHV0LFxuICAgIGJ1dHRvbixcbiAgICBsYWJlbCB7XG4gICAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcblxuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICAgICAgfVxuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICAvLyBTcGVjaWZpY2l0eSBidW1wIG5lZWRlZCB0byBwcmV2ZW50IG92ZXJyaWRlIGJ5IGJ1dHRvbnNcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICAuaW5wdXQtZ3JvdXAtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYXJvdW5kIGN1c3RvbSBmaWVsZHNldHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kZmllbGRzZXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWFyZ2luIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgYmV0d2VlbiB0aGUgbGVnZW5kIHRleHQgYW5kIGZpZWxkc2V0IGJvcmRlci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKSAhZGVmYXVsdDtcblxuQG1peGluIGZpZWxkc2V0IHtcbiAgbWFyZ2luOiAkZmllbGRzZXQtbWFyZ2luO1xuICBwYWRkaW5nOiAkZmllbGRzZXQtcGFkZGluZztcbiAgYm9yZGVyOiAkZmllbGRzZXQtYm9yZGVyO1xuXG4gIGxlZ2VuZCB7XG4gICAgLy8gQ292ZXJzIHVwIHRoZSBmaWVsZHNldCdzIGJvcmRlciB0byBjcmVhdGUgYXJ0aWZpY2lhbCBwYWRkaW5nXG4gICAgbWFyZ2luOiAwO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IHJlbS1jYWxjKC0zKTtcbiAgICBwYWRkaW5nOiAkbGVnZW5kLXBhZGRpbmc7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1maWVsZHNldCB7XG4gIGZpZWxkc2V0IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXI6IDA7XG4gIH1cblxuICBsZWdlbmQge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nICogMC41O1xuICB9XG5cbiAgLmZpZWxkc2V0IHtcbiAgICBAaW5jbHVkZSBmaWVsZHNldDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGhlIGRyb3Bkb3duIHRyaWFuZ2xlIGluc2lkZSBzZWxlY3QgbWVudXMuIFNldCB0byBgdHJhbnNwYXJlbnRgIHRvIHJlbW92ZSBpdCBlbnRpcmVseS5cbi8vLyBAdHlwZSBDb2xvclxuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcmFkaXVzIGZvciBzZWxlY3QgbWVudXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tc2VsZWN0IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiB1bml0bGVzcy1jYWxjKCRpbnB1dC1saW5lLWhlaWdodCkpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkc2VsZWN0LXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHNlbGVjdC1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkaW5wdXQtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGlucHV0LWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1mb250LXdlaWdodDtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1jb2xvcjtcblxuICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gIH1cblxuICBAaWYgJHNlbGVjdC10cmlhbmdsZS1jb2xvciAhPSB0cmFuc3BhcmVudCB7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcblxuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gIH1cblxuICAvLyBGb2N1cyBzdGF0ZVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogJGlucHV0LWJvcmRlci1mb2N1cztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1mb2N1cztcbiAgICBib3gtc2hhZG93OiAkaW5wdXQtc2hhZG93LWZvY3VzO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgICAgdHJhbnNpdGlvbjogJGlucHV0LXRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgLy8gRGlzYWJsZWQgc3RhdGVcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ7XG4gICAgY3Vyc29yOiAkaW5wdXQtY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gICZbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxuICAmOm5vdChbbXVsdGlwbGVdKSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1zZWxlY3Qge1xuICBzZWxlY3Qge1xuICAgIEBpbmNsdWRlIGZvcm0tc2VsZWN0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWJpZGVcbi8vLy9cblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBpbnB1dHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWlucHV0czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgZXJyb3Igc3R5bGVzIHNob3VsZCBiZSBhZGRlZCB0byBsYWJlbHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFiaWRlLWxhYmVsczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgdG8gdXNlIGZvciBpbnZhbGlkIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1pbnZhbGlkOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdG8gdXNlIGZvciBsYWJlbHMgb2YgaW52YWxpZCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWVycm9yLWNvbG9yOiBnZXQtY29sb3IoYWxlcnQpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1lcnJvci1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIGZvcm0gZXJyb3IgdGV4dC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBvZiBhbiBpbnB1dCBmaWVsZCB0byBoYXZlIGFuIGVycm9yIHN0YXRlLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRhbGVydC1jb2xvcl0gLSBDb2xvciB0byB1c2UgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRiYWNrZ3JvdW5kLWxpZ2h0ZW4gWzEwJV0gLSBMaWdodG5lc3MgbGV2ZWwgb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG5AbWl4aW4gZm9ybS1pbnB1dC1lcnJvcihcbiAgJGJhY2tncm91bmQ6ICRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQsXG4gICRiYWNrZ3JvdW5kLWxpZ2h0ZW46IDEwJVxuKSB7XG4gICY6bm90KDpmb2N1cykge1xuICAgIGJvcmRlci1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRiYWNrZ3JvdW5kLCAkd2hpdGUsICRiYWNrZ3JvdW5kLWxpZ2h0ZW4pO1xuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBlcnJvciBzdHlsZXMgdG8gYSBmb3JtIGVsZW1lbnQsIHVzaW5nIHRoZSB2YWx1ZXMgaW4gdGhlIHNldHRpbmdzIGZpbGUuXG5AbWl4aW4gZm9ybS1lcnJvciB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIG1hcmdpbi10b3A6ICRmb3JtLXNwYWNpbmcgKiAtMC41O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuXG4gIGZvbnQtc2l6ZTogJGlucHV0LWVycm9yLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1mb250LXdlaWdodDtcbiAgY29sb3I6ICRpbnB1dC1lcnJvci1jb2xvcjtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1lcnJvciB7XG4gIEBpZiAkYWJpZGUtaW5wdXRzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgaW52YWxpZCBpbnB1dHNcbiAgICAuaXMtaW52YWxpZC1pbnB1dCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLWlucHV0LWVycm9yO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkYWJpZGUtbGFiZWxzIHtcbiAgICAvLyBFcnJvciBjbGFzcyBmb3IgbGFiZWxzIG9mIGludmFsaWQgb3V0cHV0c1xuICAgIC5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1jb2xvci1pbnZhbGlkO1xuICAgIH1cbiAgfVxuXG4gIC8vIEZvcm0gZXJyb3IgZWxlbWVudFxuICAuZm9ybS1lcnJvciB7XG4gICAgQGluY2x1ZGUgZm9ybS1lcnJvcjtcblxuICAgICYuaXMtdmlzaWJsZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWJhc2Vcbi8vLy9cblxuLy8gQmFzZSBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuLy8gVGhlc2UgYXJlIHN0eWxlcyBhcHBsaWVkIHRvIGJhc2ljIEhUTUwgdGFncywgaW5jbHVkaW5nOlxuLy8gICAtIFBhcmFncmFwaHMgPHA+XG4vLyAgIC0gQm9sZC9pdGFsaWNzIDxiPiA8c3Ryb25nPiA8aT4gPGVtPlxuLy8gICAtIFNtYWxsIHRleHQgPHNtYWxsPlxuLy8gICAtIEhlYWRpbmdzIDxoMT4tPGg2PlxuLy8gICAtIEFuY2hvcnMgPGE+XG4vLyAgIC0gRGl2aWRlcnMgPGhyPlxuLy8gICAtIExpc3RzIDx1bD4gPG9sPiA8ZGw+XG4vLyAgIC0gQmxvY2txdW90ZXMgPGJsb2NrcXVvdGU+XG4vLyAgIC0gQ29kZSBibG9ja3MgPGNvZGU+XG4vLyAgIC0gQWJicmV2aWF0aW9ucyA8YWJicj5cbi8vICAgLSBDaXRhdGlvbnMgPGNpdGU+XG4vLyAgIC0gS2V5c3Ryb2tlcyA8a2JkPlxuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGhlYWRlciBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHN0eWxlIChlLmcuIGl0YWxpY2l6ZWQpIG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kaGVhZGVyLWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgdXNlZCBmb3IgZWxlbWVudHMgdGhhdCB1c2UgbW9ub3NwYWNlZCB0eXBlLCBzdWNoIGFzIGNvZGUgc2FtcGxlc1xuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRmb250LWZhbWlseS1tb25vc3BhY2U6IENvbnNvbGFzLCAnTGliZXJhdGlvbiBNb25vJywgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IG9mIGhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gU3R5bGVzIGZvciBoZWFkaW5ncyBhdCB2YXJpb3VzIHNjcmVlbiBzaXplcy4gRWFjaCBrZXkgaXMgYSBicmVha3BvaW50LCBhbmQgZWFjaCB2YWx1ZSBpcyBhIG1hcCBvZiBoZWFkaW5nIHN0eWxlcy5cbi8vLyBAdHlwZSBNYXBcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiAyNCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAxOSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAxOCksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAxNyksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4gIG1lZGl1bTogKFxuICAgICdoMSc6ICgnZm9udC1zaXplJzogNDgpLFxuICAgICdoMic6ICgnZm9udC1zaXplJzogNDApLFxuICAgICdoMyc6ICgnZm9udC1zaXplJzogMzEpLFxuICAgICdoNCc6ICgnZm9udC1zaXplJzogMjUpLFxuICAgICdoNSc6ICgnZm9udC1zaXplJzogMjApLFxuICAgICdoNic6ICgnZm9udC1zaXplJzogMTYpLFxuICApLFxuKSAhZGVmYXVsdDtcblxuLy8gJGhlYWRlci1zdHlsZXMgbWFwIGlzIGJ1aWx0IGZyb20gJGhlYWRlci1zaXplcyBpbiBvcmRlciB0byBlbnN1cmUgZG93bndhcmQgY29tcGF0aWJpbGl0eVxuLy8gd2hlbiAkaGVhZGVyLXNpemVzIGlzIGRlcHJlY2lhdGVkLCAkaGVhZGVyLXN0eWxlcyBuZWVkcyB0byBnZXQgIWRlZmF1bHQgdmFsdWVzIGxpa2Ugc2V0dGluZ3Muc2Nzc1xuQGZ1bmN0aW9uIGJ1aWxkLWZyb20taGVhZGVyLXNpemVzKCRoZWFkZXItc2l6ZXMpIHtcbiAgQHdhcm4gJ05vdGUsIHRoYXQgJGhlYWRlci1zaXplcyBoYXMgYmVlbiByZXBsYWNlZCB3aXRoICRoZWFkZXItc3R5bGVzLiAkaGVhZGVyLXNpemVzIHN0aWxsIHdvcmtzLCBidXQgaXQgaXMgZ29pbmcgdG8gYmUgZGVwcmVjaWF0ZWQuJztcbiAgJGhlYWRlci1zdHlsZXM6ICgpO1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zaXplcyB7XG4gICAgJGhlYWRlci1tYXA6ICgpO1xuICAgIEBlYWNoICRoZWFkZXIsICRmb250LXNpemUgaW4gJGhlYWRlcnMge1xuICAgICAgJGhlYWRlci1tYXA6IG1hcC1tZXJnZSgkaGVhZGVyLW1hcCwgKCRoZWFkZXI6ICgnZm9udC1zaXplJzogJGZvbnQtc2l6ZSkpKTtcbiAgICB9XG4gICAgJGhlYWRlci1zdHlsZXM6IG1hcC1tZXJnZSgkaGVhZGVyLXN0eWxlcywgKCRzaXplOiAkaGVhZGVyLW1hcCkpO1xuICB9XG4gIEByZXR1cm4gJGhlYWRlci1zdHlsZXM7XG59XG5cbi8vIElmIGl0IGV4aXN0cyAkaGVhZGVycy1zaXplcyBpcyB1c2VkIHRvIGJ1aWxkICRoZWFkZXItc3R5bGVzLiBTZWUgdGhlIGRvY3VtZW50YXRpb24uXG5AaWYgdmFyaWFibGUtZXhpc3RzKGhlYWRlci1zaXplcykge1xuICAkaGVhZGVyLXN0eWxlczogYnVpbGQtZnJvbS1oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcyk7XG59XG5cbi8vLyBUZXh0IHJlbmRlcmluZyBtZXRob2Qgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBgPHNtYWxsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc21hbGwtZm9udC1zaXplOiA4MCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBgPHNtYWxsPmAgZWxlbWVudHMgd2hlbiBwbGFjZWQgaW5zaWRlIGhlYWRlcnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnNpZGUgYDxwPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gb2YgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBmb3IgcGFyYWdyYXBoIHRleHQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHkgIWRlZmF1bHQ7XG5cbi8vLyBVc2UgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNvZGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNvZGUtaW5saW5lOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3MuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGRlY29yYXRpb24gZm9yIGxpbmtzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gd2lkdGggb2YgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJGhyLXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBMaXN0XG4kaHItYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gZm9yIGEgZGl2aWRlci5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0byAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1saW5laGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBpdGVtcyBpbiBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1tYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b20gIWRlZmF1bHQ7XG5cbi8vLyBCdWxsZXQgdHlwZSB0byB1c2UgZm9yIHVub3JkZXJlZCBsaXN0cyAoZS5nLiwgYHNxdWFyZWAsIGBjaXJjbGVgLCBgZGlzY2ApLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtdHlwZTogZGlzYyAhZGVmYXVsdDtcblxuLy8vIFBvc2l0aW9uaW5nIGZvciBidWxsZXRzIG9uIHVub3JkZXJlZCBsaXN0IGl0ZW1zLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGUgIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBsaXN0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtICFkZWZhdWx0O1xuXG4vLy8gTGVmdCAob3IgcmlnaHQpIG1hcmdpbiBmb3IgYSBsaXN0IGluc2lkZSBhIGxpc3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCb3R0b20gbWFyZ2luIGZvciBgPGRsPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IGZvciBgPGR0PmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYDxkdD5gIGFuZCBgPGRkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGEgYDxibG9ja3F1b3RlPmAgZWxlbWVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYmxvY2txdW90ZS1wYWRkaW5nOiByZW0tY2FsYyg5IDIwIDAgMTkpICFkZWZhdWx0O1xuXG4vLy8gU2lkZSBib3JkZXIgZm9yIGA8YmxvY2txdW90ZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRibG9ja3F1b3RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQgYXMgZGVmYXVsdCBmb3IgYDxjaXRlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGVuYWJsZS1jaXRlLWJsb2NrOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGtleXN0cm9rZS1mb250OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBDb2xvclxuJGtleXN0cm9rZS1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRrZXlzdHJva2UtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBib3JkZXIgc3R5bGUgZm9yIGA8YWJicj5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRhYmJyLXVuZGVybGluZTogMXB4IGRvdHRlZCAkYmxhY2sgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktYmFzZSB7XG4gIC8vIFR5cG9ncmFwaHkgcmVzZXRzXG4gIGRpdixcbiAgZGwsXG4gIGR0LFxuICBkZCxcbiAgdWwsXG4gIG9sLFxuICBsaSxcbiAgaDEsXG4gIGgyLFxuICBoMyxcbiAgaDQsXG4gIGg1LFxuICBoNixcbiAgcHJlLFxuICBmb3JtLFxuICBwLFxuICBibG9ja3F1b3RlLFxuICB0aCxcbiAgdGQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUGFyYWdyYXBoc1xuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICB0ZXh0LXJlbmRlcmluZzogJHBhcmFncmFwaC10ZXh0LXJlbmRlcmluZztcbiAgfVxuXG4gIC8vIEVtcGhhc2l6ZWQgdGV4dFxuICBlbSxcbiAgaSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU3Ryb25nIHRleHRcbiAgc3Ryb25nLFxuICBiIHtcbiAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFNtYWxsIHRleHRcbiAgc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEhlYWRpbmdzXG4gIGgxLCAuaDEsXG4gIGgyLCAuaDIsXG4gIGgzLCAuaDMsXG4gIGg0LCAuaDQsXG4gIGg1LCAuaDUsXG4gIGg2LCAuaDYge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc3R5bGU6ICRoZWFkZXItZm9udC1zdHlsZTtcbiAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICBjb2xvcjogJGhlYWRlci1jb2xvcjtcbiAgICB0ZXh0LXJlbmRlcmluZzogJGhlYWRlci10ZXh0LXJlbmRlcmluZztcblxuICAgIHNtYWxsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgY29sb3I6ICRoZWFkZXItc21hbGwtZm9udC1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBIZWFkaW5nIHN0eWxlc1xuICBAZWFjaCAkc2l6ZSwgJGhlYWRlcnMgaW4gJGhlYWRlci1zdHlsZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRoZWFkZXIsICRoZWFkZXItZGVmcyBpbiAkaGVhZGVycyB7XG4gICAgICAgICRmb250LXNpemUtdGVtcDogMXJlbTtcbiAgICAgICAgI3skaGVhZGVyfSwgLiN7JGhlYWRlcn0ge1xuXG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgZm9udC1zaXplKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmb250LXNpemUpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmcykge1xuICAgICAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgZnMpKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS10ZW1wO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxpbmUtaGVpZ2h0KSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBsaCkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGxoKSwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKCRoZWFkZXItbGluZWhlaWdodCwgJGZvbnQtc2l6ZS10ZW1wKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLXRvcCkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtdCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG10KSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWFyZ2luLWJvdHRvbSkpO1xuICAgICAgICAgIH0gQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBtYikge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIG1iKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkaGVhZGVyLW1hcmdpbi1ib3R0b20pO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExpbmtzXG4gIGEge1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYW5jaG9yLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRhbmNob3ItY29sb3ItaG92ZXI7XG4gICAgICBAaWYgJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXIgIT0gJGFuY2hvci10ZXh0LWRlY29yYXRpb24ge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBib3JkZXI6IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gSG9yaXpvbnRhbCBydWxlXG4gIGhyIHtcbiAgICBjbGVhcjogYm90aDtcblxuICAgIG1heC13aWR0aDogJGhyLXdpZHRoO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46ICRoci1tYXJnaW47XG5cbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgICBib3JkZXItYm90dG9tOiAkaHItYm9yZGVyO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICB9XG5cbiAgLy8gTGlzdHNcbiAgdWwsXG4gIG9sLFxuICBkbCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGxpc3QtbWFyZ2luLWJvdHRvbTtcbiAgICBsaXN0LXN0eWxlLXBvc2l0aW9uOiAkbGlzdC1zdHlsZS1wb3NpdGlvbjtcbiAgICBsaW5lLWhlaWdodDogJGxpc3QtbGluZWhlaWdodDtcbiAgfVxuXG4gIC8vIExpc3QgaXRlbXNcbiAgbGkge1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIFVub3JkZXJlZCBsaXN0c1xuICB1bCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgbGlzdC1zdHlsZS10eXBlOiAkbGlzdC1zdHlsZS10eXBlO1xuICB9XG5cbiAgLy8gT3JkZXJlZCBsaXN0c1xuICBvbCB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gIH1cblxuICAvLyBOZXN0ZWQgdW5vcmRlcmVkL29yZGVyZWQgbGlzdHNcbiAgdWwsIG9sIHtcbiAgICAmICYge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gIH1cblxuICAvLyBEZWZpbml0aW9uIGxpc3RzXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkZGVmbmxpc3QtbWFyZ2luLWJvdHRvbTtcblxuICAgIGR0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b207XG4gICAgICBmb250LXdlaWdodDogJGRlZm5saXN0LXRlcm0td2VpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrcXVvdGVzXG4gIGJsb2NrcXVvdGUge1xuICAgIG1hcmdpbjogMCAwICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRibG9ja3F1b3RlLWJvcmRlcjtcblxuICAgICYsIHAge1xuICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiAgICAgIGNvbG9yOiAkYmxvY2txdW90ZS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBJbmxpbmUgQ2l0YXRpb25zXG4gIEBpZiAoJGVuYWJsZS1jaXRlLWJsb2NrID09IHRydWUpIHtcbiAgICBjaXRlIHtcbiAgICAgIC8vIEV4dGVuZGluZyBhIGNsYXNzIGlzIG5vdCByZWNvbW1lbmRlZC5cbiAgICAgIC8vIFRPRE86IEJyZWFrIHRoZSB0eXBvZ3JhcGh5LWJhc2UvdHlwb2dyYXBoeS1oZWxwZXJzIHNlcGFyYXRpb25cbiAgICAgIEBleHRlbmQgJWNpdGUtYmxvY2s7XG4gICAgfVxuICB9XG5cbiAgLy8gQWJicmV2aWF0aW9uc1xuICBhYmJyLCBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGFiYnItdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogaGVscDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAvLyBGaWd1cmVzXG4gIGZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLy8gQ29kZVxuICBAaWYgKCRlbmFibGUtY29kZS1pbmxpbmUgPT0gdHJ1ZSkge1xuICAgIGNvZGUge1xuICAgICAgQGV4dGVuZCAlY29kZS1pbmxpbmU7XG4gICAgfVxuICB9XG5cbiAgLy8gS2V5c3Ryb2tlc1xuICBrYmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAka2V5c3Ryb2tlLXBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAka2V5c3Ryb2tlLWJhY2tncm91bmQ7XG5cbiAgICBmb250LWZhbWlseTogJGtleXN0cm9rZS1mb250O1xuICAgIGNvbG9yOiAka2V5c3Ryb2tlLWNvbG9yO1xuXG4gICAgQGlmIGhhcy12YWx1ZSgka2V5c3Ryb2tlLXJhZGl1cykge1xuICAgICAgYm9yZGVyLXJhZGl1czogJGtleXN0cm9rZS1yYWRpdXM7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5AaW1wb3J0ICdtYXRoJztcblxuJGNvbnRyYXN0LXdhcm5pbmdzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gUGF0Y2ggdG8gZml4IGlzc3VlICMxMjA4MFxuJHByaW1hcnktY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWNvbG9yOiBudWxsICFkZWZhdWx0O1xuJHdhcm5pbmctY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kYWxlcnQtY29sb3I6IG51bGwgIWRlZmF1bHQ7XG4kc3VjY2Vzcy1jb2xvcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuLy8vIENoZWNrcyB0aGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIC0gQ29sb3IgdG8gY2hlY2sgdGhlIGx1bWluYW5jZSBvZi5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBsdW1pbmFuY2Ugb2YgYCRjb2xvcmAuXG5AZnVuY3Rpb24gY29sb3ItbHVtaW5hbmNlKCRjb2xvcikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jcmVsYXRpdmVsdW1pbmFuY2VkZWZcbiAgJHJlZCAgIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwicmVkXCIsICRzcGFjZTogcmdiKSk7XG4gICRncmVlbiA6IHJvdW5kKGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcImdyZWVuXCIsICRzcGFjZTogcmdiKSk7XG4gICRibHVlICA6IHJvdW5kKGNvbG9yLmNoYW5uZWwoJGNvbG9yLCBcImJsdWVcIiwgJHNwYWNlOiByZ2IpKTtcblxuICAkcmdiYTogJHJlZCwgJGdyZWVuLCAkYmx1ZTtcbiAgJHJnYmEyOiAoKTtcblxuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIDMge1xuICAgICRyZ2I6IG50aCgkcmdiYSwgJGkpO1xuICAgICRyZ2I6IGRpdmlkZSgkcmdiLCAyNTUpO1xuXG4gICAgJHJnYjogaWYoJHJnYiA8IDAuMDM5MjgsIGRpdmlkZSgkcmdiLCAxMi45MiksIHBvdyhkaXZpZGUoJHJnYiArIDAuMDU1LCAxLjA1NSksIDIuNCkpO1xuXG4gICAgJHJnYmEyOiBhcHBlbmQoJHJnYmEyLCAkcmdiKTtcbiAgfVxuXG4gIEByZXR1cm4gMC4yMTI2ICogbnRoKCRyZ2JhMiwgMSkgKyAwLjcxNTIgKiBudGgoJHJnYmEyLCAyKSArIDAuMDcyMiAqIG50aCgkcmdiYTIsIDMpO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBjb250cmFzdCByYXRpbyBvZiB0d28gY29sb3JzLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMSAtIEZpcnN0IGNvbG9yIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yMiAtIFNlY29uZCBjb2xvciB0byBjb21wYXJlLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gVGhlIGNvbnRyYXN0IHJhdGlvIG9mIHRoZSBjb21wYXJlZCBjb2xvcnMuXG5AZnVuY3Rpb24gY29sb3ItY29udHJhc3QoJGNvbG9yMSwgJGNvbG9yMikge1xuICAvLyBBZGFwdGVkIGZyb206IGh0dHBzOi8vZ2l0aHViLmNvbS9MZWFWZXJvdS9jb250cmFzdC1yYXRpby9ibG9iL2doLXBhZ2VzL2NvbG9yLmpzXG4gIC8vIEZvcm11bGE6IGh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDgvUkVDLVdDQUcyMC0yMDA4MTIxMS8jY29udHJhc3QtcmF0aW9kZWZcbiAgJGx1bWluYW5jZTE6IGNvbG9yLWx1bWluYW5jZSgkY29sb3IxKSArIDAuMDU7XG4gICRsdW1pbmFuY2UyOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMikgKyAwLjA1O1xuICAkcmF0aW86IGRpdmlkZSgkbHVtaW5hbmNlMSwgJGx1bWluYW5jZTIpO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IGRpdmlkZSgxLCAkcmF0aW8pO1xuICB9XG5cbiAgJHJhdGlvOiByb3VuZCgkcmF0aW8gKiAxMCkgKiAwLjE7XG5cbiAgQHJldHVybiAkcmF0aW87XG59XG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGJhc2VgLCBhbmQgcmV0dXJucyB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYXNlIC0gQ29sb3IgdG8gY2hlY2sgbHVtaW5hbmNlLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGNvbG9ycyBbKCR3aGl0ZSwgJGJsYWNrKV0gLSBDb2xvcnMgdG8gY29tcGFyZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvbGVyYW5jZSBbJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZV0gLSBDb250cmFzdCB0b2xlcmFuY2UuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IHRoZSBjb2xvciBmcm9tIGAkY29sb3JzYCAobGlzdCBvZiBjb2xvcnMpIHRoYXQgaGFzIHRoZSBtb3N0IGNvbnRyYXN0LlxuQGZ1bmN0aW9uIGNvbG9yLXBpY2stY29udHJhc3QoJGJhc2UsICRjb2xvcnM6ICgkd2hpdGUsICRibGFjayksICR0b2xlcmFuY2U6ICRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2UpIHtcbiAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsIDEpKTtcbiAgJGJlc3Q6IG50aCgkY29sb3JzLCAxKTtcblxuICBAZm9yICRpIGZyb20gMiB0aHJvdWdoIGxlbmd0aCgkY29sb3JzKSB7XG4gICAgJGN1cnJlbnQtY29udHJhc3Q6IGNvbG9yLWNvbnRyYXN0KCRiYXNlLCBudGgoJGNvbG9ycywgJGkpKTtcbiAgICBAaWYgKCRjdXJyZW50LWNvbnRyYXN0IC0gJGNvbnRyYXN0ID4gJHRvbGVyYW5jZSkge1xuICAgICAgJGNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgICAkYmVzdDogbnRoKCRjb2xvcnMsICRpKTtcbiAgICB9XG4gIH1cblxuICBAaWYgKCRjb250cmFzdC13YXJuaW5ncyBhbmQgJGNvbnRyYXN0IDwgMykge1xuICAgIEB3YXJuICdDb250cmFzdCByYXRpbyBvZiAjeyRiZXN0fSBvbiAjeyRiYXNlfSBpcyBwcmV0dHkgYmFkLCBqdXN0ICN7JGNvbnRyYXN0fSc7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBjb2xvci5jaGFubmVsKCRjb2xvciwgXCJsaWdodG5lc3NcIiwgJHNwYWNlOiBoc2wpID4gJHRocmVzaG9sZCB7XG4gICAgJHNjYWxlOiAtJHNjYWxlO1xuICB9XG4gIEByZXR1cm4gc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkc2NhbGUpO1xufVxuXG4vLy8gR2V0IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcGFyYW0ge2tleX0gY29sb3Iga2V5IGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IGNvbG9yIGZyb20gZm91bmRhdGlvbi1wYWxldHRlXG5AZnVuY3Rpb24gZ2V0LWNvbG9yKCRrZXkpIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpIHtcbiAgICBAcmV0dXJuIG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgJGtleSk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnZ2l2ZW4gJGtleSBpcyBub3QgYXZhaWxhYmxlIGluICRmb3VuZGF0aW9uLXBhbGV0dGUnO1xuICB9XG59XG5cbi8vLyBUcmFuc2ZlcnMgdGhlIGNvbG9ycyBpbiB0aGUgYCRmb3VuZGF0aW9uLXBhbGV0dGVgIG1hcCBpbnRvIHZhcmlhYmxlcywgc3VjaCBhcyBgJHByaW1hcnktY29sb3JgIGFuZCBgJHNlY29uZGFyeS1jb2xvcmAuIENhbGwgdGhpcyBtaXhpbiBiZWxvdyB0aGUgR2xvYmFsIHNlY3Rpb24gb2YgeW91ciBzZXR0aW5ncyBmaWxlIHRvIHByb3Blcmx5IG1pZ3JhdGUgeW91ciBjb2RlYmFzZS5cbkBtaXhpbiBhZGQtZm91bmRhdGlvbi1jb2xvcnMoKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gICAgJHByaW1hcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHByaW1hcnktY29sb3I6ICMxNzc5YmEgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSB7XG4gICAgJHNlY29uZGFyeS1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzZWNvbmRhcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzZWNvbmRhcnktY29sb3I6ICM3Njc2NzYgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc3VjY2Vzcykge1xuICAgICRzdWNjZXNzLWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRzdWNjZXNzLWNvbG9yOiAjM2FkYjc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHdhcm5pbmcpIHtcbiAgICAkd2FybmluZy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkd2FybmluZy1jb2xvcjogI2ZmYWUwMCAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkge1xuICAgICRhbGVydC1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBhbGVydCkgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJGFsZXJ0LWNvbG9yOiAjY2M0YjM3ICFnbG9iYWw7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIHVuZGVyIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGNpdGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjaXRlLWNvbG9yO1xuICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZCBiYXNpYyBzdHlsZXMgZm9yIGEgY29kZSBoZWxwZXIuXG4vLy8gU2VlIGBjb2RlLWlubGluZWAgYW5kIGBjb2RlLWJsb2NrYCBtaXhpbnMuXG5AbWl4aW4gY29kZS1zdHlsZSB7XG4gIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBpbmxpbmUuXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtaW5saW5lYFxuQG1peGluIGNvZGUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gYSBibG9jay5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1ibG9ja2BcbkBtaXhpbiBjb2RlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuXG4gIHBhZGRpbmc6ICRjb2RlLWJsb2NrLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b207XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICVjaXRlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjaXRlLWJsb2NrO1xuICB9XG5cbiAgLmNpdGUtYmxvY2sge1xuICAgIEBleHRlbmQgJWNpdGUtYmxvY2s7XG4gIH1cblxuICAlY29kZS1pbmxpbmUge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1pbmxpbmU7XG4gIH1cblxuICAuY29kZS1pbmxpbmUge1xuICAgIEBleHRlbmQgJWNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgLy8gRW5zdXJlIGEgXCJibGFjay1vbi13aGl0ZVwiIHByaW50IGJ5IHJlbW92aW5nIGJhY2tncm91bmRzLFxuICAgICAgLy8gdXNpbmcgYmxhY2sgdGV4dCBldmVyeXdoZXJlIGFuZCBmb3JjaW5nIHRoZSBicm93c2VyIHRvIGVjb25vbWl6ZSBpbmsuXG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgcHJpbnQtY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlLCBwcmV2ZW50IGFueSBlY29ub215IGJ5IHRoZSBicm93c2VyLlxuICAgICAgQGVsc2Uge1xuICAgICAgICBwcmludC1jb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gT3V0cHV0cyBDU1MgY2xhc3NlcyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AbWl4aW4gZm91bmRhdGlvbi1ncmlkKFxuICAkcm93OiAncm93JyxcbiAgJGNvbHVtbjogJ2NvbHVtbicsXG4gICRjb2x1bW4tcm93OiAnY29sdW1uLXJvdycsXG4gICRndXR0ZXI6ICdndXR0ZXInLFxuICAkcHVzaDogJ3B1c2gnLFxuICAkcHVsbDogJ3B1bGwnLFxuICAkY2VudGVyOiAnY2VudGVyZWQnLFxuICAkdW5jZW50ZXI6ICd1bmNlbnRlcmVkJyxcbiAgJGNvbGxhcHNlOiAnY29sbGFwc2UnLFxuICAkdW5jb2xsYXBzZTogJ3VuY29sbGFwc2UnLFxuICAkb2Zmc2V0OiAnb2Zmc2V0JyxcbiAgJGVuZDogJ2VuZCcsXG4gICRleHBhbmRlZDogJ2V4cGFuZGVkJyxcbiAgJGJsb2NrOiAnYmxvY2snXG4pIHtcbiAgLy8gUm93XG4gIC4jeyRyb3d9IHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdztcblxuICAgIC8vIENvbGxhcHNpbmdcbiAgICAmLiN7JGNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtY29sbGFwc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTmVzdGluZ1xuICAgICYgLiN7JHJvd30ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3ctbmVzdCgkZ3JpZC1jb2x1bW4tZ3V0dGVyKTtcblxuICAgICAgJi4jeyRjb2xsYXBzZX0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEV4cGFuZGVkIChmdWxsLXdpZHRoKSByb3dcbiAgICAmLiN7JGV4cGFuZGVkfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG5cbiAgICAgIC4jeyRyb3d9IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguI3skZXhwYW5kZWR9KSAuI3skcm93fSB7XG4gICAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKGV4cGFuZCk7XG4gICAgfVxuXG4gICAgQGlmIHR5cGUtb2YoJGdyaWQtY29sdW1uLWd1dHRlcikgPT0gJ21hcCcge1xuICAgICAgLy8gU3RhdGljICh1bnJlc3BvbnNpdmUpIHJvdyBndXR0ZXJzXG4gICAgICAvL1xuICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3JpZC1jb2x1bW4tZ3V0dGVyIHtcbiAgICAgICAgJi4jeyRndXR0ZXJ9LSN7JGJyZWFrcG9pbnR9IHtcbiAgICAgICAgICA+IC4jeyRjb2x1bW59IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLWd1dHRlcigkdmFsdWUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtblxuICAuI3skY29sdW1ufSB7XG4gICAgQGluY2x1ZGUgZ3JpZC1jb2w7XG5cbiAgICBAaWYgJGdyaWQtY29sdW1uLWFsaWduLWVkZ2Uge1xuICAgICAgJi4jeyRlbmR9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtZW5kO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIENvbHVtbiByb3dcbiAgLy8gVGhlIGRvdWJsZSAucm93IGNsYXNzIGlzIG5lZWRlZCB0byBidW1wIHVwIHRoZSBzcGVjaWZpY2l0eVxuICAuI3skY29sdW1ufS4jeyRyb3d9LiN7JHJvd30ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLy8gVG8gcHJvcGVybHkgbmVzdCBhIGNvbHVtbiByb3csIHBhZGRpbmcgYW5kIG1hcmdpbiBpcyByZW1vdmVkXG4gIC4jeyRyb3d9IC4jeyRjb2x1bW59LiN7JHJvd30uI3skcm93fSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW4tY291bnQge1xuICAgICAgLy8gQ29sdW1uIHdpZHRoXG4gICAgICAuI3skLXpmLXNpemV9LSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tc2l6ZSgkaSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFNvdXJjZSBvcmRlcmluZ1xuICAgICAgQGlmICRpIDwgJGdyaWQtY29sdW1uLWNvdW50IHtcbiAgICAgICAgQGlmICRwdXNoIHtcbiAgICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1c2h9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygkaSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGlmICRwdWxsIHtcbiAgICAgICAgICAuI3skLXpmLXNpemV9LSN7JHB1bGx9LSN7JGl9IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcygtJGkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPZmZzZXRzXG4gICAgICAkbzogJGkgLSAxO1xuXG4gICAgICBAaWYgJG9mZnNldCB7XG4gICAgICAgIC4jeyQtemYtc2l6ZX0tI3skb2Zmc2V0fS0jeyRvfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2wtb2ZmKCRvKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJsb2NrIGdyaWRcbiAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRibG9jay1ncmlkLW1heCB7XG4gICAgICAuI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgQGluY2x1ZGUgZ3JpZC1sYXlvdXQoJGksICcuI3skY29sdW1ufScpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgY29sbGFwc2luZ1xuICAgIC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9IHtcbiAgICAgID4gLiN7JGNvbHVtbn0geyBAaW5jbHVkZSBncmlkLWNvbC1jb2xsYXBzZTsgfVxuXG4gICAgICAuI3skcm93fSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLiN7JGV4cGFuZGVkfS4jeyRyb3d9IC4jeyQtemYtc2l6ZX0tI3skY29sbGFwc2V9LiN7JHJvd30ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS0jeyR1bmNvbGxhcHNlfSB7XG4gICAgICA+IC4jeyRjb2x1bW59IHsgQGluY2x1ZGUgZ3JpZC1jb2wtZ3V0dGVyKCQtemYtc2l6ZSk7IH1cbiAgICB9XG5cbiAgICAvLyBQb3NpdGlvbmluZ1xuICAgIEBpZiAkY2VudGVyIHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tI3skY2VudGVyfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhjZW50ZXIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEd1dHRlciBhZGp1c3RtZW50XG4gICAgJC1ndXR0ZXItdW5wb3Mtc2VsZWN0b3I6IChcbiAgICAgIGlmKCR1bmNlbnRlciwgJy4jeyQtemYtc2l6ZX0tI3skdW5jZW50ZXJ9JywgbnVsbCksXG4gICAgICBpZigkcHVzaCwgJy4jeyQtemYtc2l6ZX0tI3skcHVzaH0tMCcsIG51bGwpLFxuICAgICAgaWYoJHB1bGwsICcuI3skLXpmLXNpemV9LSN7JHB1bGx9LTAnLCBudWxsKSxcbiAgICApO1xuICAgIEBpZiAoJHVuY2VudGVyIG9yICRwdXNoIG9yICRwdWxsKSB7XG4gICAgICAjeyQtZ3V0dGVyLXVucG9zLXNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGdyaWQtY29sLXVucG9zO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWQgY29sdW1uc1xuICAuI3skY29sdW1ufS0jeyRibG9ja30ge1xuICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uLW1hcmdpbjtcbiAgfVxuXG4gIEBpZiAkY29sdW1uID09ICdjb2x1bW4nIGFuZCBoYXMtdmFsdWUoJGdyaWQtY29sdW1uLWFsaWFzKSB7XG4gICAgLiN7JGdyaWQtY29sdW1uLWFsaWFzfSB7XG4gICAgICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1ibG9jayBwbGFjZWhvbGRlci1pbi1leHRlbmRcbiAgICAgIEBleHRlbmQgLmNvbHVtbjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBDaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIGNvbHVtbnMgZGVmaW5lZCBpbnNpZGUgdGhpcyBtaXhpbiB0byB1c2UgYSBkaWZmZXJlbnQgY29sdW1uIGNvdW50LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkcm9vdCBbZmFsc2VdXG4vLy8gICBJZiBgZmFsc2VgLCBzZWxlY3RvcnMgaW5zaWRlIHRoaXMgbWl4aW4gd2lsbCBuZXN0IGluc2lkZSB0aGUgcGFyZW50IHNlbGVjdG9yLlxuLy8vICAgSWYgYHRydWVgLCBzZWxlY3RvcnMgd2lsbCBub3QgbmVzdC5cbkBtaXhpbiBncmlkLWNvbnRleHQoXG4gICRjb2x1bW5zLFxuICAkcm9vdDogZmFsc2Vcbikge1xuICAvLyBTdG9yZSB0aGUgY3VycmVudCBjb2x1bW4gY291bnQgc28gaXQgY2FuIGJlIHJlLXNldCBsYXRlclxuICAkb2xkLWdyaWQtY29sdW1uLWNvdW50OiAkZ3JpZC1jb2x1bW4tY291bnQ7XG4gICRncmlkLWNvbHVtbi1jb3VudDogJGNvbHVtbnMgIWdsb2JhbDtcblxuICBAaWYgJHJvb3Qge1xuICAgIEBhdC1yb290IHsgQGNvbnRlbnQ7IH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXN0b3JlIHRoZSBvbGQgY29sdW1uIGNvdW50XG4gICRncmlkLWNvbHVtbi1jb3VudDogJG9sZC1ncmlkLWNvbHVtbi1jb3VudCAhZ2xvYmFsO1xufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgcm93LlxuLy8vIEBjb250ZW50XG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGNvbHVtbnMgW251bGxdIC0gQ29sdW1uIGNvdW50IGZvciB0aGlzIHJvdy4gYG51bGxgIHdpbGwgdXNlIHRoZSBkZWZhdWx0IGNvbHVtbiBjb3VudC5cbi8vLyBAcGFyYW0ge0tleXdvcmRzfSAkYmVoYXZpb3IgW251bGxdXG4vLy8gICBNb2RpZmljYXRpb25zIHRvIHRoZSBkZWZhdWx0IGdyaWQgc3R5bGVzLiBgbmVzdGAgaW5kaWNhdGVzIHRoZSByb3cgd2lsbCBiZSBwbGFjZWQgaW5zaWRlIGFub3RoZXIgcm93LiBgY29sbGFwc2VgIGluZGljYXRlcyB0aGF0IHRoZSBjb2x1bW5zIGluc2lkZSB0aGlzIHJvdyB3aWxsIG5vdCBoYXZlIHBhZGRpbmcuIGBuZXN0IGNvbGxhcHNlYCBjb21iaW5lcyBib3RoIGJlaGF2aW9ycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbJGdyaWQtcm93LXdpZHRoXSBNYXhpbXVtIHNpemUgb2YgdGhlIHJvdy4gU2V0IHRvIGBleHBhbmRgIHRvIG1ha2UgdGhlIHJvdyB0YWtpbmcgdGhlIGZ1bGwgd2lkdGguXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkY2YgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gaW5jbHVkZSBhIGNsZWFyZml4LlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3coXG4gICRjb2x1bW5zOiBudWxsLFxuICAkYmVoYXZpb3I6IG51bGwsXG4gICRzaXplOiAkZ3JpZC1yb3ctd2lkdGgsXG4gICRjZjogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICAkbWFyZ2luOiBhdXRvO1xuXG4gIEBpZiBpbmRleCgkYmVoYXZpb3IsIG5lc3QpICE9IG51bGwge1xuICAgIEBpbmNsdWRlIGdyaWQtcm93LW5lc3QoJGd1dHRlcnMpO1xuXG4gICAgQGlmIGluZGV4KCRiZWhhdmlvciwgY29sbGFwc2UpICE9IG51bGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBncmlkLXJvdy1zaXplKCRzaXplKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICBAaWYgJGNmIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gIEBpZiAkY29sdW1ucyAhPSBudWxsIHtcbiAgICBAaW5jbHVkZSBncmlkLWNvbnRleHQoJGNvbHVtbnMpIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gSW52ZXJ0cyB0aGUgbWFyZ2lucyBvZiBhIHJvdyB0byBuZXN0IGl0IGluc2lkZSBvZiBhIGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIHdoZW4gaW52ZXJ0aW5nIG1hcmdpbnMuIFJlc3BvbnNpdmUgZ3V0dGVyIHNldHRpbmdzIGJ5IGRlZmF1bHQuXG5AbWl4aW4gZ3JpZC1yb3ctbmVzdCgkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlcikge1xuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAkbWFyZ2luOiByZW0tY2FsYygtemYtZ2V0LWJwLXZhbCgkZ3V0dGVycywgJC16Zi1zaXplKSkgKiAwLjUgKiAtMTtcblxuICAgIG1hcmdpbi1yaWdodDogJG1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJG1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0IGEgZ3JpZCByb3cgc2l6ZVxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgWyRncmlkLXJvdy13aWR0aF0gTWF4aW11bSBzaXplIG9mIHRoZSByb3cuIFNldCB0byBgZXhwYW5kYCB0byBtYWtlIHRoZSByb3cgdGFraW5nIHRoZSBmdWxsIHdpZHRoLlxuQG1peGluIGdyaWQtcm93LXNpemUoJHNpemU6ICRncmlkLXJvdy13aWR0aCkge1xuICBAaWYgJHNpemUgPT0gZXhwYW5kIHtcbiAgICAkc2l6ZTogbm9uZTtcbiAgfVxuXG4gIG1heC13aWR0aDogJHNpemU7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJGd1dHRlciBbYXV0b11cbi8vLyAgIFNwYWNpbmcgYmV0d2VlbiBjb2x1bW5zLCBhY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBzaW5nbGUgdmFsdWUgd2lsbCBtYWtlIHRoZSBndXR0ZXIgdGhhdCBleGFjdCBzaXplLlxuLy8vICAgLSBBIGJyZWFrcG9pbnQgbmFtZSB3aWxsIG1ha2UgdGhlIGd1dHRlciB0aGUgY29ycmVzcG9uZGluZyBzaXplIGluIHRoZSAkZ3V0dGVycyBtYXAuXG4vLy8gICAtIFwiYXV0b1wiIHdpbGwgbWFrZSB0aGUgZ3V0dGVyIHJlc3BvbnNpdmUsIHVzaW5nIHRoZSAkZ3V0dGVycyBtYXAgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLWNvbHVtbi1ndXR0ZXJdIC0gR3V0dGVyIG1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLWd1dHRlcihcbiAgJGd1dHRlcjogYXV0byxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSAtemYtYnJlYWtwb2ludC12YWx1ZSgkZ3V0dGVyLCAkZ3V0dGVycykge1xuICAgICRwYWRkaW5nOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAqIDAuNTtcblxuICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgIHBhZGRpbmctbGVmdDogJHBhZGRpbmc7XG4gIH1cbn1cblxuLy8vIENvbGxhcHNlIHRoZSBndXR0ZXJzIG9uIGEgY29sdW1uIGJ5IHJlbW92aW5nIHRoZSBwYWRkaW5nLiAqKk5vdGU6Kiogb25seSB1c2UgdGhpcyBtaXhpbiB3aXRoaW4gYSBicmVha3BvaW50LiBUbyBjb2xsYXBzZSBhIGNvbHVtbidzIGd1dHRlcnMgb24gYWxsIHNjcmVlbiBzaXplcywgdXNlIHRoZSBgJGd1dHRlcmAgcGFyYW1ldGVyIG9mIHRoZSBgZ3JpZC1jb2x1bW4oKWAgbWl4aW4gaW5zdGVhZC5cbkBtaXhpbiBncmlkLWNvbHVtbi1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigwKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLWd1dHRlcigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tZ3V0dGVyXG5AbWl4aW4gZ3JpZC1jb2wtZ3V0dGVyKFxuICAkZ3V0dGVyOiBhdXRvLFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWd1dHRlcigkZ3V0dGVyLCAkZ3V0dGVycyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1jb2xsYXBzZSgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tY29sbGFwc2VcbkBtaXhpbiBncmlkLWNvbC1jb2xsYXBzZSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWNvbGxhcHNlO1xufVxuXG4vLy8gU2V0cyBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucyB0byBtYXRjaCBndXR0ZXJzXG4vLy8gQHBhcmFtIHtOdW1iZXJ8S2V5d29yZH0gJG1hcmdpbiBbYXV0b11cbi8vLyAgIFRoZSBib3R0b20gbWFyZ2luIG9uIGdyaWQgY29sdW1ucywgYWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtIEEgc2luZ2xlIHZhbHVlIHdpbGwgbWFrZSB0aGUgbWFyZ2luIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBicmVha3BvaW50IG5hbWUgd2lsbCBtYWtlIHRoZSBtYXJnaW4gdGhlIGNvcnJlc3BvbmRpbmcgc2l6ZSBpbiB0aGUgJG1hcmdpbnMgbWFwLlxuLy8vICAgLSBcImF1dG9cIiB3aWxsIG1ha2UgdGhlIG1hcmdpbiByZXNwb25zaXZlLCB1c2luZyB0aGUgJG1hcmdpbnMgbWFwIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXJnaW5zIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgdG8gdXNlLiBSZXNwb25zaXZlIGd1dHRlciBzZXR0aW5ncyBieSBkZWZhdWx0LlxuQG1peGluIGdyaWQtY29sdW1uLW1hcmdpbiAoXG4gICRtYXJnaW46IGF1dG8sXG4gICRtYXJnaW5zOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWJyZWFrcG9pbnQtdmFsdWUoJG1hcmdpbiwgJG1hcmdpbnMpIHtcbiAgICAkbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoJC16Zi1icC12YWx1ZSk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1hcmdpbi1ib3R0b207XG5cbiAgICA+IDpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gQ2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgYSBjb2x1bW4gYmFzZWQgb24gYSBudW1iZXIgb2YgZmFjdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRjb2x1bW5zXG4vLy8gICBXaWR0aCBvZiB0aGUgY29sdW1uLiBBY2NlcHRzIG11bHRpcGxlIHZhbHVlczpcbi8vLyAgIC0gQSBwZXJjZW50YWdlIHZhbHVlIHdpbGwgbWFrZSB0aGUgY29sdW1uIHRoYXQgZXhhY3Qgc2l6ZS5cbi8vLyAgIC0gQSBzaW5nbGUgZGlnaXQgd2lsbCBtYWtlIHRoZSBjb2x1bW4gc3BhbiB0aGF0IG51bWJlciBvZiBjb2x1bW5zIHdpZGUsIHRha2luZyBpbnRvIGFjY291bnQgdGhlIGNvbHVtbiBjb3VudCBvZiB0aGUgcGFyZW50IHJvdy5cbi8vLyAgIC0gQSBsaXN0IG9mIHRoZSBmb3JtYXQgXCJ4IG9mIHlcIiAod2l0aG91dCBxdW90ZXMpIHdpbGwgbWFrZSBhIGNvbHVtbiB0aGF0IGlzICp4KiBjb2x1bW5zIHdpZGUsIGFzc3VtaW5nICp5KiB0b3RhbCBjb2x1bW5zIGZvciB0aGUgcGFyZW50LlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBjYWxjdWxhdGVkIHBlcmNlbnRhZ2UgdmFsdWUuXG5AZnVuY3Rpb24gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpIHtcbiAgQHJldHVybiBmcmFjdGlvbi10by1wZXJjZW50YWdlKCRjb2x1bW5zLCAkZGVub21pbmF0b3I6ICRncmlkLWNvbHVtbi1jb3VudCk7XG59XG5cbi8vLyBDcmVhdGVzIGEgZ3JpZCBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge01peGVkfSAkY29sdW1ucyBbJGdyaWQtY29sdW1uLWNvdW50XSAtIFdpZHRoIG9mIHRoZSBjb2x1bW4uIFJlZmVyIHRvIHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge01peGVkfSAkZ3V0dGVycyBbJGdyaWQtY29sdW1uLWd1dHRlcl0gLSBTcGFjaW5nIGJldHdlZW4gY29sdW1ucy4gUmVmZXIgdG8gdGhlIGBncmlkLWNvbHVtbi1ndXR0ZXIoKWAgZnVuY3Rpb24gdG8gc2VlIHBvc3NpYmxlIHZhbHVlcy5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudCxcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuXG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xuXG4gIC8vIEd1dHRlcnNcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tZ3V0dGVyKCRndXR0ZXJzOiAkZ3V0dGVycyk7XG4gIC8vIFBvc2l0aW9uXG4gIEBpbmNsdWRlIGdyaWQtY29sLXBvcyhhdXRvKTtcblxufVxuXG4vLy8gQ3JlYXRlcyBhIGdyaWQgY29sdW1uIHJvdy4gVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBhZGRpbmcgYC5yb3dgIGFuZCBgLmNvbHVtbmAgdG8gdGhlIHNhbWUgZWxlbWVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TWl4ZWR9ICRndXR0ZXJzIFskZ3JpZC1jb2x1bW4tZ3V0dGVyXSAtIFdpZHRoIG9mIHRoZSBndXR0ZXJzIG9uIGVpdGhlciBzaWRlIG9mIHRoZSBjb2x1bW4gcm93LiBSZWZlciB0byB0aGUgYGdyaWQtY29sdW1uLWd1dHRlcigpYCBmdW5jdGlvbiB0byBzZWUgcG9zc2libGUgdmFsdWVzLlxuQG1peGluIGdyaWQtY29sdW1uLXJvdyhcbiAgJGd1dHRlcnM6ICRncmlkLWNvbHVtbi1ndXR0ZXJcbikge1xuICBAaW5jbHVkZSBncmlkLXJvdztcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGd1dHRlcnM6ICRndXR0ZXJzKTtcblxuICAmLFxuICAmOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW5cbkBmdW5jdGlvbiBncmlkLWNvbChcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEByZXR1cm4gZ3JpZC1jb2x1bW4oJGNvbHVtbnMpO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uXG5AbWl4aW4gZ3JpZC1jb2woXG4gICRjb2x1bW5zOiAkZ3JpZC1jb2x1bW4tY291bnQsXG4gICRndXR0ZXJzOiAkZ3JpZC1jb2x1bW4tZ3V0dGVyXG4pIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXJzKTtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLXJvdygpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tcm93XG5AbWl4aW4gZ3JpZC1jb2wtcm93KFxuICAkZ3V0dGVyczogJGdyaWQtY29sdW1uLWd1dHRlclxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXJvdygkZ3V0dGVycyk7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZ3JpZFxuLy8vL1xuXG4vLy8gU2V0IHRoZSB3aWR0aCBvZiBhIGdyaWQgY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHdpZHRoIFskZ3JpZC1jb2x1bW4tY291bnRdIC0gV2lkdGggdG8gbWFrZSB0aGUgY29sdW1uLiBZb3UgY2FuIHBhc3MgaW4gYW55IHZhbHVlIGFjY2VwdGVkIGJ5IHRoZSBgZ3JpZC1jb2x1bW4oKWAgZnVuY3Rpb24sIHN1Y2ggYXMgYDZgLCBgNTAlYCwgb3IgYDEgb2YgMmAuXG5AbWl4aW4gZ3JpZC1jb2x1bW4tc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIHdpZHRoOiBncmlkLWNvbHVtbigkY29sdW1ucyk7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1zaXplKClgLlxuLy8vIEBhbGlhcyBncmlkLWNvbHVtbi1zaXplXG5AbWl4aW4gZ3JpZC1jb2wtc2l6ZShcbiAgJGNvbHVtbnM6ICRncmlkLWNvbHVtbi1jb3VudFxuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLXNpemUoJGNvbHVtbnMpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGdyaWRcbi8vLy9cblxuLy8vIFJlcG9zaXRpb24gYSBjb2x1bW4uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxLZXl3b3JkfSAkcG9zaXRpb24gLSBJdCBjYW4gYmU6XG4vLy8gICAqIEEgbnVtYmVyOiBUaGUgY29sdW1uIHdpbGwgbW92ZSBlcXVhbCB0byB0aGUgd2lkdGggb2YgdGhlIGNvbHVtbiBjb3VudFxuLy8vICAgICBzcGVjaWZpZWQuIEEgcG9zaXRpdmUgbnVtYmVyIHdpbGwgcHVzaCB0aGUgY29sdW1uIHRvIHRoZSByaWdodCwgd2hpbGVcbi8vLyAgICAgYSBuZWdhdGl2ZSBudW1iZXIgd2lsbCBwdWxsIGl0IHRvIHRoZSBsZWZ0LlxuLy8vICAgKiBgY2VudGVyYDogQ29sdW1uIHdpbGwgYmUgY2VudGVyZWRcbi8vLyAgICogYGF1dG9gOiBDb2x1bW4gd2lsbCBiZSBwdXNoZWQgdG8gdGhlIGxlZnQgKG9yIHRvIHRoZSByaWdodCBmb3IgdGhlIGxhc3QgY29sdW1uKS5cbkBtaXhpbiBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pIHtcbiAgLy8gQXV0byBwb3NpdGlvbmluZ1xuICBAaWYgJHBvc2l0aW9uID09IGF1dG8ge1xuICAgICYsICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICBmbG9hdDogJGdsb2JhbC1sZWZ0O1xuICAgICAgY2xlYXI6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gTGFzdCBjb2x1bW4gYWxpZ25tZW50XG4gICAgQGlmICRncmlkLWNvbHVtbi1hbGlnbi1lZGdlIHtcbiAgICAgICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgICAgIGZsb2F0OiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFB1c2gvcHVsbFxuICBAZWxzZSBpZiB0eXBlLW9mKCRwb3NpdGlvbikgPT0gJ251bWJlcicge1xuICAgICRvZmZzZXQ6IHBlcmNlbnRhZ2UoZGl2aWRlKCRwb3NpdGlvbiwgJGdyaWQtY29sdW1uLWNvdW50KSk7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG5cbiAgLy8gQ2VudGVyIHBvc2l0aW9uaW5nXG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBjZW50ZXIge1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAmLCAmOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gIH1cblxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1dyb25nIHN5bnRheCBmb3IgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKS4gRW50ZXIgYSBwb3NpdGl2ZSBvciBuZWdhdGl2ZSBudW1iZXIsIFwiY2VudGVyXCIgb3IgXCJhdXRvXCIuJztcbiAgfVxufVxuXG4vLy8gUmVzZXQgYSBwb3NpdGlvbiBkZWZpbml0aW9uLlxuQG1peGluIGdyaWQtY29sdW1uLXVucG9zaXRpb24ge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbihhdXRvKTtcbn1cblxuLy8vIE9mZnNldHMgYSBjb2x1bW4gdG8gdGhlIHJpZ2h0IGJ5IGAkbmAgY29sdW1ucy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkbiAtIFdpZHRoIHRvIG9mZnNldCBieS4gWW91IGNhbiBwYXNzIGluIGFueSB2YWx1ZSBhY2NlcHRlZCBieSB0aGUgYGdyaWQtY29sdW1uKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuQG1peGluIGdyaWQtY29sdW1uLW9mZnNldCgkbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiBncmlkLWNvbHVtbigkbik7XG59XG5cbi8vLyBEaXNhYmxlIHRoZSBkZWZhdWx0IGJlaGF2aW9yIG9mIHRoZSBsYXN0IGNvbHVtbiBpbiBhIHJvdyBhbGlnbmluZyB0byB0aGUgb3Bwb3NpdGUgZWRnZS5cbkBtaXhpbiBncmlkLWNvbHVtbi1lbmQge1xuICAvLyBUaGlzIGV4dHJhIHNwZWNpZmljaXR5IGlzIHJlcXVpcmVkIGZvciB0aGUgcHJvcGVydHkgdG8gYmUgYXBwbGllZFxuICAmOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgfVxufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tcG9zaXRpb24oKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLXBvc2l0aW9uXG5AbWl4aW4gZ3JpZC1jb2wtcG9zKCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBncmlkLWNvbHVtbi1wb3NpdGlvbigkcG9zaXRpb24pO1xufVxuXG4vLy8gU2hvcnRoYW5kIGZvciBgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbigpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvblxuQG1peGluIGdyaWQtY29sLXVucG9zIHtcbiAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4tdW5wb3NpdGlvbjtcbn1cblxuLy8vIFNob3J0aGFuZCBmb3IgYGdyaWQtY29sdW1uLW9mZnNldCgpYC5cbi8vLyBAYWxpYXMgZ3JpZC1jb2x1bW4tb2Zmc2V0XG5AbWl4aW4gZ3JpZC1jb2wtb2ZmKCRuKSB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLW9mZnNldCgkbik7XG59XG5cbi8vLyBTaG9ydGhhbmQgZm9yIGBncmlkLWNvbHVtbi1lbmQoKWAuXG4vLy8gQGFsaWFzIGdyaWQtY29sdW1uLWVuZFxuQG1peGluIGdyaWQtY29sLWVuZCB7XG4gIEBpbmNsdWRlIGdyaWQtY29sdW1uLWVuZDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBncmlkXG4vLy8vXG5cbi8vLyBTaXplcyBjaGlsZCBlbGVtZW50cyBzbyB0aGF0IGAkbmAgbnVtYmVyIG9mIGl0ZW1zIGFwcGVhciBvbiBlYWNoIHJvdy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbiAtIE51bWJlciBvZiBlbGVtZW50cyB0byBkaXNwbGF5IHBlciByb3cuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJy5jb2x1bW4nXSAtIFNlbGVjdG9yKHMpIHRvIHVzZSBmb3IgY2hpbGQgZWxlbWVudHMuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJGd1dHRlclxuLy8vICAgVGhlIGd1dHRlciB0byBhcHBseSB0byBjaGlsZCBlbGVtZW50cy4gQWNjZXB0cyBtdWx0aXBsZSB2YWx1ZXM6XG4vLy8gICAtICRncmlkLWNvbHVtbi1ndXR0ZXIgd2lsbCB1c2UgdGhlIHZhbHVlcyBpbiB0aGUgJGdyaWQtY29sdW1uLWd1dHRlciBtYXAsIGluY2x1ZGluZyBicmVha3BvaW50IHNpemVzLlxuLy8vICAgLSBBIGZpeGVkIG51bWVyaWMgdmFsdWUgd2lsbCBhcHBseSB0aGlzIGd1dHRlciB0byBhbGwgYnJlYWtwb2ludHMuXG5AbWl4aW4gZ3JpZC1sYXlvdXQoXG4gICRuLFxuICAkc2VsZWN0b3I6ICcuY29sdW1uJyxcbiAgJGd1dHRlcjogbnVsbFxuKSB7XG4gICYgPiAjeyRzZWxlY3Rvcn0ge1xuICAgIGZsb2F0OiAkZ2xvYmFsLWxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoZGl2aWRlKDEsICRuKSk7XG5cbiAgICAvLyBJZiBhICRndXR0ZXIgdmFsdWUgaXMgcGFzc2VkXG4gICAgQGlmKCRndXR0ZXIpIHtcbiAgICAgIC8vIEd1dHRlcnNcbiAgICAgIEBpZiB0eXBlLW9mKCRndXR0ZXIpID09ICdtYXAnIHtcbiAgICAgICAgQGVhY2ggJGJyZWFrcG9pbnQsICR2YWx1ZSBpbiAkZ3V0dGVyIHtcbiAgICAgICAgICAkcGFkZGluZzogcmVtLWNhbGMoJHZhbHVlKSAqIDAuNTtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYWRkaW5nO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmIHR5cGUtb2YoJGd1dHRlcikgPT0gJ251bWJlcicgYW5kIHN0cmlwLXVuaXQoJGd1dHRlcikgPiAwIHtcbiAgICAgICAgJHBhZGRpbmc6IHJlbS1jYWxjKCRndXR0ZXIpICogMC41O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKDFuKSB7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICB9XG5cbiAgICAmOm50aC1vZi10eXBlKCN7JG59bisxKSB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgZmxvYXQ6ICRnbG9iYWwtbGVmdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgZXh0cmEgQ1NTIHRvIGJsb2NrIGdyaWQgY2hpbGRyZW4gc28gdGhlIGxhc3QgaXRlbXMgaW4gdGhlIHJvdyBjZW50ZXIgYXV0b21hdGljYWxseS4gQXBwbHkgdGhpcyB0byB0aGUgY29sdW1ucywgbm90IHRoZSByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgaXRlbXMgdGhhdCBhcHBlYXIgaW4gZWFjaCByb3cuXG5AbWl4aW4gZ3JpZC1sYXlvdXQtY2VudGVyLWxhc3QoJG4pIHtcbiAgQGZvciAkaSBmcm9tIDEgdG8gJG4ge1xuICAgIEBpZiAkaSA9PSAxIHtcbiAgICAgICY6bnRoLWNoaWxkKCN7JG59bisxKTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6ICgxMDAgLSBkaXZpZGUoMTAwLCAkbikgKiAkaSkgKiAwLjUgKiAxJTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgJjpudGgtY2hpbGQoI3skbn1uKzEpOm50aC1sYXN0LWNoaWxkKCN7JGl9KSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAoMTAwIC0gZGl2aWRlKDEwMCwgJG4pICogJGkpICogMC41ICogMSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnV0dG9uXG4vLy8vXG5cbi8vLyBGb250IGZhbWlseSBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEZvbnRcbiRidXR0b24tZm9udC1mYW1pbHk6IGluaGVyaXQgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgYnV0dG9uIGVsZW1lbnRzLlxuLy8vIElnbm9yZWQgaWYgbnVsbCAoZGVmYXVsdClcbi8vLyBAdHlwZSBGb250LVdlaWdodFxuJGJ1dHRvbi1mb250LXdlaWdodDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1wYWRkaW5nOiAwLjg1ZW0gMWVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIGFyb3VuZCBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZmlsbCBmb3IgYnV0dG9ucy4gQ2FuIGVpdGhlciBiZSBgc29saWRgIG9yIGBob2xsb3dgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRidXR0b24tZmlsbDogc29saWQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgQ29sb3JcbiRidXR0b24tYmFja2dyb3VuZDogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLTE1JSkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0aXZlIGZvbnQgY29sb3IgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGJ1dHRvbnMsIGRlZmF1bHRlZCB0byBnbG9iYWwtcmFkaXVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBidXR0b25zLCB0cmFuc3BhcmVudCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi1ib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciB3aWR0aCBmb3IgaG9sbG93IG91dGxpbmUgYnV0dG9uc1xuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG5cbi8vLyBTaXplcyBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMC45cmVtLFxuICBsYXJnZTogMS4yNXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcmluZyBjbGFzc2VzLiBBIG1hcCBvZiBjbGFzc2VzIHRvIG91dHB1dCBpbiB5b3VyIENTUywgbGlrZSBgLnNlY29uZGFyeWAsIGAuc3VjY2Vzc2AsIGFuZCBzbyBvbi5cbi8vLyBAdHlwZSBNYXBcbiRidXR0b24tcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIG9wYWNpdHkgZm9yIGEgZGlzYWJsZWQgYnV0dG9uLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tb3BhY2l0eS1kaXNhYmxlZDogMC4yNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgaG9sbG93IGJ1dHRvbnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3M6IC01MCUgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsOiBmbGlwIGZyb20gbWFyZ2luLXJpZ2h0IHRvIG1hcmdpbi1sZWZ0IGZvciBkZWZhdWx0c1xuQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAkYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xufVxuXG4vLy8gdHJhbnNpdGlvbnMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTGlzdFxuJGJ1dHRvbi10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDAuMjVzIGVhc2Utb3V0LCBjb2xvciAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIEFkZGl0aW9uYWwgcmVzcG9uc2l2ZSBjbGFzc2VzIGZvciAuZXhwYW5kZWRcbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBEb2N1bWVudCBidXR0b24tYmFzZSgpIG1peGluXG5AbWl4aW4gYnV0dG9uLWJhc2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG4gIGJvcmRlcjogJGJ1dHRvbi1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICB0cmFuc2l0aW9uOiAkYnV0dG9uLXRyYW5zaXRpb247XG4gIGZvbnQtZmFtaWx5OiAkYnV0dG9uLWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6IG1hcC1nZXQoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCk7XG4gIGZvbnQtd2VpZ2h0OiAkYnV0dG9uLWZvbnQtd2VpZ2h0O1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGN1cnNvcjogcG9pbnRlcjtcblxuICBAaWYgKHR5cGUtb2YoJGJ1dHRvbi1wYWRkaW5nKSA9PSAnbWFwJykge1xuICAgIEBlYWNoICRzaXplLCAkcGFkZGluZyBpbiAkYnV0dG9uLXBhZGRpbmcge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgICBwYWRkaW5nOiAkcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRidXR0b24tcGFkZGluZztcbiAgfVxuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbn1cblxuLy8vIEV4cGFuZHMgYSBidXR0b24gdG8gbWFrZSBpdCBmdWxsLXdpZHRoLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGVuYWJsZSB0aGUgZXhwYW5kIGJlaGF2aW9yLiBTZXQgdG8gYGZhbHNlYCB0byByZXZlcnNlIHRoaXMgYmVoYXZpb3IuXG5AbWl4aW4gYnV0dG9uLWV4cGFuZCgkZXhwYW5kOiB0cnVlKSB7XG4gIEBpZiAkZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogYXV0bztcbiAgICBtYXJnaW46ICRidXR0b24tbWFyZ2luO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBvciBjbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1maWxsLXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC4gYHNvbGlkYCBoYXMgbm8gZWZmZWN0cy5cbkBtaXhpbiBidXR0b24tZmlsbChcbiAgJGZpbGw6ICRidXR0b24tZmlsbFxuKSB7XG4gIEBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3c7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gY2xlYXIge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1jbGVhcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlcyBvZiBhIHNvbGlkL2hvbGxvdy9jbGVhciBidXR0b24gZmlsbGluZyBhY2NvcmRpbmcgdG8gYCRmaWxsYC5cbi8vLyBTZWUgbWl4aW5zIGBidXR0b24tc3R5bGVgLCBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgYW5kIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciBlZmZlY3RzIG9mIHZpc3VhbCBzdHlsaW5nIHBhcmFtZXRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZmlsbCBbJGJ1dHRvbi1maWxsXSAtIFR5cGUgb2YgZmlsbGluZyBiZXR3ZWVuIGBob2xsb3dgIGFuZCBgY2xlYXJgLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gLVxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSAtXG5AbWl4aW4gYnV0dG9uLWZpbGwtc3R5bGUoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGwsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvclxuKSB7XG4gIEBpZiAkZmlsbCA9PSBzb2xpZCB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiYWNrZ3JvdW5kLCAkYmFja2dyb3VuZC1ob3ZlciwgJGNvbG9yKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBob2xsb3cge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ob2xsb3ctc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoJGJhY2tncm91bmQpO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuQG1peGluIGJ1dHRvbi1zdHlsZShcbiAgJGJhY2tncm91bmQ6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRidXR0b24tYmFja2dyb3VuZC1ob3ZlcixcbiAgJGNvbG9yOiAkYnV0dG9uLWNvbG9yLFxuICAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6ICRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3Ncbikge1xuICBAaWYgJGNvbG9yID09IGF1dG8ge1xuICAgICRjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRidXR0b24tY29sb3IsICRidXR0b24tY29sb3ItYWx0KSk7XG4gIH1cblxuICBAaWYgJGJhY2tncm91bmQtaG92ZXIgPT0gYXV0byB7XG4gICAgJGJhY2tncm91bmQtaG92ZXI6IHNjYWxlLWNvbG9yKCRiYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAkYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3MpO1xuICB9XG5cbiAgLy8gRGVmYXVsdCBhbmQgZGlzYWJsZWQgc3RhdGVzXG4gICYsXG4gICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkOmhvdmVyLCAmW2Rpc2FibGVkXTpob3ZlcixcbiAgJi5kaXNhYmxlZDpmb2N1cywgJltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24taG9sbG93LXN0eWxlYCBmb3IgdGhlIGZpbGxpbmcgc3R5bGVzLlxuQG1peGluIGJ1dHRvbi1ob2xsb3cge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZSBvZiBhIGhvbGxvdyBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBhbmQgYm9yZGVyIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGhvdmVyLWxpZ2h0bmVzcyBbJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXSAtIENvbG9yIGxpZ2h0bmVzcyBvbiBob3Zlci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYm9yZGVyLXdpZHRoIFskYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhdIC0gQm9yZGVyIHdpZHRoIG9mIHRoZSBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWhvbGxvdy1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzcyxcbiAgJGJvcmRlci13aWR0aDogJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6ICRib3JkZXItd2lkdGggc29saWQgJGNvbG9yO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgICBjb2xvcjogJGNvbG9yLWhvdmVyO1xuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBiYXNlIHN0eWxlcyBvZiBhIGNsZWFyIGJ1dHRvbi5cbi8vLyBTZWUgbWl4aW4gYGJ1dHRvbi1jbGVhci1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24tY2xlYXIge1xuICAmLCAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7XG4gICAgJiwgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWJhY2tncm91bmRdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG5AbWl4aW4gYnV0dG9uLWNsZWFyLXN0eWxlKFxuICAkY29sb3I6ICRidXR0b24tYmFja2dyb3VuZCxcbiAgJGhvdmVyLWxpZ2h0bmVzczogJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgJGNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6ICRob3Zlci1saWdodG5lc3MpO1xuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gQWRkcyBkaXNhYmxlZCBzdHlsZXMgdG8gYSBidXR0b24gYnkgZmFkaW5nIHRoZSBlbGVtZW50IGFuZCByZXNldGluZyB0aGUgY3Vyc29yLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb3BhY2l0eSBbJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXSAtIE9wYWNpdHkgb2YgdGhlIGRpc2FibGVkIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24tZGlzYWJsZWQoXG4gICRvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWRcbikge1xuICBvcGFjaXR5OiAkYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi8vLyBBZGRzIGEgZHJvcGRvd24gYXJyb3cgdG8gYSBidXR0b24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIFswLjRlbV0gLSBTaXplIG9mIHRoZSBhcnJvdy4gV2UgcmVjb21tZW5kIHVzaW5nIGFuIGBlbWAgdmFsdWUgc28gdGhlIHRyaWFuZ2xlIHNjYWxlcyB3aGVuIHVzZWQgaW5zaWRlIGRpZmZlcmVudCBzaXplcyBvZiBidXR0b25zLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbd2hpdGVdIC0gQ29sb3Igb2YgdGhlIGFycm93LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkb2Zmc2V0IFskYnV0dG9uLXBhZGRpbmddIC0gRGlzdGFuY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0IG9mIHRoZSBidXR0b24uIERlZmF1bHRzIHRvIHdoYXRldmVyIHRoZSByaWdodCBwYWRkaW5nIG9mIGEgYnV0dG9uIGlzLlxuQG1peGluIGJ1dHRvbi1kcm9wZG93bihcbiAgJHNpemU6IDAuNGVtLFxuICAkY29sb3I6ICR3aGl0ZSxcbiAgJG9mZnNldDogZ2V0LXNpZGUoJGJ1dHRvbi1wYWRkaW5nLCByaWdodClcbikge1xuICAmOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRzaXplLCAkY29sb3IsIGRvd24pO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtOyAvLyBBbGlnbnMgdGhlIGFycm93IHdpdGggdGhlIHRleHQgb2YgdGhlIGJ1dHRvblxuXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtcmlnaHR9O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06ICRvZmZzZXQ7XG4gIH1cbn1cblxuLy8vIEFkZHMgYWxsIHN0eWxlcyBmb3IgYSBidXR0b24uIEZvciBtb3JlIGdyYW51bGFyIGNvbnRyb2wgb3ZlciBzdHlsZXMsIHVzZSB0aGUgaW5kaXZpZHVhbCBidXR0b24gbWl4aW5zLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGV4cGFuZCBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBtYWtlIHRoZSBidXR0b24gZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJ1dHRvbiBvbiBob3Zlci4gU2V0IHRvIGBhdXRvYCB0byBoYXZlIHRoZSBtaXhpbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgaG92ZXIgY29sb3IuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYnV0dG9uLWNvbG9yXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi4gU2V0IHRvIGBhdXRvYCB0byBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlIGEgY29sb3IgYmFzZWQgb24gdGhlIGJhY2tncm91bmQgY29sb3IuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3R5bGUgW3NvbGlkXSAtIFNldCB0byBgaG9sbG93YCB0byBjcmVhdGUgYSBob2xsb3cgYnV0dG9uLiBUaGUgY29sb3IgZGVmaW5lZCBpbiBgJGJhY2tncm91bmRgIHdpbGwgYmUgdXNlZCBhcyB0aGUgcHJpbWFyeSBjb2xvciBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbihcbiAgJGV4cGFuZDogZmFsc2UsXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJHN0eWxlOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJHN0eWxlKTtcbiAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJHN0eWxlLCAkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG5cbiAgQGlmICRleHBhbmQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYnV0dG9uIHtcbiAgLmJ1dHRvbiB7XG4gICAgQGluY2x1ZGUgYnV0dG9uKCRzdHlsZTogbm9uZSk7XG5cbiAgICAvLyBTaXplc1xuICAgIEBlYWNoICRzaXplLCAkdmFsdWUgaW4gbWFwLXJlbW92ZSgkYnV0dG9uLXNpemVzLCBkZWZhdWx0KSB7XG4gICAgICAmLiN7JHNpemV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5leHBhbmRlZCB7IEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7IH1cblxuICAgIEBpZiAkYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQge1xuICAgICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gb25seSkge1xuICAgICAgICAgICYuI3skc2l6ZX0tb25seS1leHBhbmRlZCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoI3skc2l6ZX0gZG93bikge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1kb3duLWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9KSB7XG4gICAgICAgICAgICAmLiN7JHNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJHNlbGVjdG9yOiBpZigkYnV0dG9uLWZpbGwgPT0gJGZpbGxpbmcsIG51bGwsICcuI3skZmlsbGluZ30nKTtcblxuICAgICAgJiN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRmaWxsaW5nKTtcbiAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEJ1dHRvbiB3aXRoIGRyb3Bkb3duIGFycm93IG9ubHlcbiAgICAmLmFycm93LW9ubHk6OmFmdGVyIHtcbiAgICAgIHRvcDogLTAuMWVtO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIH1cbiAgfVxuXG4gIGEuYnV0dG9uIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBidXR0b24tZ3JvdXBcbi8vLy9cblxuLy8vIE1hcmdpbiBmb3IgYnV0dG9uIGdyb3Vwcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNYXJnaW4gYmV0d2VlbiBidXR0b25zIGluIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLXNwYWNpbmc6IDFweCAhZGVmYXVsdDtcblxuLy8vIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3I6ICcuYnV0dG9uJyAhZGVmYXVsdDtcblxuLy8vIE1heGltdW0gbnVtYmVyIG9mIGJ1dHRvbnMgdGhhdCBjYW4gYmUgaW4gYW4gZXZlbi13aWR0aCBidXR0b24gZ3JvdXAuIChPbmx5IG5lZWRlZCB3aGVuICRnbG9iYWwtZmxleGJveDogZmFsc2U7KVxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbmdyb3VwLWV4cGFuZC1tYXg6IDYgIWRlZmF1bHQ7XG5cbi8vLyBEZXRlcm1pbmVzIGlmICRidXR0b24tcmFkaXVzIGlzIGFwcGxpZWQgdG8gZWFjaCBidXR0b24gb3IgdGhlIGJ1dHRvbiBncm91cCBhcyBhIHdob2xlLiBVc2UgJGdsb2JhbC1yYWRpdXMgaW4gX3NldHRpbmdzLnNjc3MgdG8gY2hhbmdlIHJhZGl1cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2g6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBBZGQgc3R5bGVzIGZvciBhIGJ1dHRvbiBncm91cCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRjaGlsZC1zZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzcGFjaW5nIFskYnV0dG9uZ3JvdXAtc3BhY2luZ10gLSBTcGFjaW5nIGJldHdlZW4gYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAoXG4gICRjaGlsZC1zZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkc3BhY2luZzogJGJ1dHRvbmdyb3VwLXNwYWNpbmdcbikge1xuICBtYXJnaW4tYm90dG9tOiAkYnV0dG9uZ3JvdXAtbWFyZ2luO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIGZsZXgtZ3JvdzogMTtcblxuICAgICY6OmJlZm9yZSxcbiAgICAmOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBub25lOyAvLyBEaXNhYmxlIGNsZWFyZml4XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBmb250LXNpemU6IDA7XG4gIH1cblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAjeyRjaGlsZC1zZWxlY3Rvcn0ge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG4gICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICB9XG5cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgfVxuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGJ1dHRvbi1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRidXR0b24tcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIE1ha2UgYnV0dG9ucyBib25kZWQgd2l0aG91dCBnYXAgYmV0d2VlbiB0aGVtLiBCb3JkZXJzIGJldHdlZW4gYnV0dG9ucyBhcmUgbWVyZ2VkXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLW5vLWdhcHMoXG4gICRzZWxlY3RvcjogJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yLFxuICAkYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGhcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiByZW0tY2FsYygtJGJvcmRlci13aWR0aCk7XG5cbiAgICArICN7JHNlbGVjdG9yfSB7XG4gICAgICBib3JkZXItI3skZ2xvYmFsLWxlZnR9LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBmdWxsLXdpZHRoIGJ1dHRvbiBncm91cCwgbWFraW5nIGVhY2ggYnV0dG9uIGVxdWFsIHdpZHRoLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcl0gLSBTZWxlY3RvciBmb3IgdGhlIGJ1dHRvbnMgaW5zaWRlIGEgYnV0dG9uIGdyb3VwLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3BhY2luZyBbJGJ1dHRvbmdyb3VwLXNwYWNpbmddIC0gU3BhY2luZyBiZXR3ZWVuIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG5AbWl4aW4gYnV0dG9uLWdyb3VwLWV4cGFuZChcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3IsXG4gICRzcGFjaW5nOiAkYnV0dG9uZ3JvdXAtc3BhY2luZyxcbiAgJGNvdW50OiBudWxsXG4pIHtcbiAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAtJHNwYWNpbmc7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTsgLy8gRGlzYWJsZSBjbGVhcmZpeFxuICAgIH1cbiAgfVxuXG4gICN7JHNlbGVjdG9yfSB7XG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAvLyBPbmUgY2hpbGRcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gVHdvIG9yIG1vcmUgY2hpbGRyZWVuXG4gICAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRidXR0b25ncm91cC1leHBhbmQtbWF4IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZDpudGgtbGFzdC1jaGlsZCgjeyRpfSkge1xuICAgICAgICAgICYsICY6Zmlyc3QtY2hpbGQ6bnRoLWxhc3QtY2hpbGQoI3skaX0pIH4gI3skc2VsZWN0b3J9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKCN7cGVyY2VudGFnZShkaXZpZGUoMSwgJGkpKX0gLSAjeyRzcGFjaW5nfSk7XG4gICAgICAgICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZyAqIC0kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIFN0YWNrcyB0aGUgYnV0dG9ucyBpbiBhIGJ1dHRvbiBncm91cC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJHNlbGVjdG9yIFskYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3JdIC0gU2VsZWN0b3IgZm9yIHRoZSBidXR0b25zIGluc2lkZSB0aGUgYnV0dG9uIGdyb3VwLlxuQG1peGluIGJ1dHRvbi1ncm91cC1zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIEBpZiBub3QgJGJ1dHRvbmdyb3VwLXJhZGl1cy1vbi1lYWNoIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1sZWZ0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItdG9wLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtcmlnaHR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBVbi1zdGFja3MgdGhlIGJ1dHRvbnMgaW4gYSBidXR0b24gZ3JvdXAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yXSAtIFNlbGVjdG9yIGZvciB0aGUgYnV0dG9ucyBpbnNpZGUgdGhlIGJ1dHRvbiBncm91cC5cbkBtaXhpbiBidXR0b24tZ3JvdXAtdW5zdGFjayhcbiAgJHNlbGVjdG9yOiAkYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3Jcbikge1xuICAjeyRzZWxlY3Rvcn0ge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgQGlmIG5vdCAkYnV0dG9uZ3JvdXAtcmFkaXVzLW9uLWVhY2gge1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b20tI3skZ2xvYmFsLWxlZnR9LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtI3skZ2xvYmFsLXJpZ2h0fS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICAgICAgICBib3JkZXItYm90dG9tLSN7JGdsb2JhbC1yaWdodH0tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICAgICAgYm9yZGVyLWJvdHRvbS0jeyRnbG9iYWwtbGVmdH0tcmFkaXVzOiAwO1xuICAgICAgfVxuICAgIH1cblxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbi1ncm91cCB7XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cDtcblxuICAgIC8vIFNpemVzXG4gICAgQGVhY2ggJHNpemUsICR2YWx1ZSBpbiBtYXAtcmVtb3ZlKCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpIHtcbiAgICAgICYuI3skc2l6ZX0gI3skYnV0dG9uZ3JvdXAtY2hpbGQtc2VsZWN0b3J9IHtcbiAgICAgICAgZm9udC1zaXplOiAkdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBHcm91cFxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWdyb3VwLWV4cGFuZDtcbiAgICB9XG5cbiAgICAvLyBTb2xpZCwgaG9sbG93ICYgY2xlYXIgc3R5bGVzXG4gICAgQGVhY2ggJGZpbGxpbmcgaW4gKHNvbGlkIGhvbGxvdyBjbGVhcikge1xuICAgICAgJGJhc2Utc2VsZWN0b3I6IGlmKCRidXR0b24tZmlsbCA9PSAkZmlsbGluZywgbnVsbCwgJy4jeyRmaWxsaW5nfScpO1xuXG4gICAgICAmI3skYmFzZS1zZWxlY3Rvcn0ge1xuICAgICAgICAvLyBEbyBub3QgZ2VuZXJhdGUgYnV0dG9uIGJhc2Ugc3R5bGVzIGZvciB0aGUgZGVmYXVsdCBmaWxsaW5nXG4gICAgICAgIEBpZigkYnV0dG9uLWZpbGwgIT0gJGZpbGxpbmcpIHtcbiAgICAgICAgICAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwoJGZpbGxpbmcpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGJ1dHRvbi1wYWxldHRlIHtcbiAgICAgICAgICBAaWYoJGJ1dHRvbi1maWxsICE9ICRmaWxsaW5nKSB7XG4gICAgICAgICAgICAkaW5kaXZpZHVhbC1zZWxlY3RvcjogJyAjeyRidXR0b25ncm91cC1jaGlsZC1zZWxlY3Rvcn0uI3tcIlwiICsgJG5hbWV9JztcbiAgICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSwgJiN7JGluZGl2aWR1YWwtc2VsZWN0b3J9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWZpbGwtc3R5bGUoJGZpbGxpbmcsICRjb2xvciwgYXV0bywgYXV0byk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICYuI3tcIlwiICsgJG5hbWV9ICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nLCAkY29sb3IsIGF1dG8sIGF1dG8pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJi5uby1nYXBzIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1uby1nYXBzO1xuICAgIH1cblxuICAgICYuc3RhY2tlZCxcbiAgICAmLnN0YWNrZWQtZm9yLXNtYWxsLFxuICAgICYuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1zdGFjaztcblxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC1leHBhbmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5zdGFja2VkLWZvci1zbWFsbCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZ3JvdXAtdW5zdGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1ncm91cC11bnN0YWNrO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICN7JGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBjbG9zZS1idXR0b25cbi8vLy9cblxuLy8vIERlZmF1bHQgcG9zaXRpb24gb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVGhlIGZpcnN0IHZhbHVlIHNob3VsZCBiZSBgcmlnaHRgIG9yIGBsZWZ0YCwgYW5kIHRoZSBzZWNvbmQgdmFsdWUgc2hvdWxkIGJlIGB0b3BgIG9yIGBib3R0b21gLlxuLy8vIEB0eXBlIExpc3RcbiRjbG9zZWJ1dHRvbi1wb3NpdGlvbjogcmlnaHQgdG9wICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjbG9zZWJ1dHRvbi16LWluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEJ1dHRvbiBzaXplIHRvIHVzZSBhcyBkZWZhdWx0XG4vLy8gQHR5cGUgU3RyaW5nXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tc2l6ZVxuLy8vIEBzZWUgJGNsb3NlYnV0dG9uLW9mZnNldC1ob3Jpem9udGFsXG4vLy8gQHNlZSAkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsXG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBSaWdodCAob3IgbGVmdCkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBUb3AgKG9yIGJvdHRvbSkgb2Zmc2V0KHMpIGZvciBhIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBOdW1iZXJ8TWFwXG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKSAhZGVmYXVsdDtcblxuLy8vIFNpemUocykgb2YgdGhlIGNsb3NlIGJ1dHRvbi4gVXNlZCB0byBnZW5lcmF0ZSBzaXppbmcgbW9kaWZpZXJzLlxuLy8vIEB0eXBlIE51bWJlcnxNYXBcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxpbmUtaGVpZ2h0IG9mIHRoZSBjbG9zZSBidXR0b24uIEl0IGFmZmVjdHMgdGhlIHNwYWNpbmcgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2xvc2VidXR0b24tbGluZWhlaWdodDogMSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgdGhlIGNsb3NlIGJ1dHRvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgY2xvc2UgYnV0dG9uIHdoZW4gYmVpbmcgaG92ZXJlZCBvbi5cbi8vLyBAdHlwZSBDb2xvclxuJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyOiAkYmxhY2sgIWRlZmF1bHQ7XG5cblxuLy8vIEdldCB0aGUgc2l6ZSBhbmQgcG9zaXRpb24gZm9yIGEgY2xvc2UgYnV0dG9uLiBJZiB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIsIHRoZSBudW1iZXIgaXMgcmV0dXJuZWQuIElmIHRoZSBpbnB1dCB2YWx1ZSBpcyBhIGNvbmZpZyBtYXAgYW5kIHRoZSBtYXAgaGFzIHRoZSBrZXkgYCRzaXplYCwgdGhlIHZhbHVlIGlzIHJldHVybmVkLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkdmFsdWUgLSBBIG51bWJlciBvciBtYXAgdGhhdCByZXByZXNlbnRzIHRoZSBzaXplIG9yIHBvc2l0aW9uIHZhbHVlKHMpIG9mIHRoZSBjbG9zZSBidXR0b24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIFRoZSBzaXplIG9mIHRoZSBjbG9zZSBidXR0b24gdG8gdXNlLlxuLy8vXG4vLy8gQHJldHVybiB7TnVtYmVyfSBUaGUgZ2l2ZW4gbnVtYmVyIG9yIHRoZSB2YWx1ZSBmb3VuZCBpbiB0aGUgbWFwLlxuQGZ1bmN0aW9uIC16Zi1nZXQtc2l6ZS12YWwoJHZhbHVlLCAkc2l6ZSkge1xuICAvLyBDaGVjayBpZiB0aGUgdmFsdWUgaXMgYSBudW1iZXJcbiAgQGlmIHR5cGUtb2YoJHZhbHVlKSA9PSAnbnVtYmVyJyB7XG4gICAgLy8gSWYgaXQgaXMsIGp1c3QgcmV0dXJuIHRoZSBudW1iZXJcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIENoZWNrIGlmIHRoZSBzaXplIG5hbWUgZXhpc3RzIGluIHRoZSB2YWx1ZSBtYXBcbiAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJHZhbHVlLCAkc2l6ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJHZhbHVlLCAkc2l6ZSk7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHNpemUgYW5kIHBvc2l0aW9uIG9mIGEgY2xvc2UgYnV0dG9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgW21lZGl1bV0gLSBUaGUgc2l6ZSB0byB1c2UuIFNldCB0byBgc21hbGxgIHRvIGNyZWF0ZSBhIHNtYWxsIGNsb3NlIGJ1dHRvbi4gVGhlICdtZWRpdW0nIHZhbHVlcyBkZWZpbmVkIGluIGAkY2xvc2VidXR0b24tKmAgdmFyaWFibGVzIHdpbGwgYmUgdXNlZCBhcyB0aGUgZGVmYXVsdCBzaXplIGFuZCBwb3NpdGlvbiBvZiB0aGUgY2xvc2UgYnV0dG9uLlxuQG1peGluIGNsb3NlLWJ1dHRvbi1zaXplKCRzaXplKSB7XG4gICR4OiBudGgoJGNsb3NlYnV0dG9uLXBvc2l0aW9uLCAxKTtcbiAgJHk6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDIpO1xuXG4gICN7JHh9OiAtemYtZ2V0LXNpemUtdmFsKCRjbG9zZWJ1dHRvbi1vZmZzZXQtaG9yaXpvbnRhbCwgJHNpemUpO1xuICAjeyR5fTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsLCAkc2l6ZSk7XG4gIGZvbnQtc2l6ZTogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tc2l6ZSwgJHNpemUpO1xuICBsaW5lLWhlaWdodDogLXpmLWdldC1zaXplLXZhbCgkY2xvc2VidXR0b24tbGluZWhlaWdodCwgJHNpemUpO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uLCB1c2luZyB0aGUgc3R5bGVzIGluIHRoZSBzZXR0aW5ncyB2YXJpYWJsZXMuXG5AbWl4aW4gY2xvc2UtYnV0dG9uIHtcbiAgJHg6IG50aCgkY2xvc2VidXR0b24tcG9zaXRpb24sIDEpO1xuICAkeTogbnRoKCRjbG9zZWJ1dHRvbi1wb3NpdGlvbiwgMik7XG5cbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkY2xvc2VidXR0b24tei1pbmRleDtcbiAgY29sb3I6ICRjbG9zZWJ1dHRvbi1jb2xvcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlYnV0dG9uLWNvbG9yLWhvdmVyO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbiB7XG4gIC5jbG9zZS1idXR0b24ge1xuICAgIC8vIFVzZSBieSBkZWZhdWx0IHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgZGVmYXVsdCBzaXplXG4gICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRjbG9zZWJ1dHRvbi1kZWZhdWx0LXNpemV9O1xuXG4gICAgQGluY2x1ZGUgY2xvc2UtYnV0dG9uO1xuXG4gICAgLy8gR2VuZXJhdGUgYSBwbGFjZWhvbGRlciBhbmQgYSBjbGFzcyBmb3IgZWFjaCBzaXplXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRjbG9zZWJ1dHRvbi1zaXplIHtcbiAgICAgIEBhdC1yb290IHtcbiAgICAgICAgJXpmLWNsb3NlLWJ1dHRvbi0tI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGNsb3NlLWJ1dHRvbi1zaXplKCRuYW1lKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgQGV4dGVuZCAlemYtY2xvc2UtYnV0dG9uLS0jeyRuYW1lfTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBsYWJlbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIENvbG9yXG4kbGFiZWwtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEFsdGVybmF0ZSB0ZXh0IGNvbG9yIGZvciBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRsYWJlbC1jb2xvci1hbHQ6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIENvbG9yaW5nIGNsYXNzZXMuIEEgbWFwIG9mIGNsYXNzZXMgdG8gb3V0cHV0IGluIHlvdXIgQ1NTLCBsaWtlIGAuc2Vjb25kYXJ5YCwgYC5zdWNjZXNzYCwgYW5kIHNvIG9uLlxuLy8vIEB0eXBlIE1hcFxuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxhYmVsLWZvbnQtc2l6ZTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBvZiBsYWJlbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBiYXNlIHN0eWxlcyBmb3IgYSBsYWJlbC5cbkBtaXhpbiBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogJGxhYmVsLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogJGxhYmVsLXJhZGl1cztcblxuICBmb250LXNpemU6ICRsYWJlbC1mb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWxhYmVsIHtcbiAgLmxhYmVsIHtcbiAgICBAaW5jbHVkZSBsYWJlbDtcblxuICAgIGJhY2tncm91bmQ6ICRsYWJlbC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbGFiZWwtY29sb3I7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRsYWJlbC1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgICAgICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkY29sb3IsICgkbGFiZWwtY29sb3IsICRsYWJlbC1jb2xvci1hbHQpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHByb2dyZXNzIGJhciBjb250YWluZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAkcHJvZ3Jlc3MtaGVpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTtcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByb2dyZXNzLWJhY2tncm91bmQ7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGlubmVyIG1ldGVyIG9mIGEgcHJvZ3Jlc3MgYmFyLlxuQG1peGluIHByb2dyZXNzLW1ldGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1tZXRlci1iYWNrZ3JvdW5kO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGV4dCBpbiB0aGUgcHJvZ3Jlc3MgbWV0ZXIuXG5AbWl4aW4gcHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIEBpbmNsdWRlIGFic29sdXRlLWNlbnRlcjtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIEBpZiBoYXMtdmFsdWUoJHByb2dyZXNzLXJhZGl1cykge1xuICAgIGJvcmRlci1yYWRpdXM6ICRwcm9ncmVzcy1yYWRpdXM7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tcHJvZ3Jlc3MtYmFyIHtcbiAgLy8gUHJvZ3Jlc3MgYmFyXG4gIC5wcm9ncmVzcyB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkZm91bmRhdGlvbi1wYWxldHRlIHtcbiAgICAgICYuI3tcIlwiICsgJG5hbWV9IHtcbiAgICAgICAgLnByb2dyZXNzLW1ldGVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJbm5lciBtZXRlclxuICAucHJvZ3Jlc3MtbWV0ZXIge1xuICAgIEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyO1xuICB9XG5cbiAgLy8gSW5uZXIgbWV0ZXIgdGV4dFxuICAucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXItdGV4dDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBbVE9ET10gQ2hlY2sgaG93IHBsdWdpbiBjb25maXJtcyBkaXNhYmxlZCBvciB2ZXJ0aWNhbCBzdGF0dXNcbi8vIFtUT0RPXSBDaGVjayBpZiB0cmFuc2l0aW9uOiBhbGw7IGlzIG5lY2Vzc2FyeVxuXG4vLy8vXG4vLy8gQGdyb3VwIHNsaWRlclxuLy8vL1xuXG4vLy8gRGVmYXVsdCBzbGlkZXIgd2lkdGggb2YgYSB2ZXJ0aWNhbCBzbGlkZXIuIChEb2Vzbid0IGFwcGx5IHRvIHRoZSBuYXRpdmUgc2xpZGVyLilcbi8vLyBAdHlwZSBOdW1iZXJcbiRzbGlkZXItd2lkdGgtdmVydGljYWw6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydGllcyB0byBhcHBseSB0byB0aGUgc2xpZGVyIGhhbmRsZSBhbmQgZmlsbC4gKERvZXNuJ3QgYXBwbHkgdG8gdGhlIG5hdGl2ZSBzbGlkZXIuKVxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRzbGlkZXItdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3Igc2xpZGVycy5cbkBtaXhpbiBzbGlkZXItY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6ICRzbGlkZXItaGVpZ2h0O1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRzbGlkZXItYmFja2dyb3VuZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xufVxuXG4vLy8gQWRkcyB0aGUgZ2VuZXJhbCBzdHlsZXMgZm9yIGFjdGl2ZSBmaWxsIGZvciBzbGlkZXJzLlxuQG1peGluIHNsaWRlci1maWxsIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJHNsaWRlci1oZWlnaHQ7XG5cbiAgYmFja2dyb3VuZC1jb2xvcjogJHNsaWRlci1maWxsLWJhY2tncm91bmQ7XG4gIHRyYW5zaXRpb246ICRzbGlkZXItdHJhbnNpdGlvbjtcblxuICAmLmlzLWRyYWdnaW5nIHtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMHMgbGluZWFyO1xuICB9XG59XG5cbi8vLyBBZGRzIHRoZSBnZW5lcmFsIHN0eWxlcyBmb3IgdGhlIHNsaWRlciBoYW5kbGVzLlxuQG1peGluIHNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IGdyYWI7XG5cbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogJHNsaWRlci1oYW5kbGUtd2lkdGg7XG4gIGhlaWdodDogJHNsaWRlci1oYW5kbGUtaGVpZ2h0O1xuXG4gIGJvcmRlci1yYWRpdXM6ICRzbGlkZXItcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGVyLWhhbmRsZS1iYWNrZ3JvdW5kO1xuICB0cmFuc2l0aW9uOiAkc2xpZGVyLXRyYW5zaXRpb247XG4gIHRvdWNoLWFjdGlvbjogbWFuaXB1bGF0aW9uO1xuXG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHNjYWxlLWNvbG9yKCRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuICB9XG5cbiAgJi5pcy1kcmFnZ2luZyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbiAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICB9XG59XG5cbkBtaXhpbiBzbGlkZXItZGlzYWJsZWQge1xuICBvcGFjaXR5OiAkc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbkBtaXhpbiBzbGlkZXItdmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkc2xpZGVyLXdpZHRoLXZlcnRpY2FsO1xuICBoZWlnaHQ6IDEyLjVyZW07XG4gIG1hcmdpbjogMCAxLjI1cmVtO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEsIC0xKTtcblxuICAuc2xpZGVyLWZpbGwge1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogJHNsaWRlci13aWR0aC12ZXJ0aWNhbDtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICB9XG5cbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkc2xpZGVyLWhhbmRsZS1oZWlnaHQ7XG4gICAgaGVpZ2h0OiAkc2xpZGVyLWhhbmRsZS13aWR0aDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc2xpZGVyIHtcbiAgLy8gQ29udGFpbmVyXG4gIC5zbGlkZXIge1xuICAgIEBpbmNsdWRlIHNsaWRlci1jb250YWluZXI7XG4gIH1cblxuICAvLyBGaWxsIGFyZWFcbiAgLnNsaWRlci1maWxsIHtcbiAgICBAaW5jbHVkZSBzbGlkZXItZmlsbDtcbiAgfVxuXG4gIC8vIERyYWdnYWJsZSBoYW5kbGVcbiAgLnNsaWRlci1oYW5kbGUge1xuICAgIEBpbmNsdWRlIHNsaWRlci1oYW5kbGU7XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAuc2xpZGVyLmRpc2FibGVkLFxuICAuc2xpZGVyW2Rpc2FibGVkXSB7XG4gICAgQGluY2x1ZGUgc2xpZGVyLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gVmVydGljYWwgc2xpZGVyXG4gIC5zbGlkZXIudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHNsaWRlci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFJUTCBzdXBwb3J0XG4gIEBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgLnNsaWRlcjpub3QoLnZlcnRpY2FsKSB7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKC0xLCAxKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBzd2l0Y2hcbi8vLy9cblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBhIHN3aXRjaCBvbiBmb2N1cy5cbi8vLyBAdHlwZSBDb2xvclxuJHN3aXRjaC1iYWNrZ3JvdW5kLWZvY3VzOiBzY2FsZS1jb2xvcigkc3dpdGNoLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xMCUpICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2guXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBhY3RpdmUgY29sb3Igb2YgYSBzd2l0Y2ggb24gZm9jdXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmUtZm9jdXM6IHNjYWxlLWNvbG9yKCRzd2l0Y2gtYmFja2dyb3VuZC1hY3RpdmUsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodDogMnJlbSAhZGVmYXVsdDtcblxuLy8vIEhlaWdodCBvZiBhIHN3aXRjaCB3aXRoIC50aW55IGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG9mIGEgc3dpdGNoIHdpdGggLnNtYWxsIGNsYXNzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBIZWlnaHQgb2YgYSBzd2l0Y2ggd2l0aCAubGFyZ2UgY2xhc3MuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIHJhZGl1cyBvZiB0aGUgc3dpdGNoXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBib3JkZXIgYXJvdW5kIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW1hcmdpbjogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lciBhbmQgcGFkZGxlLlxuLy8vIEB0eXBlIENvbG9yXG4kc3dpdGNoLXBhZGRsZS1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gYSBzd2l0Y2ggcGFkZGxlIGFuZCB0aGUgZWRnZSBvZiB0aGUgYm9keS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIGJvcmRlciByYWRpdXMgb2YgdGhlIHN3aXRjaCBwYWRkbGVcbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBzd2l0Y2ggdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dCAhZGVmYXVsdDtcblxuLy8vIE9wYWNpdHkgb2YgYSBkaXNhYmxlZCBzd2l0Y2guXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3dpdGNoLW9wYWNpdHktZGlzYWJsZWQ6IDAuNSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciBmb3IgYSBkaXNhYmxlZCBzd2l0Y2guXG4vLy8gQHR5cGUgQ3Vyc29yXG4kc3dpdGNoLWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cbi8vIG1ha2UgdGhlbSB2YXJpYWJsZXNcbi8vIGFzayBhYm91dCBhY2Nlc3NpYmlsaXR5IG9uIGxhYmVsXG4vLyBjaGFuZ2UgY2xhc3MgbmFtZSBmb3IgdGV4dFxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGNvbnRhaW5lciBjbGFzcy5cbkBtaXhpbiBzd2l0Y2gtY29udGFpbmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAkc3dpdGNoLW1hcmdpbjtcbiAgb3V0bGluZTogMDtcblxuICAvLyBUaGVzZSBwcm9wZXJ0aWVzIGNhc2NhZGUgZG93biB0byB0aGUgc3dpdGNoIHRleHRcbiAgZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3dpdGNoIGlucHV0LiBBcHBseSB0aGlzIHRvIGFuIGA8aW5wdXQ+YCB3aXRoaW4gYSBzd2l0Y2guXG5AbWl4aW4gc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBiYWNrZ3JvdW5kIGFuZCBwYWRkbGUgb2YgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gYSBgPGxhYmVsPmAgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC1wYWRkbGUge1xuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkc3dpdGNoLXBhZGRsZS1vZmZzZXQgKiAyKTtcbiAgJHBhZGRsZS13aWR0aDogJHN3aXRjaC1oZWlnaHQgLSAoJHN3aXRjaC1wYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtYWN0aXZlLW9mZmVzdDogJHN3aXRjaC13aWR0aCAtICRwYWRkbGUtd2lkdGggLSAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gIGhlaWdodDogJHN3aXRjaC1oZWlnaHQ7XG5cbiAgYm9yZGVyLXJhZGl1czogJHN3aXRjaC1yYWRpdXM7XG4gIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZDtcbiAgdHJhbnNpdGlvbjogJHN3aXRjaC1wYWRkbGUtdHJhbnNpdGlvbjtcblxuICAvLyBSZXNldHRpbmcgdGhlc2UgPGxhYmVsPiBwcmVzZXRzIHNvIHR5cGUgc3R5bGVzIGNhc2NhZGUgZG93blxuICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIE5lZWRlZCB0byBvdmVycmlkZSBzcGVjaWZpY2l0eVxuICBpbnB1dCArICYge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIFRoZSBwYWRkbGUgaXRzZWxmXG4gICY6OmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkc3dpdGNoLXBhZGRsZS1vZmZzZXQ7XG5cbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICBib3JkZXItcmFkaXVzOiAkc3dpdGNoLXBhZGRsZS1yYWRpdXM7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDtcbiAgICB0cmFuc2l0aW9uOiAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgLy8gQ2hhbmdlIHRoZSB2aXN1YWwgc3R5bGUgd2hlbiB0aGUgc3dpdGNoIGlzIGFjdGl2ZVxuICBpbnB1dDpjaGVja2VkIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgICN7JGdsb2JhbC1sZWZ0fTogJHBhZGRsZS1hY3RpdmUtb2ZmZXN0O1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gQ2hhbmdlIHRoZSB2aXN1YWwgc3R5bGUgd2hlbiB0aGUgc3dpdGNoIGlzIGZvY3VzZWRcbiAgaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+ICYge1xuICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtYmFja2dyb3VuZC1mb2N1cztcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZDpmb2N1cy12aXNpYmxlIH4gJiB7XG4gICAgYmFja2dyb3VuZDogJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZS1mb2N1cztcbiAgfVxuXG5cbiAgLy8gaW5kaWNhdGUgYSBkaXNhYmxlZCBzd2l0Y2hcbiAgaW5wdXQ6ZGlzYWJsZWQgfiAmIHtcbiAgICBjdXJzb3I6ICRzd2l0Y2gtY3Vyc29yLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6ICRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDtcbiAgfVxuXG4gIGlucHV0OmZvY3VzIH4gJiB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB9XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhY3RpdmUvaW5hY3RpdmUgdGV4dCBpbnNpZGUgYSBzd2l0Y2guIEFwcGx5IHRoaXMgdG8gdGV4dCBlbGVtZW50cyBpbnNpZGUgdGhlIHN3aXRjaCBgPGxhYmVsPmAuXG5AbWl4aW4gc3dpdGNoLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSB0ZXh0IHdpdGhpbiBhIHN3aXRjaC5cbkBtaXhpbiBzd2l0Y2gtdGV4dC1hY3RpdmUge1xuICAjeyRnbG9iYWwtbGVmdH06IDglO1xuICBkaXNwbGF5OiBub25lO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGluYWN0aXZlIHN0YXRlIHRleHQgd2l0aGluIGEgc3dpdGNoLlxuQG1peGluIHN3aXRjaC10ZXh0LWluYWN0aXZlIHtcbiAgI3skZ2xvYmFsLXJpZ2h0fTogMTUlO1xuXG4gIGlucHV0OmNoZWNrZWQgKyBsYWJlbCA+ICYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8vIENoYW5nZXMgdGhlIHNpemUgb2YgYSBzd2l0Y2ggYnkgbW9kaWZ5aW5nIHRoZSBzaXplIG9mIHRoZSBib2R5IGFuZCBwYWRkbGUuIEFwcGx5IHRoaXMgdG8gYSBzd2l0Y2ggY29udGFpbmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZm9udC1zaXplIFsxcmVtXSAtIEZvbnQgc2l6ZSBvZiBsYWJlbCB0ZXh0IHdpdGhpbiB0aGUgc3dpdGNoLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc3dpdGNoLWhlaWdodCBbMnJlbV0gLSBIZWlnaHQgb2YgdGhlIHN3aXRjaCBib2R5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGxlLW9mZnNldCBbMC4yNXJlbV0gLSBTcGFjaW5nIGJldHdlZW4gdGhlIHN3aXRjaCBwYWRkbGUgYW5kIHRoZSBlZGdlIG9mIHRoZSBzd2l0Y2ggYm9keS5cbkBtaXhpbiBzd2l0Y2gtc2l6ZShcbiAgJGZvbnQtc2l6ZTogMXJlbSxcbiAgJHN3aXRjaC1oZWlnaHQ6IDJyZW0sXG4gICRwYWRkbGUtb2Zmc2V0OiAwLjI1cmVtXG4pIHtcblxuICAkc3dpdGNoLXdpZHRoOiAkc3dpdGNoLWhlaWdodCAqIDI7XG4gICRwYWRkbGUtd2lkdGg6ICRzd2l0Y2gtaGVpZ2h0IC0gKCRwYWRkbGUtb2Zmc2V0ICogMik7XG4gICRwYWRkbGUtaGVpZ2h0OiAkc3dpdGNoLWhlaWdodCAtICgkcGFkZGxlLW9mZnNldCAqIDIpO1xuICAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q6ICRzd2l0Y2gtd2lkdGggLSAkcGFkZGxlLXdpZHRoIC0gJHBhZGRsZS1vZmZzZXQ7XG5cbiAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcblxuICAuc3dpdGNoLXBhZGRsZSB7XG4gICAgd2lkdGg6ICRzd2l0Y2gtd2lkdGg7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIH1cblxuICAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICAgIHRvcDogJHBhZGRsZS1vZmZzZXQ7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLW9mZnNldDtcbiAgICB3aWR0aDogJHBhZGRsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRwYWRkbGUtaGVpZ2h0O1xuICB9XG5cbiAgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAkcGFkZGxlLWFjdGl2ZS1vZmZlc3Q7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tc3dpdGNoIHtcbiAgLy8gQ29udGFpbmVyIGNsYXNzXG4gIC5zd2l0Y2gge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1jb250YWluZXI7XG4gICAgaGVpZ2h0OiAkc3dpdGNoLWhlaWdodDtcbiAgfVxuXG4gIC8vIDxpbnB1dD4gZWxlbWVudFxuICAuc3dpdGNoLWlucHV0IHtcbiAgICBAaW5jbHVkZSBzd2l0Y2gtaW5wdXQ7XG4gIH1cblxuICAvLyA8bGFiZWw+IGVsZW1lbnRcbiAgLnN3aXRjaC1wYWRkbGUge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1wYWRkbGU7XG4gIH1cblxuICAvLyBCYXNlIGxhYmVsIHRleHQgc3R5bGVzXG4gICVzd2l0Y2gtdGV4dCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXRleHQ7XG4gIH1cblxuICAvLyBBY3RpdmUgbGFiZWwgdGV4dCBzdHlsZXNcbiAgLnN3aXRjaC1hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWFjdGl2ZTtcbiAgfVxuXG4gIC8vIEluYWN0aXZlIGxhYmVsIHRleHQgc3R5bGVzXG4gIC5zd2l0Y2gtaW5hY3RpdmUge1xuICAgIEBleHRlbmQgJXN3aXRjaC10ZXh0O1xuICAgIEBpbmNsdWRlIHN3aXRjaC10ZXh0LWluYWN0aXZlO1xuICB9XG5cbiAgLy8gU3dpdGNoIHNpemVzXG4gIC5zd2l0Y2gudGlueSB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTApLCAkc3dpdGNoLWhlaWdodC10aW55LCAkc3dpdGNoLXBhZGRsZS1vZmZzZXQpO1xuICB9XG5cbiAgLnN3aXRjaC5zbWFsbCB7XG4gICAgQGluY2x1ZGUgc3dpdGNoLXNpemUocmVtLWNhbGMoMTIpLCAkc3dpdGNoLWhlaWdodC1zbWFsbCwgJHN3aXRjaC1wYWRkbGUtb2Zmc2V0KTtcbiAgfVxuXG4gIC5zd2l0Y2gubGFyZ2Uge1xuICAgIEBpbmNsdWRlIHN3aXRjaC1zaXplKHJlbS1jYWxjKDE2KSwgJHN3aXRjaC1oZWlnaHQtbGFyZ2UsICRzd2l0Y2gtcGFkZGxlLW9mZnNldCk7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIHRhYmxlXG4vLy8vXG5cbkB1c2UgXCJzYXNzOmNvbG9yXCI7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciB0YWJsZSBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlICAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc2NhbGUgZm9yIGRhcmtlbmluZyB0aGUgc3RyaXBlZCB0YWJsZSByb3dzIGFuZCB0aGUgdGFibGUgYm9yZGVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgc3R5bGUgZm9yIHRhYmxlIGJvcmRlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtYm9yZGVyOiAxcHggc29saWQgc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYmxlLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBzY2FsZSBmb3IgZGFya2VuaW5nIHRoZSB0YWJsZSByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2Ygc3RhbmRhcmQgcm93cyBvbiBob3Zlci5cbi8vLyBAdHlwZSBMaXN0XG4kdGFibGUtcm93LWhvdmVyOiBjb2xvci5hZGp1c3QoJHRhYmxlLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0kdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiBzdHJpcGVkIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI6IGNvbG9yLmFkanVzdCgkdGFibGUtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSgkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpKSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgdGFibGVzIGFyZSBzdHJpcGVkIGJ5IGRlZmF1bHQgYW5kIGFuIC51bnN0cmlwZWQgY2xhc3MgaXMgY3JlYXRlZC4gSWYgYGZhbHNlYCwgYSAuc3RyaXBlZCBjbGFzcyBpcyBjcmVhdGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiR0YWJsZS1pcy1zdHJpcGVkOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBzdHJpcGVkIHJvd3MuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3Igc2hvd2luZyB0aGUgc3RyaXBlIG9uIHJvd3Mgb2YgdGhlIHRhYmxlcywgZXhjbHVkaW5nIHRoZSBoZWFkZXIgYW5kIGZvb3Rlci4gSWYgZXZlbiwgdGhlIGV2ZW4gcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBvZGQsIHRoZSBvZGQgcm93cyB3aWxsIGhhdmUgYSBiYWNrZ3JvdW5kIGNvbG9yLiBJZiBlbXB0eSwgb3IgYW55IG90aGVyIHZhbHVlLCB0aGUgdGFibGUgcm93cyB3aWxsIGhhdmUgbm8gc3RyaXBpbmcuXG4vLy8gQHR5cGUgS2V5d29yZFxuJHRhYmxlLXN0cmlwZTogZXZlbiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlYWRlciBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlICogMC41KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgY29sb3Igb2YgaGVhZGVyIHJvd3Mgb24gaG92ZXIuXG4vLy8gQHR5cGUgTGlzdFxuJHRhYmxlLWhlYWQtcm93LWhvdmVyOiBjb2xvci5hZGp1c3QoJHRhYmxlLWhlYWQtYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogLSR0YWJsZS1ob3Zlci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBmb290ZXIgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuLy8vIEB0eXBlIExpc3RcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogY29sb3IuYWRqdXN0KCR0YWJsZS1mb290LWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0kdGFibGUtaG92ZXItc2NhbGUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBoZWFkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGZvb3Rlci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdmFsdWUgZm9yIHNob3dpbmcgdGhlIGhlYWRlciB3aGVuIHVzaW5nIHN0YWNrZWQgdGFibGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHN0YWNrZWQgdGFibGUgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0YWJsZS1zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbkBtaXhpbiAtemYtdGFibGUtc3RyaXBlKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUpIHtcbiAgdHIge1xuICAgIC8vIElmIHN0cmlwZSBpcyBzZXQgdG8gZXZlbiwgZGFya2VuIHRoZSBldmVuIHJvd3MuXG4gICAgQGlmICRzdHJpcGUgPT0gZXZlbiB7XG4gICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gSWYgc3RyaXBlIGlzIHNldCB0byBvZGQsIGRhcmtlbiB0aGUgb2RkIHJvd3MuXG4gICAgQGVsc2UgaWYgJHN0cmlwZSA9PSBvZGQge1xuICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtdW5zdHJpcGUoKSB7XG4gIHRyIHtcbiAgICBib3JkZXItYm90dG9tOiAkdGFibGUtYm9yZGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iYWNrZ3JvdW5kO1xuICB9XG59XG5cbkBtaXhpbiAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsICRpcy1zdHJpcGVkOiAkdGFibGUtaXMtc3RyaXBlZCkge1xuICB0aGVhZCxcbiAgdGJvZHksXG4gIHRmb290IHtcbiAgICBib3JkZXI6ICR0YWJsZS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDYXB0aW9uXG4gIGNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nO1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICB9XG5cbiAgLy8gVGFibGUgaGVhZFxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIFRhYmxlIGZvb3RcbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWJsZS1mb290LWZvbnQtY29sb3I7XG4gIH1cblxuICAvLyBUYWJsZSBoZWFkIGFuZCBmb290XG4gIHRoZWFkLFxuICB0Zm9vdCB7XG4gICAgLy8gUm93cyB3aXRoaW4gaGVhZCBhbmQgZm9vdFxuICAgIHRyIHtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgIC8vIENlbGxzIHdpdGhpbiBoZWFkIGFuZCBmb290XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogJHRhYmxlLXBhZGRpbmc7XG4gICAgICBmb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiAgICAgIHRleHQtYWxpZ246ICN7JGdsb2JhbC1sZWZ0fTtcbiAgICB9XG4gIH1cblxuICAvLyBUYWJsZSByb3dzXG4gIHRib2R5IHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBwYWRkaW5nOiAkdGFibGUtcGFkZGluZztcbiAgICB9XG4gIH1cblxuICAvLyBJZiB0YWJsZXMgYXJlIHN0cmlwZWRcbiAgQGlmICRpcy1zdHJpcGVkID09IHRydWUge1xuICAgIHRib2R5IHtcbiAgICAgIEBpbmNsdWRlIC16Zi10YWJsZS1zdHJpcGUoJHN0cmlwZSk7XG4gICAgfVxuXG4gICAgJi51bnN0cmlwZWQge1xuICAgICAgdGJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmFja2dyb3VuZDtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWYgdGFibGVzIGFyZSBub3Qgc3RyaXBlZFxuICBAZWxzZSBpZiAkaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgdGJvZHkge1xuICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXVuc3RyaXBlKCk7XG4gICAgfVxuXG4gICAgJi5zdHJpcGVkIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgQGluY2x1ZGUgLXpmLXRhYmxlLXN0cmlwZSgkc3RyaXBlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgdGhlIGdlbmVyYWwgc3R5bGVzIGZvciB0YWJsZXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RyaXBlIFskdGFibGUtc3RyaXBlXSAtIFVzZXMga2V5d29yZHMgZXZlbiwgb2RkLCBvciBub25lIHRvIGRhcmtlbiByb3dzIG9mIHRoZSB0YWJsZS4gVGhlIGRlZmF1bHQgdmFsdWUgaXMgZXZlbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZXN0IFtmYWxzZV0gLSBOZWVkZWQgaWYgeW91IG9ubHkgd2FudCB0byBhcHBseSB0aGlzIHRvIGEgc3BlY2lmaWMgdGFibGUuXG5AbWl4aW4gdGFibGUoXG4gICRzdHJpcGU6ICR0YWJsZS1zdHJpcGUsXG4gICRuZXN0OiBmYWxzZVxuKSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbiAgQGlmICRuZXN0IHtcbiAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAYXQtcm9vdCB7XG4gICAgICBAaW5jbHVkZSAtemYtdGFibGUtY2hpbGRyZW4tc3R5bGVzKCRzdHJpcGUpO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyB0aGUgYWJpbGl0eSB0byBob3Jpem9udGFsbHkgc2Nyb2xsIHRoZSB0YWJsZSB3aGVuIHRoZSBjb250ZW50IG92ZXJmbG93cyBob3Jpem9udGFsbHkuXG5AbWl4aW4gdGFibGUtc2Nyb2xsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xufVxuXG4vLy8gU2xpZ2h0bHkgZGFya2VucyB0aGUgdGFibGUgcm93cyBvbiBob3Zlci5cbkBtaXhpbiB0YWJsZS1ob3ZlciB7XG4gIHRoZWFkIHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGhlYWRlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWhlYWQtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIHRhYmxlIGZvb3RlciByb3dzIG9uIGhvdmVyLlxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWZvb3Qtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIHRib2R5IHRyIHtcbiAgICAvL0RhcmtlbnMgdGhlIG5vbi1zdHJpcGVkIHRhYmxlIHJvd3Mgb24gaG92ZXIuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSB0cnVlIHtcbiAgICAvLyBEYXJrZW5zIHRoZSBldmVuIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAaWYoJHRhYmxlLXN0cmlwZSA9PSBldmVuKSB7XG4gICAgICAmOm5vdCgudW5zdHJpcGVkKSB0cjpudGgtb2YtdHlwZShldmVuKTpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERhcmtlbnMgdGhlIG9kZCBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGVsc2UgaWYoJHRhYmxlLXN0cmlwZSA9PSBvZGQpIHtcbiAgICAgICY6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAZWxzZSBpZiAkdGFibGUtaXMtc3RyaXBlZCA9PSBmYWxzZSB7XG4gICAgLy8gRGFya2VucyB0aGUgZXZlbiBzdHJpcGVkIHRhYmxlIHJvd3MuXG4gICAgQGlmKCR0YWJsZS1zdHJpcGUgPT0gZXZlbikge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLXJvdy1zdHJpcGUtaG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRGFya2VucyB0aGUgb2RkIHN0cmlwZWQgdGFibGUgcm93cy5cbiAgICBAZWxzZSBpZigkdGFibGUtc3RyaXBlID09IG9kZCkge1xuICAgICAgJi5zdHJpcGVkIHRyOm50aC1vZi10eXBlKG9kZCk6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtcm93LXN0cmlwZS1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWNrZWQgdGFibGUuIFVzZWZ1bCBmb3Igc21hbGwtc2NyZWVuIGxheW91dHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkaGVhZGVyIFskc2hvdy1oZWFkZXItZm9yLXN0YWNrZWRdIC0gU2hvdyB0aGUgZmlyc3QgdGggb2YgaGVhZGVyIHdoZW4gc3RhY2tlZC5cbkBtaXhpbiB0YWJsZS1zdGFjaygkaGVhZGVyOiAkc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQpIHtcbiAgQGlmICRoZWFkZXIge1xuICAgIHRoZWFkIHtcbiAgICAgIHRoIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICB0aGVhZCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgdHIsXG4gIHRoLFxuICB0ZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10YWJsZSgkbmVzdDogZmFsc2UpIHtcbiAgdGFibGUge1xuICAgIEBpbmNsdWRlIHRhYmxlKCRuZXN0OiAkbmVzdCk7XG4gIH1cblxuICB0YWJsZS5zdGFjayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdGFibGUtc3RhY2stYnJlYWtwb2ludCBkb3duKSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZS1zdGFjaztcbiAgICB9XG4gIH1cblxuICB0YWJsZS5zY3JvbGwge1xuICAgIEBpbmNsdWRlIHRhYmxlLXNjcm9sbDtcbiAgfVxuXG4gIHRhYmxlLmhvdmVyIHtcbiAgICBAaW5jbHVkZSB0YWJsZS1ob3ZlcjtcbiAgfVxuXG4gIC50YWJsZS1zY3JvbGwge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJhZGdlXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRiYWRnZS1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQWx0ZXJuYXRlIHRleHQgY29sb3IgZm9yIGJhZGdlcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJhZGdlLWNvbG9yLWFsdDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgYmFkZ2VzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLXBhZGRpbmc6IDAuM2VtICFkZWZhdWx0O1xuXG4vLy8gTWluaW11bSB3aWR0aCBvZiBhIGJhZGdlLlxuLy8vIEB0eXBlIE51bWJlclxuJGJhZGdlLW1pbndpZHRoOiAyLjFlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBiYWRnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHZW5lcmF0ZXMgdGhlIGJhc2Ugc3R5bGVzIGZvciBhIGJhZGdlLlxuQG1peGluIGJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6ICRiYWRnZS1taW53aWR0aDtcbiAgcGFkZGluZzogJGJhZGdlLXBhZGRpbmc7XG5cbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIGZvbnQtc2l6ZTogJGJhZGdlLWZvbnQtc2l6ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1iYWRnZSB7XG4gIC5iYWRnZSB7XG4gICAgQGluY2x1ZGUgYmFkZ2U7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuXG4gICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYmFkZ2UtcGFsZXR0ZSB7XG4gICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGNvbG9yLCAoJGJhZGdlLWNvbG9yLCAkYmFkZ2UtY29sb3ItYWx0KSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYnJlYWRjcnVtYnNcbi8vLy9cblxuLy8vIE1hcmdpbiBhcm91bmQgYSBicmVhZGNydW1icyBjb250YWluZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIENvbG9yXG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgYWN0aXZlIGJyZWFkY3J1bWIgbGluay5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gT3BhY2l0eSBvZiBkaXNhYmxlZCBicmVhZGNydW1iIGxpbmtzLlxuLy8vIEB0eXBlIE51bWJlclxuJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItZGlzYWJsZWQ6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBiZXR3ZWVuIGJyZWFkY3J1bWIgaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW46IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIG1ha2VzIGJyZWFkY3J1bWIgbGlua3MgdXBwZXJjYXNlLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRicmVhZGNydW1icy1pdGVtLXVwcGVyY2FzZTogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBhIHNlcGVyYXRvciBiZXR3ZWVuIGJyZWFkY3J1bWIgbGlua3MuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBJZiBpdCBleGlzdHMgJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2ggaXMgdXNlZCB0byBidWlsZCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3IuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoYnJlYWRjcnVtYnMtaXRlbS1zbGFzaCkge1xuICAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3I6ICRicmVhZGNydW1icy1pdGVtLXNsYXNoO1xufVxuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvci5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbTogJy8nICFkZWZhdWx0O1xuXG4vLy8gVXNlZCBjaGFyYWN0ZXIgZm9yIHRoZSBicmVhZGNydW1iIHNlcGFyYXRvciBpbiBydGwgbW9kZS5cbi8vLyBAdHlwZSBDb250ZW50XG4kYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbS1ydGw6ICdcXFxcJyAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGJyZWFkY3J1bWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vIElmIGl0IGV4aXN0cyAkYnJlYWRjcnVtYnMtaXRlbS1zbGFzaC1jb2xvciBpcyB1c2VkIHRvIGJ1aWxkICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvci4gU2VlIHRoZSBkb2N1bWVudGF0aW9uLlxuQGlmIHZhcmlhYmxlLWV4aXN0cyhicmVhZGNydW1icy1pdGVtLXNsYXNoLWNvbG9yKSB7XG4gICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1jb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2xhc2gtY29sb3I7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBicmVhZGNydW1icyBjb250YWluZXIsIGFsb25nIHdpdGggdGhlIHN0eWxlcyBmb3IgdGhlIGA8bGk+YCBhbmQgYDxhPmAgZWxlbWVudHMgaW5zaWRlIG9mIGl0LlxuQG1peGluIGJyZWFkY3J1bWJzLWNvbnRhaW5lciB7XG4gIG1hcmdpbjogJGJyZWFkY3J1bWJzLW1hcmdpbjtcbiAgbGlzdC1zdHlsZTogbm9uZTtcblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAvLyBJdGVtIHdyYXBwZXJcbiAgbGkge1xuICAgIGZsb2F0OiAjeyRnbG9iYWwtbGVmdH07XG5cbiAgICBmb250LXNpemU6ICRicmVhZGNydW1icy1pdGVtLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBAaWYgJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgfVxuXG4gICAgQGlmICRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvciB7XG4gICAgICAvLyBOZWVkIHRvIGVzY2FwZSB0aGUgYmFja3NsYXNoXG4gICAgICAkc2VwYXJhdG9yOiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdsdHInLCAkYnJlYWRjcnVtYnMtaXRlbS1zZXBhcmF0b3ItaXRlbSwgJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW0tcnRsKTtcblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW46IDAgJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgY29udGVudDogJHNlcGFyYXRvcjtcbiAgICAgICAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkYnJlYWRjcnVtYnMtaXRlbS1tYXJnaW47XG4gICAgfVxuICB9XG5cbiAgLy8gUGFnZSBsaW5rc1xuICBhIHtcbiAgICBjb2xvcjogJGJyZWFkY3J1bWJzLWl0ZW0tY29sb3I7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1icmVhZGNydW1icyB7XG4gIC5icmVhZGNydW1icyB7XG4gICAgQGluY2x1ZGUgYnJlYWRjcnVtYnMtY29udGFpbmVyO1xuXG4gICAgLmRpc2FibGVkIHtcbiAgICAgIGNvbG9yOiAkYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FsbG91dFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZhZGUgdmFsdWUgZm9yIGNhbGxvdXQgYmFja2dyb3VuZHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGU6IDg1JSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHN0eWxlIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FsbG91dC1ib3JkZXI6IDFweCBzb2xpZCByZ2JhKCRibGFjaywgMC4yNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIENhbGxvdXQgcGFkZGluZ3MuXG4vLy8gQHR5cGUgTWFwXG4kY2FsbG91dC1zaXplczogKFxuICBzbWFsbDogMC41cmVtLFxuICBkZWZhdWx0OiAxcmVtLFxuICBsYXJnZTogM3JlbSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cywgaWYgdGhlIGNhbGxvdXQgaGFzIGEgZGFyayBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1mb250LWNvbG9yLWFsdDogJGJvZHktYmFja2dyb3VuZCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cyBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjYWxsb3V0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBbW91bnQgdG8gdGludCBsaW5rcyB1c2VkIHdpdGhpbiBjb2xvcmVkIHBhbmVscy4gU2V0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSB0aGlzIGZlYXR1cmUuXG4vLy8gQHR5cGUgTnVtYmVyIHwgQm9vbGVhblxuJGNhbGxvdXQtbGluay10aW50OiAzMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2ljIHN0eWxlcyBmb3IgYSBjYWxsb3V0LCBpbmNsdWRpbmcgcGFkZGluZyBhbmQgbWFyZ2luLlxuQG1peGluIGNhbGxvdXQtYmFzZSgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46ICRjYWxsb3V0LW1hcmdpbjtcbiAgcGFkZGluZzogbWFwLWdldCgkY2FsbG91dC1zaXplcywgZGVmYXVsdCk7XG5cbiAgYm9yZGVyOiAkY2FsbG91dC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRjYWxsb3V0LXJhZGl1cztcblxuICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICA+IDpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEdlbmVyYXRlIHF1aWNrIHN0eWxlcyBmb3IgYSBjYWxsb3V0IHVzaW5nIGEgc2luZ2xlIGNvbG9yIGFzIGEgYmFzZWxpbmUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskY2FsbG91dC1iYWNrZ3JvdW5kXSAtIENvbG9yIHRvIHVzZS5cbkBtaXhpbiBjYWxsb3V0LXN0eWxlKCRjb2xvcjogJGNhbGxvdXQtYmFja2dyb3VuZCkge1xuICAkYmFja2dyb3VuZDogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkY2FsbG91dC1iYWNrZ3JvdW5kLWZhZGUpO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkYmFja2dyb3VuZCwgKCRjYWxsb3V0LWZvbnQtY29sb3IsICRjYWxsb3V0LWZvbnQtY29sb3ItYWx0KSk7XG59XG5cbkBtaXhpbiBjYWxsb3V0LXNpemUoJHBhZGRpbmcpIHtcbiAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICBwYWRkaW5nLXJpZ2h0OiAkcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRwYWRkaW5nO1xuICBwYWRkaW5nLWxlZnQ6ICRwYWRkaW5nO1xufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBjYWxsb3V0LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dCgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xuICBAaW5jbHVkZSBjYWxsb3V0LWJhc2U7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWNhbGxvdXQge1xuICAuY2FsbG91dCB7XG4gICAgQGluY2x1ZGUgY2FsbG91dDtcblxuICAgIEBlYWNoICRuYW1lLCAkY29sb3IgaW4gJGZvdW5kYXRpb24tcGFsZXR0ZSB7XG4gICAgICAmLiN7XCJcIiArICRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gbWFwLXJlbW92ZSgkY2FsbG91dC1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgkcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgY2FyZFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgY29sb3IgZm9yIGNhcmRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FyZC1kaXZpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgc3R5bGUuXG4vLy8gQHR5cGUgTGlzdFxuJGNhcmQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNhcmQgc2hhZG93LlxuLy8vIEB0eXBlIExpc3RcbiRjYXJkLXNoYWRvdzogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBMaXN0XG4kY2FyZC1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYXJkLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbi5cbi8vLyBAdHlwZSBudW1iZXJcbiRjYXJkLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIGZvbnQgY29sb3Igb2YgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXJnaW4gLSBCb3R0b20gbWFyZ2luIG9mIHRoZSBjYXJkLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGJvcmRlciAtIEJvcmRlciBhcm91bmQgdGhlIGNhcmQuXG4vLy8gQHBhcmFtIHtMaXN0fSAkcmFkaXVzIC0gYm9yZGVyIHJhZGl1cyBvZiB0aGUgY2FyZC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRzaGFkb3cgLSBib3ggc2hhZG93IG9mIHRoZSBjYXJkLlxuQG1peGluIGNhcmQtY29udGFpbmVyKFxuICAkYmFja2dyb3VuZDogJGNhcmQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkY2FyZC1mb250LWNvbG9yLFxuICAkbWFyZ2luOiAkY2FyZC1tYXJnaW4tYm90dG9tLFxuICAkYm9yZGVyOiAkY2FyZC1ib3JkZXIsXG4gICRyYWRpdXM6ICRjYXJkLWJvcmRlci1yYWRpdXMsXG4gICRzaGFkb3c6ICRjYXJkLXNoYWRvd1xuKSB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBmbGV4LWdyb3c6IDE7XG4gIH1cblxuICBtYXJnaW4tYm90dG9tOiAkbWFyZ2luO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcblxuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJHNoYWRvdztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjb2xvcjogJGNvbG9yO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBkaXZpZGVyLlxuQG1peGluIGNhcmQtZGl2aWRlcihcbiAgJGJhY2tncm91bmQ6ICRjYXJkLWRpdmlkZXItYmFja2dyb3VuZCxcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgcGFkZGluZzogJHBhZGRpbmc7XG4gIGJhY2tncm91bmQ6ICRiYWNrZ3JvdW5kO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FyZCBzZWN0aW9uLlxuQG1peGluIGNhcmQtc2VjdGlvbihcbiAgJHBhZGRpbmc6ICRjYXJkLXBhZGRpbmdcbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICYgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYXJkIHtcbiAgLmNhcmQge1xuICAgIEBpbmNsdWRlIGNhcmQtY29udGFpbmVyO1xuICB9XG5cbiAgLmNhcmQtZGl2aWRlciB7XG4gICAgQGluY2x1ZGUgY2FyZC1kaXZpZGVyO1xuICB9XG5cbiAgLmNhcmQtc2VjdGlvbiB7XG4gICAgQGluY2x1ZGUgY2FyZC1zZWN0aW9uO1xuICB9XG5cbiAgLy8gRm9yIElFIDExIC0gRmxleGJ1Z1xuICAvLyBodHRwczovL2dpdGh1Yi5jb20vcGhpbGlwd2FsdG9uL2ZsZXhidWdzL2lzc3Vlcy83NVxuICAuY2FyZC1pbWFnZSB7XG4gICAgbWluLWhlaWdodDogMXB4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd25cbi8vLy9cblxuLy8vIFBhZGRpbmcgZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIExpc3RcbiRkcm9wZG93bi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBmb3IgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1iYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIGZvciBkcm9wZG93biBwYW5lcy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gV2lkdGggZm9yIGRyb3Bkb3duIHBhbmVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3duLXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZHJvcGRvd24gcGFuZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBkcm9wZG93biBwYW5lcy4gRWFjaCBzaXplIGlzIGEgQ1NTIGNsYXNzIHlvdSBjYW4gYXBwbHkuXG4vLy8gQHR5cGUgTWFwXG4kZHJvcGRvd24tc2l6ZXM6IChcbiAgdGlueTogMTAwcHgsXG4gIHNtYWxsOiAyMDBweCxcbiAgbGFyZ2U6IDQwMHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEFwcGxpZXMgc3R5bGVzIGZvciBhIGJhc2ljIGRyb3Bkb3duLlxuQG1peGluIGRyb3Bkb3duLWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG5cbiAgZGlzcGxheTogbm9uZTtcblxuICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xuICBwYWRkaW5nOiAkZHJvcGRvd24tcGFkZGluZztcblxuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJvcmRlcjogJGRyb3Bkb3duLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJGRyb3Bkb3duLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWJhY2tncm91bmQ7XG5cbiAgZm9udC1zaXplOiAkZHJvcGRvd24tZm9udC1zaXplO1xuXG5cbiAgLy8gQWxsb3cgYW4gaW50ZXJtaXR0ZW50IHN0YXRlIHRvIGRvIHBvc2l0aW9uaW5nIGJlZm9yZSBtYWtpbmcgdmlzaWJsZS5cbiAgJi5pcy1vcGVuaW5nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gICYuaXMtb3BlbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93biB7XG4gIC5kcm9wZG93bi1wYW5lIHtcbiAgICBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXI7XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJGRyb3Bkb3duLXNpemVzIHtcbiAgICAuZHJvcGRvd24tcGFuZSB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgd2lkdGg6ICRzaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHBhZ2luYXRpb25cbi8vLy9cblxuLy8vIEZvbnQgc2l6ZSBvZiBwYWdpbmF0aW9uIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gb2YgdGhlIHBhZ2luYXRpb24gb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgaW5zaWRlIG9mIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApICFkZWZhdWx0O1xuXG4vLy8gUmlnaHQgbWFyZ2luIHRvIHNlcGFyYXRlIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1pdGVtLXNwYWNpbmc6IHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHBhZ2luYXRpb24gaXRlbXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW1zIG9uIGhvdmVyLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBwYWdpbmF0aW9uIGl0ZW0gZm9yIHRoZSBjdXJyZW50IHBhZ2UuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIHBhZ2luYXRpb24gaXRlbSBmb3IgdGhlIGN1cnJlbnQgcGFnZS5cbi8vLyBAdHlwZSBDb2xvclxuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGEgZGlzYWJsZWQgcGFnaW5hdGlvbiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiB0aGUgZWxsaXBzaXMgaW4gYSBwYWdpbmF0aW9uIG1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRwYWdpbmF0aW9uLWVsbGlwc2lzLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgZmFsc2VgLCBkb24ndCBkaXNwbGF5IHBhZ2UgbnVtYmVyIGxpbmtzIG9uIG1vYmlsZSwgb25seSBuZXh0L3ByZXZpb3VzIGxpbmtzXG4vLy8gYW5kIG9wdGlvbmFsbHkgY3VycmVudCBwYWdlIG51bWJlci5cbi8vLyBAdHlwZSBCb29sZWFuXG4kcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBkaXNwbGF5IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIG9uIG1vYmlsZSBldmVuIGlmIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXNgIGlzIHNldCB0byBgZmFsc2VgLlxuLy8vIFRoaXMgcGFyYW1ldGVyIHdpbGwgb25seSBvdmVycmlkZSB0aGUgdmlzaWJpbGl0eSBzZXR0aW5nIG9mIHRoZSBjdXJyZW50IGl0ZW0gZm9yIGAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXM6IGZhbHNlO2AsXG4vLy8gaXQgd2lsbCBub3QgYWZmZWN0IHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyIHZpc2liaWxpdHkgd2hlbiBgJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zYCBpcyBzZXQgdG8gYHRydWVgLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gSWYgYHRydWVgLCBhcnJvd3MgYXJlIGFkZGVkIHRvIHRoZSBuZXh0IGFuZCBwcmV2aW91cyBsaW5rcyBvZiBwYWdpbmF0aW9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwcmV2aW91cyBhcnJvdyB3aGVuIGAkcGFnaW5hdGlvbi1hcnJvd3NgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM6ICdcXDAwQUInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG5leHQgYXJyb3cgd2hlbiBgJHBhZ2luYXRpb24tYXJyb3dzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRwYWdpbmF0aW9uLWFycm93LW5leHQ6ICdcXDAwQkInICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgcGFnaW5hdGlvbiBjb250YWluZXIuIEFwcGx5IHRoaXMgdG8gYSBgPHVsPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIgKFxuICAkbWFyZ2luLWJvdHRvbTogJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbSxcbiAgJGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tZm9udC1zaXplLFxuICAkc3BhY2luZzogJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nLFxuICAkcmFkaXVzOiAkcGFnaW5hdGlvbi1yYWRpdXMsXG4gICRjb2xvcjogJHBhZ2luYXRpb24taXRlbS1jb2xvcixcbiAgJHBhZGRpbmc6ICRwYWdpbmF0aW9uLWl0ZW0tcGFkZGluZyxcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlclxuKSB7XG4gIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gIG1hcmdpbi1ib3R0b206ICRtYXJnaW4tYm90dG9tO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAvLyBMaXN0IGl0ZW1cbiAgbGkge1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcbiAgICBib3JkZXItcmFkaXVzOiAkcmFkaXVzO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcblxuICAgIEBpZiAkcGFnaW5hdGlvbi1tb2JpbGUtaXRlbXMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAmOmxhc3QtY2hpbGQsXG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuXG4gICAgICBAaWYgJHBhZ2luYXRpb24tbW9iaWxlLWN1cnJlbnQtaXRlbSB7XG4gICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQYWdlIGxpbmtzXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogJHJhZGl1cztcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgY3VycmVudCBwYWdpbmF0aW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gYW4gYDxhPmAuXG5AbWl4aW4gcGFnaW5hdGlvbi1pdGVtLWN1cnJlbnQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkYmFja2dyb3VuZC1jdXJyZW50OiAkcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtY3VycmVudCxcbiAgJGNvbG9yLWN1cnJlbnQ6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudFxuKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1jdXJyZW50O1xuICBjb2xvcjogJGNvbG9yLWN1cnJlbnQ7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIGRpc2FibGVkIHBhZ2luYXRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byBhbiBgPGE+YC5cbkBtaXhpbiBwYWdpbmF0aW9uLWl0ZW0tZGlzYWJsZWQgKFxuICAkcGFkZGluZzogJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nLFxuICAkY29sb3I6ICRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItZGlzYWJsZWRcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29sb3I6ICRjb2xvcjtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIGVsbGlwc2lzIGZvciB1c2UgaW4gYSBwYWdpbmF0aW9uIGxpc3QuXG5AbWl4aW4gcGFnaW5hdGlvbi1lbGxpcHNpcyAoXG4gICRwYWRkaW5nOiAkcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmcsXG4gICRjb2xvcjogJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3Jcbikge1xuICBwYWRkaW5nOiAkcGFkZGluZztcbiAgY29udGVudDogJ1xcMjAyNic7XG4gIGNvbG9yOiAkY29sb3I7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXBhZ2luYXRpb24ge1xuICAucGFnaW5hdGlvbiB7XG4gICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1jb250YWluZXI7XG5cbiAgICAuY3VycmVudCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWl0ZW0tY3VycmVudDtcbiAgICB9XG5cbiAgICAuZGlzYWJsZWQge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1pdGVtLWRpc2FibGVkO1xuICAgIH1cblxuICAgIC5lbGxpcHNpczo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgcGFnaW5hdGlvbi1lbGxpcHNpcztcbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZ2luYXRpb24tYXJyb3dzIHtcbiAgICAucGFnaW5hdGlvbi1wcmV2aW91cyBhOjpiZWZvcmUsXG4gICAgLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMC41cmVtO1xuICAgICAgY29udGVudDogJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM7XG4gICAgfVxuXG4gICAgLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbiAgICAucGFnaW5hdGlvbi1uZXh0LmRpc2FibGVkOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwLjVyZW07XG4gICAgICBjb250ZW50OiAkcGFnaW5hdGlvbi1hcnJvdy1uZXh0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHRvb2x0aXBcbi8vLy9cblxuLy8vIERlZmF1bHQgY3Vyc29yIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhhcy10aXAtY3Vyc29yOiBoZWxwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBvZiB0aGUgZGVmaW5lZCB0ZXJtLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgYm90dG9tIG9mIHRoZSBkZWZpbmVkIHRlcm0uXG4vLy8gQHR5cGUgTGlzdFxuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBjb2xvciBvZiB0aGUgdG9vbHRpcCBiYWNrZ3JvdW5kLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIG9mIHRoZSB0b29sdGlwIGZvbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgdGhlIHRvb2x0aXAgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heCB3aWR0aCBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgb2YgdGhlIHRvb2x0aXAgdGV4dC4gQnkgZGVmYXVsdCwgd2UgcmVjb21tZW5kIGEgc21hbGxlciBmb250IHNpemUgdGhhbiB0aGUgYm9keSBjb3B5LlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgd2lkdGggZm9yIHRvb2x0aXBzLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwaXAgaGVpZ2h0IGZvciB0b29sdGlwcy4gVGhpcyBpcyBoZWxwZnVsIGZvciBjYWxjdWxhdGluZyB0aGUgZGlzdGFuY2Ugb2YgdGhlIHRvb2x0aXAgZnJvbSB0aGUgdG9vbHRpcCB3b3JkLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjYgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgdG9vbHRpcHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG5AbWl4aW4gaGFzLXRpcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b207XG4gIGZvbnQtd2VpZ2h0OiAkaGFzLXRpcC1mb250LXdlaWdodDtcbiAgY3Vyc29yOiAkaGFzLXRpcC1jdXJzb3I7XG59XG5cbkBtaXhpbiB0b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IGNhbGMoMTAwJSArICN7JHRvb2x0aXAtcGlwLWhlaWdodH0pO1xuICB6LWluZGV4OiAxMjAwO1xuXG4gIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICBwYWRkaW5nOiAkdG9vbHRpcC1wYWRkaW5nO1xuXG4gIGJvcmRlci1yYWRpdXM6ICR0b29sdGlwLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC1zaXplOiAkdG9vbHRpcC1mb250LXNpemU7XG4gIGNvbG9yOiAkdG9vbHRpcC1jb2xvcjtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gICYuYm90dG9tIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgdXApO1xuICAgICAgYm90dG9tOiAxMDAlO1xuICAgIH1cblxuICAgICYuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYudG9wIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgZG93bik7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgICBib3R0b206IGF1dG87XG4gICAgfVxuXG4gICAgJi5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gICAgICBsZWZ0OiA1MCU7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfVxuICB9XG5cbiAgJi5sZWZ0IHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCR0b29sdGlwLXBpcC13aWR0aCwgJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvciwgcmlnaHQpO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYucmlnaHQge1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvb2x0aXAtcGlwLXdpZHRoLCAkdG9vbHRpcC1iYWNrZ3JvdW5kLWNvbG9yLCBsZWZ0KTtcbiAgICAgIHJpZ2h0OiAxMDAlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAmLmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgIHRvcDogNTAlO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cbiAgfVxuXG4gICYuYWxpZ24tdG9wOjpiZWZvcmUge1xuICAgIGJvdHRvbTogYXV0bztcbiAgICB0b3A6IDEwJTtcbiAgfVxuXG4gICYuYWxpZ24tYm90dG9tOjpiZWZvcmUge1xuICAgIGJvdHRvbTogMTAlO1xuICAgIHRvcDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tbGVmdDo6YmVmb3JlIHtcbiAgICBsZWZ0OiAxMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAmLmFsaWduLXJpZ2h0OjpiZWZvcmUge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IDEwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi10b29sdGlwIHtcbiAgLmhhcy10aXAge1xuICAgIEBpbmNsdWRlIGhhcy10aXA7XG4gIH1cblxuICAudG9vbHRpcCB7XG4gICAgQGluY2x1ZGUgdG9vbHRpcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvblxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjY29yZGlvbiBncm91cC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGFkZHMgcGx1cyBhbmQgbWludXMgaWNvbnMgdG8gdGhlIHNpZGUgb2YgZWFjaCBhY2NvcmRpb24gdGl0bGUuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDb250ZW50IGZvciB0aGUgcGx1cyBpY29uIHdoZW4gYCRhY2NvcmRpb24tcGx1c21pbnVzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRhY2NvcmRpb24tcGx1cy1jb250ZW50OiAnXFwwMDJCJyAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBtaW51cyBpY29uIHdoZW4gYCRhY2NvcmRpb24tcGx1c21pbnVzYCBpcyBgdHJ1ZWBcbi8vLyBAdHlwZSBTdHJpbmdcbiRhY2NvcmRpb24tbWludXMtY29udGVudDogJ1xcMjAxMycgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgb2YgYWNjb3JkaW9uIHRpdGxlcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxMikgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3IgZm9yIGl0ZW1zIGluIGEgTWVudS5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1pdGVtLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBmb3IgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYW4gYWNjb3JkaW9uIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgc2FtZSBlbGVtZW50IHRoYXQgZ2V0cyBgZGF0YS1hY2NvcmRpb25gLlxuQG1peGluIGFjY29yZGlvbi1jb250YWluZXIgKFxuICAkYmFja2dyb3VuZDogJGFjY29yZGlvbi1iYWNrZ3JvdW5kXG4pIHtcbiAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcblxuICAmW2Rpc2FibGVkXSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBhY2NvcmRpb24gaXRlbS4gQXBwbHkgdGhpcyB0byB0aGUgbGlzdCBpdGVtIHdpdGhpbiBhbiBhY2NvcmRpb24gdWwuXG5AbWl4aW4gYWNjb3JkaW9uLWl0ZW0ge1xuICAmOmZpcnN0LWNoaWxkID4gOmZpcnN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cyAwIDA7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHRpdGxlIG9mIGFuIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaW5rIHdpdGhpbiBhbiBhY2NvcmRpb24gaXRlbS5cbkBtaXhpbiBhY2NvcmRpb24tdGl0bGUgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1pdGVtLXBhZGRpbmcsXG4gICRmb250LXNpemU6ICRhY2NvcmRpb24tdGl0bGUtZm9udC1zaXplLFxuICAkY29sb3I6ICRhY2NvcmRpb24taXRlbS1jb2xvcixcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyXG4pIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItYm90dG9tOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gJiB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgfVxuXG4gIEBpZiAkYWNjb3JkaW9uLXBsdXNtaW51cyB7XG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gICAgICBjb250ZW50OiAkYWNjb3JkaW9uLXBsdXMtY29udGVudDtcbiAgICB9XG5cbiAgICAuaXMtYWN0aXZlID4gJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tbWludXMtY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhY2NvcmRpb24gY29udGVudC4gQXBwbHkgdGhpcyB0byB0aGUgY29udGVudCBwYW5lIGJlbG93IGFuIGFjY29yZGlvbiBpdGVtJ3MgdGl0bGUuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRlbnQgKFxuICAkcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmcsXG4gICRib3JkZXI6ICRhY2NvcmRpb24tY29udGVudC1ib3JkZXIsXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkYWNjb3JkaW9uLWNvbnRlbnQtY29sb3Jcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gIGNvbG9yOiAkY29sb3I7XG5cbiAgOmxhc3QtY2hpbGQgPiAmOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXI7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tYWNjb3JkaW9uIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWl0ZW07XG4gIH1cblxuICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tdGl0bGU7XG4gIH1cblxuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi1jb250ZW50O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVkaWEtb2JqZWN0XG4vLy8vXG5cbi8vLyBCb3R0b20gbWFyZ2luIG9mIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gTGVmdCBhbmQgcmlnaHQgcGFkZGluZyBvbiBzZWN0aW9ucyB3aXRoaW4gYSBtZWRpYSBvYmplY3QuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBXaWR0aCBvZiBpbWFnZXMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LCB3aGVuIHRoZSBvYmplY3QgaXMgc3RhY2tlZCB2ZXJ0aWNhbGx5LiBTZXQgdG8gJ2F1dG8nIHRvIHVzZSB0aGUgaW1hZ2UncyBuYXR1cmFsIHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJG1lZGlhb2JqZWN0LWltYWdlLXdpZHRoLXN0YWNrZWQ6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtZWRpYSBvYmplY3QgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1jb250YWluZXIge1xuICBkaXNwbGF5OiBpZigkZ2xvYmFsLWZsZXhib3gsIGZsZXgsIGJsb2NrKTtcbiAgbWFyZ2luLWJvdHRvbTogJG1lZGlhb2JqZWN0LW1hcmdpbi1ib3R0b207XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICYuc3RhY2stZm9yLSN7JC16Zi16ZXJvLWJyZWFrcG9pbnR9IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJC16Zi16ZXJvLWJyZWFrcG9pbnQgb25seSkge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3Igc2VjdGlvbnMgd2l0aGluIGEgbWVkaWEgb2JqZWN0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkcGFkZGluZyBbJG1lZGlhb2JqZWN0LXNlY3Rpb24tcGFkZGluZ10gLSBQYWRkaW5nIGJldHdlZW4gc2VjdGlvbnMuXG5AbWl4aW4gbWVkaWEtb2JqZWN0LXNlY3Rpb24oJHBhZGRpbmc6ICRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmcpIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgfVxuXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIHBhZGRpbmctI3skZ2xvYmFsLXJpZ2h0fTogJHBhZGRpbmc7XG4gIH1cblxuICAmOmxhc3QtY2hpbGQ6bm90KDpudGgtY2hpbGQoMikpIHtcbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1sZWZ0fTogJHBhZGRpbmc7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG5cbiAgLnN0YWNrLWZvci0jeyQtemYtemVyby1icmVha3BvaW50fSAmIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCQtemYtemVyby1icmVha3BvaW50IG9ubHkpIHtcbiAgICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zdGFjaztcbiAgICB9XG4gIH1cblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLm1haW4tc2VjdGlvbiB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJi5taWRkbGUge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICAmLmJvdHRvbSB7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gc3RhY2sgc2VjdGlvbnMgb2YgYSBtZWRpYSBvYmplY3QuIEFwcGx5IHRoaXMgdG8gdGhlIHNlY3Rpb24gZWxlbWVudHMsIG5vdCB0aGUgY29udGFpbmVyLlxuQG1peGluIG1lZGlhLW9iamVjdC1zdGFjayB7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAkbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIGltZyB7XG4gICAgd2lkdGg6ICRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLW1lZGlhLW9iamVjdCB7XG4gIC5tZWRpYS1vYmplY3Qge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1jb250YWluZXI7XG4gIH1cblxuICAubWVkaWEtb2JqZWN0LXNlY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1lZGlhLW9iamVjdC1zZWN0aW9uO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb3JiaXRcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIE9yYml0J3MgYnVsbGV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGFjdGl2ZSBjb2xvciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaWFtZXRlciBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1kaWFtZXRlcjogMS4ycmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBtYXJnaW4gYmV0d2VlbiBPcmJpdCdzIGJ1bGxldHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBkaXN0YW5jZSBmcm9tIHNsaWRlIHJlZ2lvbiBmb3IgT3JiaXQncyBidWxsZXRzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW0gIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvdHRvbSBtYXJnaW4gZnJvbSBPcmJpdCdzIGJ1bGxldHMgdG8gd2hhdGV2ZXIgY29udGVudCBtYXkgbHVyayBiZWxvdyBpdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgQ29sb3JcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciBPcmJpdCdzIGNhcHRpb24uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBPcmJpdCdzIGNvbnRyb2xzIHdoZW4gaG92ZXJlZC5cbi8vLyBAdHlwZSBDb2xvclxuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIE9yYml0J3MgY29udHJvbHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB6LWluZGV4IGZvciBPcmJpdCdzIGNvbnRyb2xzLlxuLy8vIEB0eXBlIE51bWJlclxuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMCAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgb3V0ZXIgT3JiaXQgd3JhcHBlci4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbm5lciBPcmJpdCBzbGlkZSBjb250YWluZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jb250YWluZXJgIGNsYXNzLlxuQG1peGluIG9yYml0LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwOyAvLyBQcmV2ZW50IEZPVUMgYnkgbm90IHNob3dpbmcgdW50aWwgSlMgc2V0cyBoZWlnaHRcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIHRoZSBpbmRpdmlkdWFsIHNsaWRlcyBvZiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1zbGlkZWAgY2xhc3MuXG5AbWl4aW4gb3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICYubm8tbW90aW9udWkge1xuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBvcmJpdC1maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBzbGlkZSBjb250YWluaW5nIGFuIGltYWdlLiBUaGVzZSBzdHlsZXMgYXJlIHVzZWQgb24gdGhlIGAub3JiaXQtaW1hZ2VgIGNsYXNzLlxuQG1peGluIG9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFuIG9yYml0IHNsaWRlIGNhcHRpb24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1jYXB0aW9uYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nOiAkb3JiaXQtY2FwdGlvbi1wYWRkaW5nO1xuXG4gIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ7XG4gIGNvbG9yOiBjb2xvci1waWNrLWNvbnRyYXN0KCRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQpO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgdGhlIG5leHQvcHJldmlvdXMgYnV0dG9ucyBpbiBhbiBPcmJpdCBzbGlkZXIuIFRoZXNlIHN0eWxlcyBhcmUgc2hhcmVkIGJldHdlZW4gdGhlIGAub3JiaXQtbmV4dGAgYW5kIGAub3JiaXQtcHJldmlvdXNgIGNsYXNzZXMgaW4gdGhlIGRlZmF1bHQgQ1NTLlxuQG1peGluIG9yYml0LWNvbnRyb2wge1xuICB6LWluZGV4OiAkb3JiaXQtY29udHJvbC16aW5kZXg7XG4gIHBhZGRpbmc6ICRvcmJpdC1jb250cm9sLXBhZGRpbmc7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcjtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICY6aG92ZXIsXG4gICY6YWN0aXZlLFxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtY29udHJvbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LXByZXZpb3VzYCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1wcmV2aW91cyB7XG4gICN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgT3JiaXQgbmV4dCBidXR0b24uIFRoZXNlIHN0eWxlcyBhcmUgdXNlZCBvbiB0aGUgYC5vcmJpdC1uZXh0YCBjbGFzcy5cbkBtaXhpbiBvcmJpdC1uZXh0IHtcbiAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAjeyRnbG9iYWwtcmlnaHR9OiAwO1xufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY29udGFpbmVyIG9mIE9yYml0IGJ1bGxldHMuIC8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIE9yYml0IHByZXZpb3VzIGJ1dHRvbi4gVGhlc2Ugc3R5bGVzIGFyZSB1c2VkIG9uIHRoZSBgLm9yYml0LWJ1bGxldHNgIGNsYXNzLlxuQG1peGluIG9yYml0LWJ1bGxldHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi10b3A6ICRvcmJpdC1idWxsZXQtbWFyZ2luLXRvcDtcbiAgbWFyZ2luLWJvdHRvbTogJG9yYml0LWJ1bGxldC1tYXJnaW4tYm90dG9tO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBidXR0b24ge1xuICAgIHdpZHRoOiAkb3JiaXQtYnVsbGV0LWRpYW1ldGVyO1xuICAgIGhlaWdodDogJG9yYml0LWJ1bGxldC1kaWFtZXRlcjtcbiAgICBtYXJnaW46ICRvcmJpdC1idWxsZXQtbWFyZ2luO1xuXG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkb3JiaXQtYnVsbGV0LWJhY2tncm91bmQtYWN0aXZlO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vcmJpdCB7XG4gIC5vcmJpdCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtd3JhcHBlcjtcbiAgfVxuXG4gIC5vcmJpdC1jb250YWluZXIge1xuICAgIEBpbmNsdWRlIG9yYml0LWNvbnRhaW5lcjtcbiAgfVxuXG4gIC5vcmJpdC1zbGlkZSB7XG4gICAgQGluY2x1ZGUgb3JiaXQtc2xpZGU7XG4gIH1cblxuICAub3JiaXQtZmlndXJlIHtcbiAgICBAaW5jbHVkZSBvcmJpdC1maWd1cmU7XG4gIH1cblxuICAub3JiaXQtaW1hZ2Uge1xuICAgIEBpbmNsdWRlIG9yYml0LWltYWdlO1xuICB9XG5cbiAgLm9yYml0LWNhcHRpb24ge1xuICAgIEBpbmNsdWRlIG9yYml0LWNhcHRpb247XG4gIH1cblxuICAlb3JiaXQtY29udHJvbCB7XG4gICAgQGluY2x1ZGUgb3JiaXQtY29udHJvbDtcbiAgfVxuXG4gIC5vcmJpdC1wcmV2aW91cyB7XG4gICAgQGV4dGVuZCAlb3JiaXQtY29udHJvbDtcbiAgICBAaW5jbHVkZSBvcmJpdC1wcmV2aW91cztcbiAgfVxuXG4gIC5vcmJpdC1uZXh0IHtcbiAgICBAZXh0ZW5kICVvcmJpdC1jb250cm9sO1xuICAgIEBpbmNsdWRlIG9yYml0LW5leHQ7XG4gIH1cblxuICAub3JiaXQtYnVsbGV0cyB7XG4gICAgQGluY2x1ZGUgb3JiaXQtYnVsbGV0cztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJlc3BvbnNpdmUtZW1iZWRcbi8vLy9cblxuLy8vIE1hcmdpbiBiZWxvdyBhIHJlc3BvbnNpdmUgZW1iZWQgY29udGFpbmVyLlxuLy8vIEB0eXBlIE51bWJlclxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuXG4vLy8gQXNwZWN0IHJhdGlvcyB1c2VkIHRvIGRldGVybWluZSBwYWRkaW5nLWJvdHRvbSBvZiByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lcnMuXG4vLy8gQHR5cGUgTWFwXG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKSAhZGVmYXVsdDtcblxuLy8vIENyZWF0ZXMgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAcGFyYW0ge1N0cmluZ3xMaXN0fSAkcmF0aW8gW2RlZmF1bHRdIC0gUmF0aW8gb2YgdGhlIGNvbnRhaW5lci4gQ2FuIGJlIGEga2V5IGZyb20gdGhlIGAkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3NgIG1hcCBvciBhIGxpc3QgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuQG1peGluIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KSB7XG4gIEBpZiB0eXBlLW9mKCRyYXRpbykgPT0gJ3N0cmluZycge1xuICAgICRyYXRpbzogbWFwLWdldCgkcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3MsICRyYXRpbyk7XG4gIH1cbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG1hcmdpbi1ib3R0b206ICRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b207XG4gIHBhZGRpbmctYm90dG9tOiByYXRpby10by1wZXJjZW50YWdlKCRyYXRpbyk7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgaWZyYW1lLFxuICBvYmplY3QsXG4gIGVtYmVkLFxuICB2aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJlc3BvbnNpdmUtZW1iZWQge1xuICAucmVzcG9uc2l2ZS1lbWJlZCxcbiAgLmZsZXgtdmlkZW8ge1xuICAgIEBpbmNsdWRlIHJlc3BvbnNpdmUtZW1iZWQoJHJhdGlvOiBkZWZhdWx0KTtcblxuICAgICRyYXRpb3M6IG1hcC1yZW1vdmUoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCBkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgbWFyZ2luOiAkbWFyZ2luO1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGh1bWJuYWlsXG4vLy8vXG5cbi8vLyBCb3JkZXIgYXJvdW5kIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kdGh1bWJuYWlsLWJvcmRlcjogNHB4IHNvbGlkICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyB1bmRlciB0aHVtYm5haWwgaW1hZ2VzLlxuLy8vIEB0eXBlIFNoYWRvd1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgdW5kZXIgdGh1bWJuYWlsIGltYWdlcy5cbi8vLyBAdHlwZSBTaGFkb3dcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpICFkZWZhdWx0O1xuXG4vLy8gVHJhbnNpdGlvbiBwcm9wcnRpZXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIHRodW1ibmFpbCBpbWFnZXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdGh1bWJuYWlsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHRodW1ibmFpbCBzdHlsZXMgdG8gYW4gZWxlbWVudC5cbkBtaXhpbiB0aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tO1xuXG4gIGJvcmRlcjogJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtcmFkaXVzO1xuICBib3gtc2hhZG93OiAkdGh1bWJuYWlsLXNoYWRvdztcblxuICBsaW5lLWhlaWdodDogMDtcbn1cblxuQG1peGluIHRodW1ibmFpbC1saW5rIHtcbiAgdHJhbnNpdGlvbjogJHRodW1ibmFpbC10cmFuc2l0aW9uO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6ICR0aHVtYm5haWwtc2hhZG93LWhvdmVyO1xuICB9XG5cbiAgaW1hZ2Uge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGh1bWJuYWlsIHtcbiAgLnRodW1ibmFpbCB7XG4gICAgQGluY2x1ZGUgdGh1bWJuYWlsO1xuICB9XG5cbiAgYS50aHVtYm5haWwge1xuICAgIEBpbmNsdWRlIHRodW1ibmFpbC1saW5rO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgbWVudVxuLy8vL1xuXG4vLy8gTWFyZ2luIG9mIGEgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW1hcmdpbjogMCAhZGVmYXVsdDtcblxuLy8vIExlZnQtaGFuZCBtYXJnaW4gb2YgYSBuZXN0ZWQgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgaXRlbXMgaW4gYSBwaWxsIG1lbnUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIG1hcmdpbiBmb3IgaXRlbXMgaW4gYSBzaW1wbGUgbWVudS5cbi8vLyBAdHlwZSBOdW1iZXJcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgQ29sb3JcbiRtZW51LWl0ZW0tY29sb3ItYWN0aXZlOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSB0ZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBtZW51IGl0ZW0uLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVudS1pdGVtLWNvbG9yLWFsdC1hY3RpdmU6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gYWN0aXZlIG1lbnUgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBiZXR3ZWVuIGFuIGljb24gYW5kIHRleHQgaW4gYSBtZW51IGl0ZW0uXG4vLy8gQHR5cGUgTnVtYmVyXG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciBtZW51IHN0YXRlLiBJZiB0cnVlLCB0aGlzIGR1cGxpY2F0ZSBgYWN0aXZlYCB3aXRoIGBpcy1hY3RpdmVgLlxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBhY3RpdmVgIHdpbGwgYmUgcmVtb3ZlZCBpbiB1cGNvbWluZyB2ZXJzaW9ucy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2t3YXJkIGNvbXBhdGliaWxpdHkgZm9yIG1lbnUgY2VudGVyZWQuIElmIHRydWUsIHRoaXMgZHVwbGljYXRlIGAubWVudS1jZW50ZXJlZCA+IC5tZW51YCB3aXRoIGAubWVudS5hbGlnbi1jZW50ZXJgLlxuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IGBtZW51LWNlbnRlcmVkYCB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtY2VudGVyZWQtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrd2FyZCBjb21wYXRpYmlsaXR5IGZvciB1c2luZyBgaWNvbi0qYCBjbGFzc2VzIHdpdGhvdXQgYC5pY29uc2AgY2xhc3Nlc1xuLy8vIEJ1dCBwbGVhc2Ugbm90ZSB0aGF0IHRoaXMgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aWxsIGJlIHJlbW92ZWQgaW4gdXBjb21pbmcgdmVyc2lvbnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgYSBNZW51LlxuQG1peGluIG1lbnUtYmFzZSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgbGkge1xuICAgIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcbiAgfVxuXG4gIGEsXG4gIC5idXR0b24ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkbWVudS1pdGVtcy1wYWRkaW5nO1xuICB9XG5cbiAgLy8gUmVzZXQgc3R5bGVzIG9mIGlubmVyIGVsZW1lbnRzXG4gIGlucHV0LFxuICBzZWxlY3QsXG4gIGEsXG4gIGJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIGlucHV0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLy8vIEV4cGFuZHMgdGhlIGl0ZW1zIG9mIGEgTWVudSwgc28gZWFjaCBpdGVtIGlzIHRoZSBzYW1lIHdpZHRoLlxuQG1peGluIG1lbnUtZXhwYW5kIHtcbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgbGkge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIG1lbnUgaXRlbXMuXG5AbWl4aW4gbWVudS1hbGlnbigkYWxpZ25tZW50KSB7XG4gIEBpZiAkYWxpZ25tZW50ID09IGxlZnQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRhbGlnbm1lbnQgPT0gcmlnaHQge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuXG4gICAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLXJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG5cbiAgICAgIC5zdWJtZW51IGxpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogJGdsb2JhbC1sZWZ0O1xuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICAgIHRleHQtYWxpZ246ICRnbG9iYWwtcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSBjZW50ZXIge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgICAuc3VibWVudSBsaSB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgLnN1Ym1lbnUgbGkge1xuICAgICAgICB0ZXh0LWFsaWduOiAkZ2xvYmFsLWxlZnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSBkaXJlY3Rpb24gb2YgYSBNZW51LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciBbaG9yaXpvbnRhbF0gLSBEaXJlY3Rpb24gb2YgdGhlIE1lbnUuIENhbiBiZSBgaG9yaXpvbnRhbGAgb3IgYHZlcnRpY2FsYC5cbkBtaXhpbiBtZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHNpbXBsZSBNZW51LCB3aGljaCBoYXMgbm8gcGFkZGluZyBvciBob3ZlciBzdGF0ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgWyRnbG9iYWwtbGVmdF0gLSBEaXJlY3Rpb24gb2YgdGhlIG1lbnUuIFRoaXMgZWZmZWN0cyB0aGUgc2lkZSBvZiB0aGUgYDxsaT5gIHRoYXQgcmVjZWl2ZXMgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1hcmdpbiBbJG1lbnUtc2ltcGxlLW1hcmdpbl0gLSBUaGUgbWFyZ2luIHRvIGFwcGx5IHRvIGVhY2ggYDxsaT5gLlxuQG1peGluIG1lbnUtc2ltcGxlKCRkaXI6ICRnbG9iYWwtbGVmdCwgJG1hcmdpbjogJG1lbnUtc2ltcGxlLW1hcmdpbikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgbGkgKyBsaSB7XG4gICAgbWFyZ2luLSN7JGRpcn06ICRtYXJnaW47XG4gIH1cblxuICBhIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBuZXN0ZWQgTWVudSwgYnkgYWRkaW5nIGBtYXJnaW4tbGVmdGAgdG8gdGhlIG1lbnUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJG1hcmdpbiBbJG1lbnUtbmVzdGVkLW1hcmdpbl0gLSBMZW5ndGggb2YgdGhlIG1hcmdpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRuZXN0ZWQtYWxpZ25tZW50IFtsZWZ0XSAtIEFsaWdubWVudCBvZiB0aGUgbmVzdGVkIGNsYXNzXG5AbWl4aW4gbWVudS1uZXN0ZWQoXG4gICRtYXJnaW46ICRtZW51LW5lc3RlZC1tYXJnaW4sXG4gICRuZXN0ZWQtYWxpZ25tZW50OiBsZWZ0XG4pIHtcbiAgQGlmICRuZXN0ZWQtYWxpZ25tZW50ID09IHJpZ2h0IHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJG1hcmdpbjtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbWFyZ2luO1xuICB9XG5cbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBpY29ucyBpbiBtZW51cy5cbkBtaXhpbiBtZW51LWljb25zKCkge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBpbWcsXG4gICAgaSxcbiAgICBzdmcge1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgKyBzcGFuIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8vIEFsaWduIHRvcC9ib3R0b20gaWNvbnMgd2l0aGluIGEgbWVudS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRhbGlnbm1lbnQgW2NlbnRlcl0gLSBBbGlnbm1lbnQgb2YgdGhlIGljb25cbkBtaXhpbiBtZW51LWljb24tYWxpZ25tZW50KCRhbGlnbm1lbnQ6IGNlbnRlcikge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAmLmljb24tdG9wLFxuICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgbGkgYSB7XG4gICAgICAgIGltZyxcbiAgICAgICAgaSxcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICBAaWYgJGFsaWdubWVudCA9PSBsZWZ0IHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGVsc2UgaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHBvc2l0aW9uIGNsYXNzZXMgZm9yIGljb25zIHdpdGhpbiBhIG1lbnUuXG5AbWl4aW4gbWVudS1pY29uLXBvc2l0aW9uKCRwb3NpdGlvbjogbGVmdCwgJHNwYWNpbmc6ICRtZW51LWljb24tc3BhY2luZykge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGxpIGEge1xuICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgIGZsZXgtZmxvdzogcm93IG5vd3JhcDtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkc3BhY2luZztcblxuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiByb3cgbm93cmFwO1xuICAgICAgfVxuXG4gICAgICBpbWcsXG4gICAgICBpLFxuICAgICAgc3ZnIHtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogJHNwYWNpbmc7XG5cbiAgICAgICAgQGlmIG5vdCAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICBsaSBhIHtcbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgaW1nLFxuICAgICAgaSxcbiAgICAgIHN2ZyB7XG4gICAgICAgIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW46IDAgYXV0byAkc3BhY2luZztcbiAgICAgICAgfVxuICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAkc3BhY2luZztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgbGkgYSB7XG4gICAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgICAgZmxleC1mbG93OiBjb2x1bW4gbm93cmFwO1xuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIGltZyxcbiAgICAgIGksXG4gICAgICBzdmcge1xuICAgICAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luOiAkc3BhY2luZyBhdXRvIDA7XG4gICAgICAgIH1cbiAgICAgICAgQGVsc2Uge1xuICAgICAgICAgIGFsaWduLXNlbGY6IHN0cmV0Y2g7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHNwYWNpbmc7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBtZW51LXRleHQge1xuICBwYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcblxuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG5AbWl4aW4gbWVudS1zdGF0ZS1hY3RpdmUge1xuICBiYWNrZ3JvdW5kOiAkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlO1xuICBjb2xvcjogY29sb3ItcGljay1jb250cmFzdCgkbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlLCAoJG1lbnUtaXRlbS1jb2xvci1hY3RpdmUsICRtZW51LWl0ZW0tY29sb3ItYWx0LWFjdGl2ZSkpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1tZW51IHtcbiAgLm1lbnUge1xuICAgIEBpbmNsdWRlIG1lbnUtYmFzZTtcblxuICAgIC8vIERlZmF1bHQgb3JpZW50YXRpb246IGhvcml6b250YWxcbiAgICAmLCAmLmhvcml6b250YWwge1xuICAgICAgQGluY2x1ZGUgbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgfVxuXG4gICAgLy8gVmVydGljYWwgb3JpZW50YXRpb24gbW9kaWZpZXJcbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1hbGlnbm1lbnQobGVmdCk7XG4gICAgfVxuXG4gICAgLy8gRXZlbi13aWR0aCBtb2RpZmllciBmb3IgaG9yaXpvbnRhbCBvcmllbnRhdGlvblxuICAgICYuZXhwYW5kZWQge1xuICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb24tYWxpZ25tZW50KGxlZnQpO1xuICAgIH1cblxuICAgIC8vIFNpbXBsZVxuICAgICYuc2ltcGxlIHtcbiAgICAgIEBpbmNsdWRlIG1lbnUtc2ltcGxlO1xuICAgIH1cblxuICAgIC8vIEJyZWFrcG9pbnQgc3BlY2lmaWMgdmVyc2lvbnNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCRzbWFsbDogZmFsc2UpIHtcbiAgICAgICYuI3skLXpmLXNpemV9LWhvcml6b250YWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbihob3Jpem9udGFsKTtcbiAgICAgIH1cblxuICAgICAgJi4jeyQtemYtc2l6ZX0tdmVydGljYWwge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LWV4cGFuZGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1leHBhbmQ7XG4gICAgICB9XG5cbiAgICAgICYuI3skLXpmLXNpemV9LXNpbXBsZSB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtZXhwYW5kO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIE5lc3RpbmdcbiAgICAmLm5lc3RlZCB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZDtcbiAgICB9XG5cbiAgICAvLyBJY29uIEJhc2UgU3R5bGVzXG4gICAgJi5pY29ucyB7XG4gICAgICBAaW5jbHVkZSBtZW51LWljb25zO1xuICAgIH1cblxuICAgIC8vIEJhY2t3YXJkIENvbXBhdGliaWxpdHkgZm9yIGFjdGl2ZSBzdGF0ZVxuICAgIEBpZiAkbWVudS1pY29ucy1iYWNrLWNvbXBhdCB7XG4gICAgICAmLmljb24tdG9wLFxuICAgICAgJi5pY29uLXJpZ2h0LFxuICAgICAgJi5pY29uLWJvdHRvbSxcbiAgICAgICYuaWNvbi1sZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29ucztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBNZW51IGljb24gcG9zaXRpb25cbiAgICAvLyBJbmNsdWRlcyBzcGVjaWZpY2l0eSB0byBuZXN0ZWQgaWNvbnMgd2l0aCBhIGRpZmZlcmVudCBwb3NpdGlvblxuICAgICYsXG4gICAgJi5uZXN0ZWQge1xuICAgICAgLy8gSWNvbiBMZWZ0XG4gICAgICAmLmljb24tbGVmdCB7XG4gICAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1wb3NpdGlvbihsZWZ0KTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBSaWdodFxuICAgICAgJi5pY29uLXJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1pY29uLXBvc2l0aW9uKHJpZ2h0KTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBUb3BcbiAgICAgICYuaWNvbi10b3Age1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24odG9wKTtcbiAgICAgIH1cblxuICAgICAgLy8gSWNvbiBCb3R0b21cbiAgICAgICYuaWNvbi1ib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBtZW51LWljb24tcG9zaXRpb24oYm90dG9tKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAuaXMtYWN0aXZlID4gYSB7XG4gICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICB9XG5cbiAgICAvLyBCYWNrd2FyZCBDb21wYXRpYmlsaXR5IGZvciBhY3RpdmUgc3RhdGVcbiAgICBAaWYgJG1lbnUtc3RhdGUtYmFjay1jb21wYXQge1xuICAgICAgLmFjdGl2ZSA+IGEge1xuICAgICAgICBAaW5jbHVkZSBtZW51LXN0YXRlLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBsZWZ0XG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtbGVmdH0ge1xuICAgICAgQGluY2x1ZGUgbWVudS1hbGlnbihsZWZ0KTtcbiAgICB9XG5cbiAgICAvLyBBbGlnbiByaWdodFxuICAgICYuYWxpZ24tI3skZ2xvYmFsLXJpZ2h0fSB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKHJpZ2h0KTtcbiAgICAgIEBpbmNsdWRlIG1lbnUtaWNvbi1hbGlnbm1lbnQocmlnaHQpO1xuXG4gICAgICAubmVzdGVkIHtcbiAgICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJG5lc3RlZC1hbGlnbm1lbnQ6IHJpZ2h0KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBbGlnbiBjZW50ZXJcbiAgICAmLmFsaWduLWNlbnRlciB7XG4gICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgfVxuXG4gICAgLm1lbnUtdGV4dCB7XG4gICAgICBAaW5jbHVkZSBtZW51LXRleHQ7XG4gICAgfVxuICB9XG5cbiAgQGlmICRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0IHtcbiAgICAubWVudS1jZW50ZXJlZCB7XG4gICAgICA+IC5tZW51IHtcbiAgICAgICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtZW51LWFsaWduKGNlbnRlcik7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUHJldmVudCBGT1VDIHdoZW4gdXNpbmcgdGhlIFJlc3BvbnNpdmUgTWVudSBwbHVnaW5cbiAgLm5vLWpzIFtkYXRhLXJlc3BvbnNpdmUtbWVudV0gdWwge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIkBtaXhpbiBmb3VuZGF0aW9uLW1lbnUtaWNvbiB7XG4gIC5tZW51LWljb24ge1xuICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkY29sb3I6ICR0aXRsZWJhci1pY29uLWNvbG9yLCAkY29sb3ItaG92ZXI6ICR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyKTtcbiAgfVxuXG4gIC5tZW51LWljb24uZGFyayB7XG4gICAgQGluY2x1ZGUgaGFtYnVyZ2VyO1xuICB9XG59XG4iLCIvLy8vXG4vLy8gQGdyb3VwIGFjY29yZGlvbi1tZW51XG4vLy8vXG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kYWNjb3JkaW9ubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgbmVzdGVkIG1hcmdpblxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW4gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IHN1Ym1lbnUgcGFkZGluZy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgaWYgYWNjb3JkaW9uIG1lbnVzIGhhdmUgdGhlIGRlZmF1bHQgYXJyb3cgc3R5bGVzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBib3JkZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbCAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgaXRlbSBwYWRkaW5nLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTGlzdFxuJGFjY29yZGlvbi1zdWJtZW51LXRvZ2dsZS1ib3JkZXI6ICRhY2NvcmRpb25tZW51LWJvcmRlciAhZGVmYXVsdDtcblxuLy8vIFNldHMgYWNjb3JkaW9uIG1lbnUgc3VibWVudSB0b2dnbGUgYmFja2dyb3VuZCB3aWR0aC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoOiA0MHB4ICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBhY2NvcmRpb24gbWVudSBzdWJtZW51IHRvZ2dsZSBiYWNrZ3JvdW5kIGhlaWdodC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGFjY29yZGlvbiBtZW51IGFycm93IHNpemUgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBMZW5ndGhcbiRhY2NvcmRpb25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuQG1peGluIHpmLWFjY29yZGlvbi1tZW51LWxlZnQtcmlnaHQtYXJyb3dzIHtcbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudDpub3QoLmhhcy1zdWJtZW51LXRvZ2dsZSkgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMSAqICgkYWNjb3JkaW9ubWVudS1hcnJvdy1zaXplICogMC41KTtcbiAgICAgICN7JGdsb2JhbC1yaWdodH06IDFyZW07XG4gICAgfVxuICB9XG5cbiAgJi5hbGlnbi1sZWZ0IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG59XG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24tbWVudSB7XG5cbiAgLmFjY29yZGlvbi1tZW51IHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgICAgYm9yZGVyLXRvcDogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWxlZnQ6ICRhY2NvcmRpb25tZW51LWJvcmRlcjtcbiAgICAgIH1cbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGEge1xuICAgICAgQGlmICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZCB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGEge1xuICAgICAgcGFkZGluZzogJGFjY29yZGlvbm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGFjY29yZGlvbm1lbnUtbmVzdGVkLW1hcmdpbik7XG4gICAgfVxuXG4gICAgJi5hbGlnbi0jeyRnbG9iYWwtcmlnaHR9IHtcbiAgICAgIC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luLCByaWdodCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1hY2NvcmRpb24tbWVudS1sZWZ0LXJpZ2h0LWFycm93cztcblxuICAgICAgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPSd0cnVlJ10gPiBhOjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlzLWFjY29yZGlvbi1zdWJtZW51IGxpIHtcbiAgICBAaWYgJGFjY29yZGlvbm1lbnUtYm9yZGVyIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5oYXMtc3VibWVudS10b2dnbGUgPiBhIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLXJpZ2h0fTogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg7XG4gIH1cblxuICAvLyBTdWJtZW51IHRvZ2dsZVxuICAuc3VibWVudS10b2dnbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLXJpZ2h0fTogMDtcblxuICAgIHdpZHRoOiAkYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS13aWR0aDtcbiAgICBoZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWhlaWdodDtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06ICRhY2NvcmRpb24tc3VibWVudS10b2dnbGUtYm9yZGVyO1xuXG4gICAgQGlmICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQge1xuICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtYmFja2dyb3VuZDtcbiAgICB9XG5cbiAgICAvLyBBZGQgdGhlIGFycm93IHRvIHRoZSB0b2dnbGVcbiAgICAmOjphZnRlciB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZSwgJGFjY29yZGlvbm1lbnUtYXJyb3ctY29sb3IsIGRvd24pO1xuXG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLy8gUm90YXRlIHRoZSBhcnJvdyB3aGVuIG1lbnUgaXMgb3BlblxuICAuc3VibWVudS10b2dnbGVbYXJpYS1leHBhbmRlZD0ndHJ1ZSddOjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoLTEpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDUwJSA1MCU7XG4gIH1cblxuICAuc3VibWVudS10b2dnbGUtdGV4dCB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBkcmlsbGRvd25cbi8vLy9cblxuLy8vIFRyYW5zaXRpb24gcHJvcGVydHkgdG8gdXNlIGZvciBhbmltYXRpbmcgbWVudXMuXG4vLy8gQHR5cGUgVHJhbnNpdGlvblxuJGRyaWxsZG93bi10cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4xNXMgbGluZWFyICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBhcnJvd3MgdG8gZHJpbGxkb3duIGl0ZW1zIHdpdGggc3VibWVudXMsIGFzIHdlbGwgYXMgdGhlIGJhY2sgYnV0dG9uLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRkcmlsbGRvd24tYXJyb3dzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBpdGVtIHBhZGRpbmcuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLXBhZGRpbmc6ICRnbG9iYWwtbWVudS1wYWRkaW5nICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBkcmlsbGRvd24gdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIG1lbnUgaXRlbSBwYWRkaW5nIGluIHRoZSBzdWJtZW51LlxuLy8vIEB0eXBlIE51bWJlclxuJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc6ICRkcmlsbGRvd24tcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIGRyaWxsZG93biBzdWJtZW51cy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyaWxsZG93bi1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJpbGxkb3duIGFycm93IGNvbG9yIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgQ29sb3JcbiRkcmlsbGRvd24tYXJyb3ctY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBkcmlsbGRvd24gYXJyb3cgc2l6ZSBpZiBhcnJvdyBpcyB1c2VkLlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyaWxsZG93bi1hcnJvdy1zaXplOiA2cHggIWRlZmF1bHQ7XG5cbkBtaXhpbiB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcmlsbGRvd24tYXJyb3ctc2l6ZSwgJGRyaWxsZG93bi1hcnJvdy1jb2xvciwgJGdsb2JhbC1yaWdodCk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIG1hcmdpbi10b3A6IC0xICogJGRyaWxsZG93bi1hcnJvdy1zaXplO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogMXJlbTtcbiAgICB9XG4gIH1cblxuICAmLmFsaWduLWxlZnQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCByaWdodCk7XG4gICAgcmlnaHQ6IDFyZW07XG4gICAgbGVmdDogYXV0bztcbiAgfVxuXG4gICYuYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBsZWZ0KTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxcmVtO1xuICB9XG5cbn1cblxuQG1peGluIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnUge1xuICAvLyBBcHBsaWVkIHRvIHRoZSBNZW51IGNvbnRhaW5lclxuICAuaXMtZHJpbGxkb3duIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgICYuYW5pbWF0ZS1oZWlnaHQge1xuICAgICAgdHJhbnNpdGlvbjogaGVpZ2h0IDAuNXM7XG4gICAgfVxuICB9XG5cbiAgLy8gVGhlIHRvcCBsZXZlbCA8dWw+XG4gIC5kcmlsbGRvd24ge1xuICAgIGEge1xuICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1wYWRkaW5nO1xuICAgICAgYmFja2dyb3VuZDogJGRyaWxsZG93bi1iYWNrZ3JvdW5kO1xuICAgIH1cblxuICAgIC8vIEFwcGxpZWQgdG8gc3VibWVudSA8dWw+c1xuICAgIC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgICB6LWluZGV4OiAtMTtcblxuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDtcbiAgICAgIHRyYW5zaXRpb246ICRkcmlsbGRvd24tdHJhbnNpdGlvbjtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gbHRyLCAtMTAwJSwgMTAwJSkpO1xuICAgICAgfVxuXG4gICAgICAmLmlzLWNsb3Npbmcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBsdHIsIDEwMCUsIC0xMDAlKSk7XG4gICAgICB9XG5cbiAgICAgIC8vIFN1Ym1lbnUgaXRlbSBwYWRkaW5nXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogJGRyaWxsZG93bi1zdWJtZW51LXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gICAgICBAaW5jbHVkZSBtZW51LW5lc3RlZCgkZHJpbGxkb3duLW5lc3RlZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgIH1cblxuICAgIEBpZiAkZHJpbGxkb3duLWFycm93cyB7XG4gICAgICBAaW5jbHVkZSB6Zi1kcmlsbGRvd24tbGVmdC1yaWdodC1hcnJvd3M7XG5cbiAgICAgIC5qcy1kcmlsbGRvd24tYmFjayA+IGE6OmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJpbGxkb3duLWFycm93LXNpemUsICRkcmlsbGRvd24tYXJyb3ctY29sb3IsICRnbG9iYWwtbGVmdCk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDAuNzVyZW07IC8vIENyZWF0ZXMgc3BhY2UgYmV0d2VlbiB0aGUgYXJyb3cgYW5kIHRoZSB0ZXh0XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZHJvcGRvd24tbWVudVxuLy8vL1xuXG4vLy8gRW5hYmxlcyBhcnJvd3MgZm9yIGl0ZW1zIHdpdGggZHJvcGRvd24gbWVudXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGRyb3Bkb3dubWVudS1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIGRyb3Bkb3duIG1lbnUgYXJyb3cgY29sb3IgaWYgYXJyb3cgaXMgdXNlZC5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvcjogJGFuY2hvci1jb2xvciAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBzaXplIGlmIGFycm93IGlzIHVzZWQuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweCAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBhcnJvdyBwYWRkaW5nIGZvciBhbGlnbmluZyB0aGUgYXJyb3cgY29ycmVjdGx5LlxuLy8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1hcnJvdy1wYWRkaW5nOiAxLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBNaW5pbXVtIHdpZHRoIG9mIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMZW5ndGhcbiRkcm9wZG93bm1lbnUtbWluLXdpZHRoOiAyMDBweCAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRvcCBsZXZlbCBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgZHJvcGRvd25zLlxuLy8vIEB0eXBlIENvbG9yXG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgdG9wIGxldmVsIGl0ZW1zLlxuLy8vIEB0eXBlIE51bWJlclxuJGRyb3Bkb3dubWVudS1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIFNldHMgZHJvcGRvd24gbWVudSBuZXN0ZWQgbWFyZ2luXG4vLy8gQHR5cGUgTnVtYmVyXG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDAgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGZvciBzdWItbWVudSBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgZm9yIGRyb3Bkb3duIHN1Yi1tZW51cy5cbi8vLyBAdHlwZSBMaXN0XG4kZHJvcGRvd25tZW51LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8gQm9yZGVyIHdpZHRoIGZvciBkcm9wZG93biBzdWItbWVudXMuXG4vLyBVc2VkIHRvIGFkanVzdCB0b3AgbWFyZ2luIG9mIGEgc3ViLW1lbnUgaWYgYSBib3JkZXIgaXMgdXNlZC5cbi8vIEB0eXBlIExlbmd0aFxuJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGg6IG50aCgkZHJvcGRvd25tZW51LWJvcmRlciwgMSk7XG5cbi8vLyBUZXh0IGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tY29sb3ItYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSkgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFuIGFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0uIEV4cGxpY2l0IG92ZXJyaWRlIGZvciBtZW51IGRlZmF1bHRzXG4vLy8gQHR5cGUgQ29sb3JcbiRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG5AbWl4aW4gemYtZHJvcGRvd24tbGVmdC1yaWdodC1hcnJvd3Mge1xuICA+IGE6OmFmdGVyIHtcbiAgICAjeyRnbG9iYWwtcmlnaHR9OiAxNHB4O1xuICB9XG5cbiAgJi5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZHJvcGRvd25tZW51LWFycm93LXNpemUsICRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3IsIGxlZnQpO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuXG4gICYub3BlbnMtcmlnaHQgPiBhOjphZnRlciB7XG4gICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSwgJGRyb3Bkb3dubWVudS1hcnJvdy1jb2xvciwgcmlnaHQpO1xuICB9XG59XG5cbkBtaXhpbiBkcm9wZG93bi1tZW51LWRpcmVjdGlvbigkZGlyOiBob3Jpem9udGFsKSB7XG4gIEBpZiAkZGlyID09IGhvcml6b250YWwge1xuICAgID4gbGkub3BlbnMtbGVmdCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBsaS5vcGVucy1yaWdodCB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRkcm9wZG93bm1lbnUtYXJyb3dzIHtcbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby1xdWFsaWZ5aW5nLWVsZW1lbnRzXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy0jeyRnbG9iYWwtcmlnaHR9OiAkZHJvcGRvd25tZW51LWFycm93LXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGRyb3Bkb3dubWVudS1hcnJvdy1zaXplLCAkZHJvcGRvd25tZW51LWFycm93LWNvbG9yLCBkb3duKTtcbiAgICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgICAjeyRnbG9iYWwtbGVmdH06IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IC0xICogKCRkcm9wZG93bm1lbnUtYXJyb3ctc2l6ZSAqIDAuNSk7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIGlmICRkaXIgPT0gdmVydGljYWwge1xuICAgID4gbGkge1xuICAgICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtbGVmdCB7XG4gICAgICAgID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYub3BlbnMtcmlnaHQge1xuICAgICAgICA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpZiAkZHJvcGRvd25tZW51LWFycm93cyB7XG4gICAgICAgIEBpbmNsdWRlIHpmLWRyb3Bkb3duLWxlZnQtcmlnaHQtYXJyb3dzO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgQHdhcm4gJ1RoZSBkaXJlY3Rpb24gdXNlZCBmb3IgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oKSBtdXN0IGJlIGhvcml6b250YWwgb3IgdmVydGljYWwuJztcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1kcm9wZG93bi1tZW51IHtcbiAgLmRyb3Bkb3duLm1lbnUge1xuICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKGhvcml6b250YWwpO1xuXG4gICAgYSB7XG4gICAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW1cbiAgICA+IGxpID4gYSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkZHJvcGRvd25tZW51LWJhY2tncm91bmQ7XG4gICAgICBwYWRkaW5nOiAkZHJvcGRvd25tZW51LXBhZGRpbmc7XG4gICAgfVxuXG4gICAgLy8gVG9wLWxldmVsIGl0ZW0gYWN0aXZlIHN0YXRlXG4gICAgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1tZW51LWl0ZW0tYmFja2dyb3VuZC1hY3RpdmU7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLW1lbnUtaXRlbS1jb2xvci1hY3RpdmU7XG4gICAgfVxuXG4gICAgLm5vLWpzICYgdWwge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubmVzdGVkLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgbWVudS1uZXN0ZWQoJGRyb3Bkb3dubWVudS1uZXN0ZWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICAmLnZlcnRpY2FsIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLW1lbnUtZGlyZWN0aW9uKHZlcnRpY2FsKTtcbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LWhvcml6b250YWwge1xuICAgICAgICAgICAgQGluY2x1ZGUgZHJvcGRvd24tbWVudS1kaXJlY3Rpb24oaG9yaXpvbnRhbCk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi4jeyRzaXplfS12ZXJ0aWNhbCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBkcm9wZG93bi1tZW51LWRpcmVjdGlvbih2ZXJ0aWNhbCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5hbGlnbi1yaWdodCB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudS5maXJzdC1zdWIge1xuICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pcy1kcm9wZG93bi1tZW51LnZlcnRpY2FsIHtcbiAgICB3aWR0aDogMTAwcHg7XG5cbiAgICAmLmFsaWduLXJpZ2h0IHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIGE6OmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgI3skZ2xvYmFsLXJpZ2h0fTogNXB4O1xuICAgICAgI3skZ2xvYmFsLWxlZnR9OiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogLTEgKiAkZHJvcGRvd25tZW51LWFycm93LXNpemU7XG4gICAgfVxuXG4gICAgJi5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcblxuICAgICAgdG9wOiAxMDAlO1xuICAgICAgQGlmICRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gJ3J0bCcge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICByaWdodDogMTAwJTtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuXG4gICAgJi5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICAjeyRnbG9iYWwtbGVmdH06IDEwMCU7XG4gICAgei1pbmRleDogMTtcblxuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbWluLXdpZHRoOiAkZHJvcGRvd25tZW51LW1pbi13aWR0aDtcblxuICAgIGJvcmRlcjogJGRyb3Bkb3dubWVudS1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ7XG5cbiAgICAuZHJvcGRvd24gJiBhIHtcbiAgICAgIHBhZGRpbmc6ICRkcm9wZG93bm1lbnUtc3VibWVudS1wYWRkaW5nO1xuICAgIH1cblxuICAgIC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCB7XG4gICAgICBAaWYgJGRyb3Bkb3dubWVudS1hcnJvd3Mge1xuICAgICAgICBAaW5jbHVkZSB6Zi1kcm9wZG93bi1sZWZ0LXJpZ2h0LWFycm93cztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgKHR5cGUtb2YoJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpID09ICdudW1iZXInKSB7XG4gICAgICAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJGRyb3Bkb3dubWVudS1ib3JkZXItd2lkdGgpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gbGkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLy8gW1RPRE9dIEN1dCBiYWNrIHNwZWNpZmljaXR5XG4gICAgLy8mOm5vdCguanMtZHJvcGRvd24tbm9ob3ZlcikgPiAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ6aG92ZXIgPiAmLCAvLyB3aHkgaXMgdGhpcyBsaW5lIG5lZWRlZD8gT3BlbmluZyBpcyBoYW5kbGVkIGJ5IEpTIGFuZCB0aGlzIGNhdXNlcyBzb21lIHVnbHkgZmxpY2tlcmluZyB3aGVuIHRoZSBzdWIgaXMgcmUtcG9zaXRpb25lZCBhdXRvbWF0aWNhbGx5Li4uXG4gICAgJi5qcy1kcm9wZG93bi1hY3RpdmUge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgb2ZmLWNhbnZhc1xuLy8vL1xuXG4vLy8gV2lkdGggbWFwIG9mIGEgbGVmdC9yaWdodCBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIE1hcFxuJG9mZmNhbnZhcy1zaXplczogKFxuICBzbWFsbDogMjUwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gSGVpZ2h0IG1hcCBvZiBhIHRvcC9ib3R0b20gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBNYXBcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgZm9yIHRoZSBvZmYtY2FudmFzIG92ZXJsYXAgcGFuZWwuXG4vLy8gQHR5cGUgU2hhZG93XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNykgIWRlZmF1bHQ7XG5cbi8vLyBJbm5lciBib3ggc2hhZG93IHNpemUgZm9yIHRoZSBvZmYtY2FudmFzIHB1c2ggcGFuZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4ICFkZWZhdWx0O1xuXG4vLy8gSW5uZXIgYm94IHNoYWRvdyBjb2xvciBmb3IgdGhlIG9mZi1jYW52YXMgcHVzaCBwYW5lbC5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBjb250ZW50IG92ZXJsYXkuXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMSAhZGVmYXVsdDtcblxuLy8vIFotaW5kZXggb2YgYW4gb2ZmLWNhbnZhcyBwYW5lbCB3aXRoIHRoZSBgcHVzaGAgdHJhbnNpdGlvbi5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gWi1pbmRleCBvZiBhbiBvZmYtY2FudmFzIHBhbmVsIHdpdGggdGhlIGBvdmVybGFwYCB0cmFuc2l0aW9uLlxuLy8vIEB0eXBlIE51bWJlclxuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTMgIWRlZmF1bHQ7XG5cbi8vLyBaLWluZGV4IG9mIGFuIG9mZi1jYW52YXMgcGFuZWwgdXNpbmcgdGhlIGByZXZlYWwtZm9yLSpgIGNsYXNzZXMgb3IgbWl4aW4uXG4vLy8gQHR5cGUgTnVtYmVyXG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyICFkZWZhdWx0O1xuXG4vLy8gTGVuZ3RoIG9mIHRoZSBhbmltYXRpb24gb24gYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGg6IDAuNXMgIWRlZmF1bHQ7XG5cbi8vLyBUaW1pbmcgZnVuY3Rpb24gb2YgdGhlIGFuaW1hdGlvbiBvbiBhbiBvZmYtY2FudmFzIHBhbmVsLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2UgIWRlZmF1bHQ7XG5cbi8vLyBJZiBgdHJ1ZWAsIGEgcmV2ZWFsZWQgb2ZmLWNhbnZhcyB3aWxsIGJlIGZpeGVkLXBvc2l0aW9uLCBhbmQgc2Nyb2xsIHdpdGggdGhlIHNjcmVlbi5cbi8vLyBAdHlwZSBCb29sXG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBvdmVybGF5IHRoYXQgYXBwZWFycyB3aGVuIGFuIG9mZi1jYW52YXMgcGFuZWwgaXMgb3Blbi5cbi8vLyBAdHlwZSBDb2xvclxuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KSAhZGVmYXVsdDtcblxuLy8vIENTUyBjbGFzcyB1c2VkIGZvciB0aGUgbWFpbiBjb250ZW50IGFyZWEuIFRoZSBvZmYtY2FudmFzIG1peGlucyB1c2UgdGhpcyB0byB0YXJnZXQgdGhlIHBhZ2UgY29udGVudC5cbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCcgIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIGJhc2VsaW5lIHN0eWxlcyBmb3Igb2ZmLWNhbnZhcy4gVGhpcyBDU1MgaXMgcmVxdWlyZWQgdG8gbWFrZSB0aGUgb3RoZXIgcGllY2VzIHdvcmsuXG5AbWl4aW4gb2ZmLWNhbnZhcy1iYXNpY3Mge1xuXG4gIC8vLyBUcmFuc2Zvcm0gZGVwcmVjYXRlZCBzaXplIHNldHRpbmdzIGludG8gbWFwICYgc2hvdyB3YXJuaW5nXG4gIEBpZiB2YXJpYWJsZS1leGlzdHMob2ZmY2FudmFzLXNpemUpIHtcbiAgICAkb2ZmY2FudmFzLXNpemVzOiAoc21hbGw6ICRvZmZjYW52YXMtc2l6ZSwgbWVkaXVtOiAkb2ZmY2FudmFzLXNpemUpICFnbG9iYWw7XG4gICAgQHdhcm4gJyRvZmZjYW52YXMtc2l6ZSBpcyBkZXByZWNhdGVkIGFuZCBub3QgdXNlZCBhbnltb3JlISBQbGVhc2UgdXBkYXRlIHlvdXIgc2V0dGluZ3MgYW5kIHVzZSB0aGUgbWFwICRvZmZjYW52YXMtc2l6ZXMgaW5zdGVhZCc7XG4gIH1cbiAgQGlmIHZhcmlhYmxlLWV4aXN0cyhvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkge1xuICAgICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChzbWFsbDogJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplLCBtZWRpdW06ICRvZmZjYW52YXMtdmVydGljYWwtc2l6ZSkgIWdsb2JhbDtcbiAgICBAd2FybiAnJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplIGlzIGRlcHJlY2F0ZWQgYW5kIG5vdCB1c2VkIGFueW1vcmUhIFBsZWFzZSB1cGRhdGUgeW91ciBzZXR0aW5ncyBhbmQgdXNlIHRoZSBtYXAgJG9mZmNhbnZhcy12ZXJ0aWNhbC1zaXplcyBpbnN0ZWFkJztcbiAgfVxuXG4gIC8vIENoZWNrcyB0aGUgei1pbmRleGVzIGFuZCBpbmNyZWFzZSB0aGVtIGR1ZSB0byBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eS5cbiAgLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZSB0aGUgb3ZlcmxheSdzIHotaW5kZXggaXMgbmV3IHNpbmNlIHY2LjQgYW5kIG1heSBiZSBpZGVudGljYWwgdG8gdGhlIHVzZXIgY3VzdG9tIHNldHRpbmdzIG9mIHRoZSBwdXNoIHotaW5kZXguXG4gIEBpZiAkb2ZmY2FudmFzLXB1c2gtemluZGV4IDw9ICRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXggeyAkb2ZmY2FudmFzLXB1c2gtemluZGV4OiAkb2ZmY2FudmFzLW92ZXJsYXktemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4IDw9ICRvZmZjYW52YXMtcHVzaC16aW5kZXggeyAkb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAkb2ZmY2FudmFzLXB1c2gtemluZGV4ICsgMSAhZ2xvYmFsOyB9XG4gIEBpZiAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXggPD0gJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCB7ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleCArIDEgIWdsb2JhbDsgfVxuXG4gIC8vIEhpZGVzIG92ZXJmbG93IG9uIGJvZHkgd2hlbiBhbiBvZmYtY2FudmFzIHBhbmVsIGlzIG9wZW4uXG4gIC5pcy1vZmYtY2FudmFzLW9wZW4ge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAvLyBPZmYtY2FudmFzIG92ZXJsYXkgKGdlbmVyYXRlZCBieSBKYXZhU2NyaXB0KVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGF5LXppbmRleDtcblxuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcblxuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aCAkb2ZmY2FudmFzLXRyYW5zaXRpb24tdGltaW5nLCB2aXNpYmlsaXR5ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcblxuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kO1xuXG4gICAgb3BhY2l0eTogMDtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgIH1cblxuICAgICYuaXMtY2xvc2FibGUge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cblxuICAgICYuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgfVxuXG4gICAgJi5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgd3JhcHBlci5cbkBtaXhpbiBvZmYtY2FudmFzLXdyYXBwZXIoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8vIEFkZHMgYmFzaWMgc3R5bGVzIGZvciBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtYmFzZShcbiAgJGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFja2dyb3VuZCxcbiAgJHRyYW5zaXRpb246ICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZyxcbiAgJGZpeGVkOiB0cnVlXG4pIHtcbiAgLy8gU2V0IHRoZSBvZmYtY2FudmFzIHotaW5kZXguXG4gIHotaW5kZXg6ICRvZmZjYW52YXMtcHVzaC16aW5kZXg7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcblxuICBAaWYgJGZpeGVkID09IHRydWUge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuXG4gIC8vIEluY3JlYXNlIENTUyBzcGVjaWZpY2l0eVxuICAmLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1wdXNoLXppbmRleDtcbiAgfVxuXG4gIC8vIEhpZGUgaW5hY3RpdmUgb2ZmLWNhbnZhcyB3aXRoaW4gdGhlIGNvbnRlbnQgdGhhdCBoYXZlIHRoZSBzYW1lIHBvc2l0aW9uXG4gICYuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBPdmVybGFwIG9ubHkgc3R5bGVzLlxuICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcCB7XG4gICAgei1pbmRleDogJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDtcblxuICAgICYuaXMtb3BlbiB7XG4gICAgICBib3gtc2hhZG93OiAkb2ZmY2FudmFzLXNoYWRvdztcbiAgICB9XG4gIH1cblxuICAvLyBTZXRzIHRyYW5zZm9ybSB0byAwIHRvIHNob3cgYW4gb2ZmLWNhbnZhcyBwYW5lbC5cbiAgJi5pcy1vcGVuIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgdG8gcG9zaXRpb24gYW4gb2ZmLWNhbnZhcyBwYW5lbCB0byB0aGUgbGVmdC9yaWdodC90b3AvYm90dG9tLlxuQG1peGluIG9mZi1jYW52YXMtcG9zaXRpb24oXG4gICRwb3NpdGlvbjogbGVmdCxcbiAgJG9yaWVudGF0aW9uOiBob3Jpem9udGFsLFxuICAkc2l6ZXM6IGlmKCRvcmllbnRhdGlvbiA9PSBob3Jpem9udGFsLCAkb2ZmY2FudmFzLXNpemVzLCAkb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzKVxuKSB7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgcG9zaXRpb24gZm9yIG5lc3RlZCBvZmYtY2FudmFzIGVsZW1lbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9IC5vZmYtY2FudmFzLnBvc2l0aW9uLSN7JHBvc2l0aW9ufSB7XG5cbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIHdpZHRoOiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcblxuICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoJHNpemUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU2V0cyB0aGUgb3BlbiBwb3NpdGlvbiBmb3IgdGhlIGNvbnRlbnRcbiAgICBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9LmlzLW9wZW4tI3skcG9zaXRpb259IHtcbiAgICAgICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtJHNpemUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkcG9zaXRpb24gPT0gdG9wIHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICBoZWlnaHQ6ICRzaXplO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0kc2l6ZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBvcGVuIHBvc2l0aW9uIGZvciB0aGUgY29udGVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30uaXMtb3Blbi0jeyRwb3NpdGlvbn0ge1xuICAgICAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAgICAgQGVhY2ggJG5hbWUsICRzaXplIGluICRzaXplcyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbmFtZSkge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgJHBvc2l0aW9uID09IGJvdHRvbSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG5cbiAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgaGVpZ2h0OiAkc2l6ZTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBTZXRzIHRoZSBwb3NpdGlvbiBmb3IgbmVzdGVkIG9mZi1jYW52YXMgZWxlbWVudFxuICAgIEBhdC1yb290IC4jeyRtYWluY29udGVudC1jbGFzc30gLm9mZi1jYW52YXMucG9zaXRpb24tI3skcG9zaXRpb259IHtcbiAgICAgIEBlYWNoICRuYW1lLCAkc2l6ZSBpbiAkc2l6ZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKCRzaXplKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNldHMgdGhlIG9wZW4gcG9zaXRpb24gZm9yIHRoZSBjb250ZW50XG4gICAgQGF0LXJvb3QgLiN7JG1haW5jb250ZW50LWNsYXNzfS5pcy1vcGVuLSN7JHBvc2l0aW9ufSB7XG4gICAgICAmLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgICBAZWFjaCAkbmFtZSwgJHNpemUgaW4gJHNpemVzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLSRzaXplKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBJZiAkb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplIGlzIHNldCwgYWRkIGlubmVyIGJveC1zaGFkb3cuXG4gIC8vIFRoaXMgbWltaWNzIHRoZSBvZmYtY2FudmFzIHBhbmVsIGhhdmluZyBhIGxvd2VyIHotaW5kZXgsIHdpdGhvdXQgaGF2aW5nIHRvIGhhdmUgb25lLlxuICBAaWYgJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZSB7XG4gICAgJi5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICAgICAgQGluY2x1ZGUgaW5uZXItc2lkZS1zaGFkb3cocmlnaHQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgICAgIEBpbmNsdWRlIGlubmVyLXNpZGUtc2hhZG93KGxlZnQsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSB0b3Age1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyhib3R0b20sICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICAgIEBlbHNlIGlmICRwb3NpdGlvbiA9PSBib3R0b20ge1xuICAgICAgICBAaW5jbHVkZSBpbm5lci1zaWRlLXNoYWRvdyh0b3AsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LXNpemUsICRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLy8gU2V0cyB0aGUgc3R5bGVzIGZvciB0aGUgY29udGVudCBjb250YWluZXIuXG5AbWl4aW4gb2ZmLWNhbnZhcy1jb250ZW50KCkge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICAvLyBCaW5kIHRvIGhhcy10cmFuc2l0aW9uLVggY2xhc3MgdG8gcHJldmVudCB0cmFuc2l0aW9uIGZvciB0cmFuc2Zvcm06bm9uZVxuICAmLmhhcy10cmFuc2l0aW9uLW92ZXJsYXAsXG4gICYuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICRvZmZjYW52YXMtdHJhbnNpdGlvbi1sZW5ndGggJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZztcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBzY29wZSB1bnRpbCB0aGUgZWxlbWVudCBpcyBjbG9zZWQgKG1ha2VzIHN1cmUgdHJhbnNpdGlvbmVuZCBnZXRzIHRyaWdnZXJlZClcbiAgJi5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgfVxuXG4gIC8vIENvbnNpZGVyIGVsZW1lbnQgJiBjb250ZW50LCBuZXN0ZWQgaW4gYW5vdGhlciBjb250ZW50XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyB0aGF0IHJldmVhbCBhbiBvZmYtY2FudmFzIHBhbmVsLlxuQG1peGluIG9mZi1jYW52YXMtcmV2ZWFsKFxuICAkcG9zaXRpb246IGxlZnQsXG4gICR6aW5kZXg6ICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCxcbiAgJGNvbnRlbnQ6ICRtYWluY29udGVudC1jbGFzcyxcbiAgJGJyZWFrcG9pbnQ6IHNtYWxsXG4pIHtcbiAgdHJhbnNmb3JtOiBub25lO1xuICB6LWluZGV4OiAkemluZGV4O1xuICB0cmFuc2l0aW9uOiBub25lO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXG4gIEBpZiBub3QgJG9mZmNhbnZhcy1maXhlZC1yZXZlYWwge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgfVxuXG4gIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBDb25zaWRlciByZXZlYWxlZCBlbGVtZW50IGlzIG5lc3RlZCBpbiBjb250ZW50XG4gIC4jeyRtYWluY29udGVudC1jbGFzc30gJiB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgQGF0LXJvb3QgLiN7JGNvbnRlbnR9Lmhhcy1yZXZlYWwtI3skcG9zaXRpb259IHtcbiAgICBtYXJnaW4tI3skcG9zaXRpb259OiAtemYtZ2V0LWJwLXZhbCgkb2ZmY2FudmFzLXNpemVzLCAkYnJlYWtwb2ludCk7XG4gIH1cblxuICAvLyBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSAocHJpb3IgdG8gdjYuNClcbiAgJiB+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICAvLyBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIC8vICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRpdGxlLWJhci1sZWZ0LFxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6ICR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG4gIH1cbiAgLnRvcC1iYXIge1xuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgfVxuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLyBIaWRlIGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgb25seSBkaXNwbGF5aW5nIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIHNob3ctZm9yKCRzaXplKSB7XG4gICRzaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gIC8vIFVzZSBhIHByZWNpc2lvbiB1bmRlciAxcHggdG8gc3VwcG9ydCBicm93c2VyIHpvb20sIGJ1dCBub3QgdG8gbG93IHRvIGF2b2lkIHJvdW5kaW5nLlxuICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgJHNpemU6IC16Zi1icC10by1lbSgkc2l6ZSkgLSAwLjAwMTI1O1xuXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCB3aXRoaW4gYSBjZXJ0YWluIGJyZWFrcG9pbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvci1vbmx5KCRzaXplKSB7XG4gICRsb3dlci1ib3VuZC1zaXplOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJHNpemUpO1xuICAkdXBwZXItYm91bmQtc2l6ZTogLXpmLW1hcC1uZXh0KCRicmVha3BvaW50cywgJHNpemUpO1xuXG4gIC8vIG1vcmUgb2Z0ZW4gdGhhbiBub3QgdGhpcyB3aWxsIGJlIGNvcnJlY3QsIGp1c3Qgb25lIHRpbWUgcm91bmQgdGhlIGxvb3AgaXQgd29uJ3Qgc28gc2V0IGluIHNjb3BlIGhlcmVcbiAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpIC0gMC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLnZpc2libGUge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBEYXJrIE1vZGUgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChwcmVmZXJzLWNvbG9yLXNjaGVtZTogZGFyaykge1xuICAgIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSUUxMCsgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgQG1lZGlhIGFsbCBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBub25lKSwgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpIHtcbiAgICAuc2hvdy1mb3ItaWUge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgLmhpZGUtZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAvLyBTdGlja3kgVmlzaWJpbGl0eVxuICAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5pcy1zdHVjayAuc2hvdy1mb3Itc3RpY2t5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8vIEFwcGxpZXMgYmFzaWMgdHJhbnNpdGlvbiBzZXR0aW5ncyB0byBhbiBlbGVtZW50LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIHRyYW5zaXRpb24tYmFzaWNzKFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gIEBpbmNsdWRlIC1tb3Rpb24tdWktZGVmYXVsdHM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmc7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheTtcbn1cblxuLy8vIFdyYXBzIHRoZSBjb250ZW50IGluIHRoZSBzZXR1cCBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIHNldHVwIGZvciB0cmFuc2l0aW9uLlxuQG1peGluIHRyYW5zaXRpb24tc3RhcnQoJGRpcikge1xuICAkc2VsZWN0b3I6IC1tdWktYnVpbGQtc2VsZWN0b3IobWFwLWdldCgkbW90aW9uLXVpLXN0YXRlcywgJGRpcikpO1xuXG4gIEBhdC1yb290IHtcbiAgICAjeyRzZWxlY3Rvcn0ge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgYWN0aXZlIGNsYXNzIGZvciBhIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyIC0gU3RhdGUgdG8gYWN0aXZhdGUgYSB0cmFuc2l0aW9uIG9uLlxuQG1peGluIHRyYW5zaXRpb24tZW5kKCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpLCB0cnVlKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgc3RhZ2dlciBhbmltYXRpb24sIHdoaWNoIGNhbiBiZSB1c2VkIHdpdGggQW5ndWxhcidzIGBuZy1yZXBlYXRgLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheS1hbW91bnQgLSBBbW91bnQgb2YgdGltZSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyB0byBhZGQgYmV0d2VlbiBlYWNoIGl0ZW0ncyBhbmltYXRpb24uXG5AbWl4aW4gc3RhZ2dlcigkZGVsYXktYW1vdW50KSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6ICRkZWxheS1hbW91bnQ7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDA7IC8vIFByZXZlbnQgYWNjaWRlbnRhbCBDU1MgaW5oZXJpdGFuY2Vcbn1cbiIsIi8vIHNjc3MtbGludDpkaXNhYmxlIEltcG9ydGFudFJ1bGUsIFNwYWNlQWZ0ZXJDb21tYSwgU2luZ2xlTGluZVBlclByb3BlcnR5XG5cbkBtaXhpbiAtbW90aW9uLXVpLWRlZmF1bHRzIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktZWFzaW5ncywgZGVmYXVsdCk7XG59XG5cbi8vIFRyYW5zaXRpb25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuQG1peGluIG1vdGlvbi11aS10cmFuc2l0aW9ucyB7XG4gIC8vIFNsaWRlXG4gIC5zbGlkZS1pbi1kb3duICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgZG93bik7IH1cbiAgLnNsaWRlLWluLWxlZnQgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICByaWdodCk7IH1cbiAgLnNsaWRlLWluLXVwICAgICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICB1cCk7IH1cbiAgLnNsaWRlLWluLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktc2xpZGUoaW4sICBsZWZ0KTsgfVxuICAuc2xpZGUtb3V0LWRvd24gICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGRvd24pOyB9XG4gIC5zbGlkZS1vdXQtcmlnaHQgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgcmlnaHQpOyB9XG4gIC5zbGlkZS1vdXQtdXAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgdXApOyB9XG4gIC5zbGlkZS1vdXQtbGVmdCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKG91dCwgbGVmdCk7IH1cblxuICAvLyBGYWRlXG4gIC5mYWRlLWluICB7IEBpbmNsdWRlIG11aS1mYWRlKGluLCAgMCwgMSk7IH1cbiAgLmZhZGUtb3V0IHsgQGluY2x1ZGUgbXVpLWZhZGUob3V0LCAxLCAwKTsgfVxuXG4gIC8vIEhpbmdlXG4gIC5oaW5nZS1pbi1mcm9tLXRvcCAgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1yaWdodCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHJpZ2h0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1ib3R0b20gICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIGJvdHRvbSk7IH1cbiAgLmhpbmdlLWluLWZyb20tbGVmdCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBsZWZ0KTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteCAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICB0b3AsICAgY2VudGVyKTsgfVxuICAuaGluZ2UtaW4tZnJvbS1taWRkbGUteSAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCwgY2VudGVyKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tdG9wICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXJpZ2h0ICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCByaWdodCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLWJvdHRvbSAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCBib3R0b20pOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgbGVmdCk7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLW1pZGRsZS15IHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQsIGNlbnRlcik7IH1cblxuICAvLyBTY2FsZVxuICAuc2NhbGUtaW4tdXAgICAgeyBAaW5jbHVkZSBtdWktem9vbShpbiwgIDAuNSwgMSk7IH1cbiAgLnNjYWxlLWluLWRvd24gIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAxLjUsIDEpOyB9XG4gIC5zY2FsZS1vdXQtdXAgICB7IEBpbmNsdWRlIG11aS16b29tKG91dCwgMSwgMS41KTsgfVxuICAuc2NhbGUtb3V0LWRvd24geyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDAuNSk7IH1cblxuICAvLyBTcGluXG4gIC5zcGluLWluICAgICB7IEBpbmNsdWRlIG11aS1zcGluKGluLCAgY3cpOyB9XG4gIC5zcGluLW91dCAgICB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY3cpOyB9XG4gIC5zcGluLWluLWNjdyAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGNjdyk7IH1cbiAgLnNwaW4tb3V0LWNjdyB7IEBpbmNsdWRlIG11aS1zcGluKG91dCwgY2N3KTsgfVxuXG4gIC8vIFRyYW5zaXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktZWFzaW5ncyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgdHJhbnNpdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQW5pbWF0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktYW5pbWF0aW9ucyB7XG4gIC5zaGFrZSAgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc2hha2UpOyB9XG4gIC5zcGluLWN3ICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3Bpbik7IH1cbiAgLnNwaW4tY2N3IHsgQGluY2x1ZGUgbXVpLWFuaW1hdGlvbihzcGluKGNjdykpOyB9XG4gIC53aWdnbGUgICB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24od2lnZ2xlKTsgfVxuXG4gIC5zaGFrZSxcbiAgLnNwaW4tY3csXG4gIC5zcGluLWNjdyxcbiAgLndpZ2dsZSB7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiBtYXAtZ2V0KCRtb3Rpb24tdWktc3BlZWRzLCBkZWZhdWx0KTtcbiAgfVxuXG4gIC8vIEFuaW1hdGlvbiBNb2RpZmllcnNcbiAgLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbiAgLmluZmluaXRlIHsgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRtb3Rpb24tdWktc3BlZWRzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWRlbGF5cyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9LWRlbGF5IHsgYW5pbWF0aW9uLWRlbGF5OiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gSW50ZXJuYWwgY291bnRlciBmb3IgY3JlYXRpbmcgdW5pcXVlIGtleWZyYW1lIG5hbWVzXG4kLW11aS1jdXN0b206IDA7XG5cbi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zLiBVc2UgdGhpcyBmdW5jdGlvbiBpbnN0ZWFkIG9mIGBtdWktYW5pbWF0aW9uYCBpZiB5b3Ugd2FudCB0byBjcmVhdGUgYSBrZXlmcmFtZSBhbmltYXRpb24gKndpdGhvdXQqIGF1dG9tYXRpY2FsbHkgYXNzaWduaW5nIGl0IHRvIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkbmFtZSAtIE5hbWUgb2YgdGhlIGtleWZyYW1lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJGVmZmVjdHMuLi4gLSBPbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIHRvIGJ1aWxkIHRoZSBrZXlmcmFtZSB3aXRoLlxuQG1peGluIG11aS1rZXlmcmFtZXMoJG5hbWUsICRlZmZlY3RzLi4uKSB7XG4gICRvYmo6IC1tdWktcHJvY2Vzcy1hcmdzKCRlZmZlY3RzLi4uKTtcbiAgJG9iajogbWFwLXJlbW92ZSgkb2JqLCBuYW1lKTtcblxuICBAa2V5ZnJhbWVzICN7JG5hbWV9IHtcbiAgICAvLyBOb3cgaXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgcGVyY2VudGFnZVxuICAgIEBlYWNoICRwY3QsICRwcm9wcyBpbiAkb2JqIHtcbiAgICAgICN7LW11aS1rZXlmcmFtZS1wY3QoJHBjdCl9IHtcbiAgICAgICAgLy8gTGFzdGx5LCBpdGVyYXRlIHRocm91Z2ggZWFjaCBDU1MgcHJvcGVydHkgd2l0aGluIGEgcGVyY2VudGFnZSBhbmQgcHJpbnQgaXQgb3V0XG4gICAgICAgIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJHByb3BzIHtcbiAgICAgICAgICAjeyRwcm9wfTogI3skdmFsdWV9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgc3RyaW5nIGZvciBhIENTUyBrZXlmcmFtZSwgYnkgY29udmVydGluZyBhIGxpc3Qgb2YgbnVtYmVycyB0byBhIGNvbW1hLXNlcGFyYXRlZCBsaXN0IG9mIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRpbnB1dCAtIExpc3Qgb2YgbnVtYmVycyB0byB1c2UuXG4vLy8gQHJldHVybiB7U3RyaW5nfSBBIHNldCBvZiBjb21tYS1zZXBhcmF0ZWQgcGVyY2VudGFnZSB2YWx1ZXMuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1wY3QoJGlucHV0KSB7XG4gICRvdXRwdXQ6ICgpO1xuXG4gIEBpZiB0eXBlLW9mKCRpbnB1dCkgPT0gJ251bWJlcicge1xuICAgICRvdXRwdXQ6ICgkaW5wdXQgKiAxJSk7XG4gIH0gQGVsc2UgaWYgdHlwZS1vZigkaW5wdXQpID09ICdsaXN0JyB7XG4gICAgQGVhY2ggJGkgaW4gJGlucHV0IHtcbiAgICAgICRvdXRwdXQ6IGFwcGVuZCgkb3V0cHV0LCAoJGkgKiAxJSksIGNvbW1hKTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuIFwiI3skb3V0cHV0fVwiO1xufVxuXG4vLy8gUHJpbnRzIHRoZSBDU1MgcHJvcGVydGllcyBmcm9tIGEgc3BlY2lmaWMga2V5IGluIGEga2V5ZnJhbWVzIG1hcC4gVXNlZCB0byBib3Jyb3cgQ1NTIGZyb20ga2V5ZnJhbWUgZnVuY3Rpb25zIGZvciB1c2UgaW4gdHJhbnNpdGlvbnMuXG4vLy8gQHBhcmFtIHtNYXB9ICRrZiAtIEtleWZyYW1lIG1hcCB0byBleHRyYWN0IGZyb20uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRrZXkgLSBLZXkgaW4gdGhlIG1hcCB0byBwcmludCB0aGUgQ1NTIG9mLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQG1peGluIC1tdWkta2V5ZnJhbWUtZ2V0KCRrZiwgJGtleSkge1xuICAkbWFwOiBtYXAtZ2V0KCRrZiwgJGtleSk7XG5cbiAgQGVhY2ggJHByb3AsICR2YWx1ZSBpbiAkbWFwIG9yICgpIHtcbiAgICAvLyBTb21lIGtleWZyYW1lIG1hcHMgc3RvcmUgdHJhbnNmb3JtcyBhcyBxdW90ZWQgc3RyaW5nc1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ3N0cmluZycge1xuICAgICAgJHZhbHVlOiB1bnF1b3RlKCR2YWx1ZSk7XG4gICAgfVxuICAgICN7JHByb3B9OiAkdmFsdWU7XG4gIH1cbn1cblxuLy8vIFJlZm9ybWF0cyBhIG1hcCBjb250YWluaW5nIGtleXMgd2l0aCBhIGxpc3Qgb2YgdmFsdWVzLCBzbyB0aGF0IGVhY2gga2V5IGlzIGEgc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHNwbGl0IHVwLlxuLy8vIEByZXR1cm4ge01hcH0gQSByZWZvcm1hdHRlZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKSB7XG4gICRuZXctbWFwOiAoKTtcblxuICAvLyBTcGxpdCBrZXlzIHdpdGggbXVsdGlwbGUgdmFsdWVzIGludG8gaW5kaXZpZHVhbCBrZXlzXG4gIEBlYWNoICRrZXksICRpdGVtIGluICRtYXAge1xuICAgICRrZXktdHlwZTogdHlwZS1vZigka2V5KTtcblxuICAgIEBpZiAka2V5LXR5cGUgPT0gJ251bWJlcicge1xuICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrZXk6ICRpdGVtKSk7XG4gICAgfSBAZWxzZSBpZiAka2V5LXR5cGUgPT0gJ2xpc3QnIHtcbiAgICAgIEBlYWNoICRrIGluICRrZXkge1xuICAgICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGs6ICRpdGVtKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIGEgc2VyaWVzIG9mIGtleWZyYW1lIG9iamVjdHMgaW50byBvbmUuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkbWFwcy4uLiAtIEEgc2VyaWVzIG9mIG1hcHMgdG8gbWVyZ2UsIGFzIGluZGl2aWR1YWwgcGFyYW1ldGVycy5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQga2V5ZnJhbWUgb2JqZWN0LlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtY29tYmluZSgkbWFwcy4uLikge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2ggbWFwIHBhc3NlZCBpblxuICBAZWFjaCAkbWFwIGluICRtYXBzIHtcbiAgICBAaWYgLW11aS1pcy1mdW5jdGlvbigkbWFwKSB7XG4gICAgICAkbWFwOiAtbXVpLXNhZmUtY2FsbCgkbWFwKTtcbiAgICB9XG5cbiAgICAkbWFwOiAtbXVpLWtleWZyYW1lLXNwbGl0KCRtYXApO1xuXG4gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIGVhY2gga2V5ZnJhbWUgaW4gdGhlIG1hcFxuICAgIC8vICRrZXkgaXMgdGhlIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICAvLyAkdmFsdWUgaXMgYSBtYXAgb2YgQ1NTIHByb3BlcnRpZXNcbiAgICBAZWFjaCAka2V5LCAkdmFsdWUgaW4gJG1hcCB7XG4gICAgICAkbmV3LXZhbHVlOiAoKTtcblxuICAgICAgQGlmIG1hcC1oYXMta2V5KCRuZXctbWFwLCAka2V5KSB7XG4gICAgICAgIC8vIElmIHRoZSBtYXAgYWxyZWFkeSBoYXMgdGhlIGtleWZyYW1lICUsIGFwcGVuZCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6IC1tdWktbWVyZ2UtcHJvcGVydGllcyhtYXAtZ2V0KCRuZXctbWFwLCAka2V5KSwgJHZhbHVlKTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAvLyBPdGhlcndpc2UsIGNyZWF0ZSBhIG5ldyBtYXAgd2l0aCB0aGUgbmV3IHByb3BlcnR5XG4gICAgICAgICRuZXctdmFsdWU6ICR2YWx1ZTtcbiAgICAgIH1cblxuICAgICAgLy8gRmluYWxseSwgbWVyZ2UgdGhlIG1vZGlmaWVkIGtleWZyYW1lIHZhbHVlIGludG8gdGhlIG91dHB1dCBtYXBcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkbmV3LXZhbHVlKSk7XG4gICAgfVxuICB9XG5cbiAgLy8gTWFrZSBhIG5hbWUgZm9yIHRoZSBrZXlmcmFtZXNcbiAgJC1tdWktY3VzdG9tOiAkLW11aS1jdXN0b20gKyAxICFnbG9iYWw7XG4gICRtYXAtbmFtZTogKG5hbWU6ICdjdXN0b20tI3skLW11aS1jdXN0b219Jyk7XG4gICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICRtYXAtbmFtZSk7XG5cbiAgQHJldHVybiAkbmV3LW1hcDtcbn1cblxuLy8vIENvbWJpbmVzIHR3byBtYXBzIG9mIENTUyBwcm9wZXJ0aWVzIGludG8gb25lIG1hcC4gSWYgYm90aCBtYXBzIGhhdmUgYSB0cmFuc2Zvcm0gcHJvcGVydHksIHRoZSB2YWx1ZXMgZnJvbSBlYWNoIHdpbGwgYmUgY29tYmluZWQgaW50byBvbmUgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtNYXB9ICRvbmUgLSBGaXJzdCBtYXAgdG8gbWVyZ2UuXG4vLy8gQHBhcmFtIHtNYXB9ICR0d28gLSBTZWNvbmQgbWFwIHRvIG1lcmdlLlxuLy8vIEByZXR1cm4ge01hcH0gQSBjb21iaW5lZCBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG5AZnVuY3Rpb24gLW11aS1tZXJnZS1wcm9wZXJ0aWVzKCRvbmUsICR0d28pIHtcbiAgQGlmIG1hcC1oYXMta2V5KCRvbmUsIHRyYW5zZm9ybSkgYW5kIG1hcC1oYXMta2V5KCR0d28sIHRyYW5zZm9ybSkge1xuICAgICR0cmFuc2Zvcm06IGpvaW4obWFwLWdldCgkb25lLCB0cmFuc2Zvcm0pLCBtYXAtZ2V0KCR0d28sIHRyYW5zZm9ybSkpO1xuICAgICRvbmU6IG1hcC1tZXJnZSgkb25lLCAodHJhbnNmb3JtOiAkdHJhbnNmb3JtKSk7XG4gICAgJHR3bzogbWFwLXJlbW92ZSgkdHdvLCB0cmFuc2Zvcm0pO1xuICB9XG5cbiAgQHJldHVybiBtYXAtbWVyZ2UoJG9uZSwgJHR3byk7XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNsaWRpbmcgdHJhbnNpdGlvbiBieSB0cmFuc2xhdGluZyB0aGUgZWxlbWVudCBob3Jpem9udGFsbHkgb3IgdmVydGljYWxseS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNsaWRlIHRvLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuIEJ5IGRlZmF1bHQgYGxlZnRgIGFuZCBgcmlnaHRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkYW1vdW50IFsxMDAlXSAtIExlbmd0aCBvZiB0aGUgc2xpZGUgYXMgYSBwZXJjZW50YWdlIHZhbHVlLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXNsaWRlIChcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogbnVsbCxcbiAgJGFtb3VudDogMTAwJSxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgc2xpZGUtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBsZWZ0LCByaWdodCkpO1xuICAkc2xpZGU6IHNsaWRlKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgLy8gQ1NTIE91dHB1dFxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2xpZGUsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuXG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGZhZGUgdHJhbnNpdGlvbiBieSBhZGp1c3RpbmcgdGhlIG9wYWNpdHkgb2YgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIE9wYWNpdHkgdG8gc3RhcnQgYXQuIE11c3QgYmUgYSBudW1iZXIgYmV0d2VlbiAwIGFuZCAxLiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gT3BhY2l0eSB0byBlbmQgb24uIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktZmFkZShcbiAgJHN0YXRlOiBpbixcbiAgJGZyb206IG51bGwsXG4gICR0bzogbnVsbCxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkZmFkZTogZmFkZSgkZnJvbSwgJHRvKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkZmFkZSwgMCk7XG5cbiAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDEwMCk7XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgaGluZ2UgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmcm9tIFtsZWZ0XSAtIEVkZ2Ugb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIGZyb20uIENhbiBiZSBgdG9wYCwgYHJpZ2h0YCwgYGJvdHRvbWAsIG9yIGBsZWZ0YC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRheGlzIFtlZGdlXSAtIEF4aXMgb2YgdGhlIGVsZW1lbnQgdG8gcm90YXRlIG9uLiBDYW4gYmUgYGVkZ2VgIG9yIGBjZW50ZXJgLlxuLy8vIEBwYXJhbSB7TGVuZ3RofSAkcGVyc3BlY3RpdmUgWzIwMDBweF0gLSBQZXJjZWl2ZWQgZGlzdGFuY2UgYmV0d2VlbiB0aGUgdmlld2VyIGFuZCB0aGUgZWxlbWVudC4gQSBoaWdoZXIgbnVtYmVyIHdpbGwgbWFrZSB0aGUgcm90YXRpb24gZWZmZWN0IG1vcmUgcHJvbm91bmNlZC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR0dXJuLW9yaWdpbiBbbnVsbF0gLSBTaWRlIG9mIHRoZSBlbGVtZW50IHRvIHN0YXJ0IHRoZSByb3RhdGlvbiBmcm9tLiBDYW4gYmUgYGZyb20tYmFja2Agb3IgYGZyb20tZnJvbnRgLiBCeSBkZWZhdWx0IGBmcm9tLWJhY2tgIGFuZCBgZnJvbS1mcm9udGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1oaW5nZSAoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBsZWZ0LFxuICAkYXhpczogZWRnZSxcbiAgJHBlcnNwZWN0aXZlOiAyMDAwcHgsXG4gICR0dXJuLW9yaWdpbjogbnVsbCxcbiAgJGZhZGU6IG1hcC1nZXQoJG1vdGlvbi11aS1zZXR0aW5ncywgaGluZ2UtYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICR0dXJuLW9yaWdpbjogaWYoJHR1cm4tb3JpZ2luICE9IG51bGwsICR0dXJuLW9yaWdpbiwgaWYoJHN0YXRlID09IGluLCBmcm9tLWJhY2ssIGZyb20tZnJvbnQpKTtcbiAgJGhpbmdlOiBoaW5nZSgkc3RhdGUsICRmcm9tLCAkYXhpcywgJHBlcnNwZWN0aXZlLCAkdHVybi1vcmlnaW4pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRoaW5nZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc2NhbGluZyB0cmFuc2l0aW9uLiBBIHNjYWxlIG9mIGAxYCBtZWFucyB0aGUgZWxlbWVudCBpcyB0aGUgc2FtZSBzaXplLiBMYXJnZXIgbnVtYmVycyBtYWtlIHRoZSBlbGVtZW50IGJpZ2dlciwgd2hpbGUgbnVtYmVycyBsZXNzIHRoYW4gMSBtYWtlIHRoZSBlbGVtZW50IHNtYWxsZXIuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRmcm9tIFtudWxsXSAtIFNpemUgdG8gc3RhcnQgYXQuIEJ5IGRlZmF1bHQgYDBgIGFuZCBgMWAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0byBbbnVsbF0gLSBTaXplIHRvIGVuZCBhdC4gQnkgZGVmYXVsdCBgMWAgYW5kIGAwYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFt0cnVlXSAtIFNldCB0byBgdHJ1ZWAgdG8gZmFkZSB0aGUgZWxlbWVudCBpbiBvciBvdXQgc2ltdWx0YW5lb3VzbHkuXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLXpvb20oXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNjYWxlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZnJvbTogaWYoJGZyb20gIT0gbnVsbCwgJGZyb20sIGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSkpO1xuICAkdG86IGlmKCR0byAhPSBudWxsLCAkdG8sIGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCkpO1xuICAkc2NhbGU6IHpvb20oJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNjYWxlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBzcGlubmluZyB0cmFuc2l0aW9uIGJ5IHJvdGF0aW5nIHRoZSBlbGVtZW50LiBUaGUgYHR1cm5gIHVuaXQgaXMgdXNlZCB0byBzcGVjaWZ5IGhvdyBmYXIgdG8gcm90YXRlLiBgMXR1cm5gIGlzIGVxdWFsIHRvIGEgMzYwLWRlZ3JlZSBzcGluLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbbnVsbF0gLSBEaXJlY3Rpb24gdG8gc3Bpbi4gU2hvdWxkIGJlIGBjd2AgKGNsb2Nrd2lzZSkgb3IgYGNjd2AgKGNvdW50ZXJjbG9ja3dpc2UpLiBCeSBkZWZhdWx0IGBjd2AgYW5kIGBjY3dgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYW1vdW50IFswLjc1dHVybl0gLSBBbW91bnQgdG8gZWxlbWVudCB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zcGluKFxuICAkc3RhdGU6IGluLFxuICAkZGlyZWN0aW9uOiBjdyxcbiAgJGFtb3VudDogMC43NXR1cm4sXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNwaW4tYW5kLWZhZGUpLFxuICAkZHVyYXRpb246IG51bGwsXG4gICR0aW1pbmc6IG51bGwsXG4gICRkZWxheTogbnVsbFxuKSB7XG4gICRkaXJlY3Rpb246IGlmKCRkaXJlY3Rpb24gIT0gbnVsbCwgJGRpcmVjdGlvbiwgaWYoJHN0YXRlID09IGluLCBjdywgY2N3KSk7XG4gICRzcGluOiBzcGluKCRzdGF0ZSwgJGRpcmVjdGlvbiwgJGFtb3VudCk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNwaW4sIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEga2V5ZnJhbWUgZnJvbSBvbmUgb3IgbW9yZSBlZmZlY3QgZnVuY3Rpb25zIGFuZCBhc3NpZ25zIGl0IHRvIHRoZSBlbGVtZW50IGJ5IGFkZGluZyB0aGUgYGFuaW1hdGlvbi1uYW1lYCBwcm9wZXJ0eS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWktYW5pbWF0aW9uKCRhcmdzLi4uKSB7XG4gICRuYW1lOiBtYXAtZ2V0KC1tdWktcHJvY2Vzcy1hcmdzKCRhcmdzLi4uKSwgbmFtZSk7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbiAgQGluY2x1ZGUgbXVpLWtleWZyYW1lcygkbmFtZSwgJGFyZ3MuLi4pO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLyBEZWZhdWx0IFZhcmlhYmxlc1xuXG4vLyBTbGljayBpY29uIGVudGl0eSBjb2RlcyBvdXRwdXRzIHRoZSBmb2xsb3dpbmdcbi8vIFwiXFwyMTkwXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpBcIlxuLy8gXCJcXDIxOTJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKGklwiXG4vLyBcIlxcMjAyMlwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oCiXCJcblxuJHNsaWNrLWZvbnQtcGF0aDogXCIuL2ZvbnRzL1wiICFkZWZhdWx0O1xuJHNsaWNrLWZvbnQtZmFtaWx5OiBcInNsaWNrXCIgIWRlZmF1bHQ7XG4kc2xpY2stbG9hZGVyLXBhdGg6IFwiLi9cIiAhZGVmYXVsdDtcbiRzbGljay1hcnJvdy1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNvbG9yOiBibGFjayAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3ItYWN0aXZlOiAkc2xpY2stZG90LWNvbG9yICFkZWZhdWx0O1xuJHNsaWNrLXByZXYtY2hhcmFjdGVyOiBcIlxcMjE5MFwiICFkZWZhdWx0O1xuJHNsaWNrLW5leHQtY2hhcmFjdGVyOiBcIlxcMjE5MlwiICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jaGFyYWN0ZXI6IFwiXFwyMDIyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LXNpemU6IDZweCAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LWRlZmF1bHQ6IDAuNzUgIWRlZmF1bHQ7XG4kc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjogMSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU6IDAuMjUgIWRlZmF1bHQ7XG5cbkBmdW5jdGlvbiBzbGljay1pbWFnZS11cmwoJHVybCkge1xuICAgIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gaW1hZ2UtdXJsKCR1cmwpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuQGZ1bmN0aW9uIHNsaWNrLWZvbnQtdXJsKCR1cmwpIHtcbiAgICBAaWYgZnVuY3Rpb24tZXhpc3RzKGZvbnQtdXJsKSB7XG4gICAgICAgIEByZXR1cm4gZm9udC11cmwoJHVybCk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICAgQHJldHVybiB1cmwoJHNsaWNrLWZvbnQtcGF0aCArICR1cmwpO1xuICAgIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZiBzbGljay1pbWFnZS11cmwoXCJhamF4LWxvYWRlci5naWZcIikgY2VudGVyIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgfVxufVxuXG4vKiBJY29ucyAqL1xuQGlmICRzbGljay1mb250LWZhbWlseSA9PSBcInNsaWNrXCIge1xuICAgIEBmb250LWZhY2Uge1xuICAgICAgICBmb250LWZhbWlseTogXCJzbGlja1wiO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgICAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLnN2ZyNzbGlja1wiKSBmb3JtYXQoXCJzdmdcIik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICB9XG59XG5cbi8qIEFycm93cyAqL1xuXG4uc2xpY2stcHJldixcbi5zbGljay1uZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgZm9udC1zaXplOiAwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWRpc2FibGVkOmJlZm9yZSB7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRzbGljay1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgY29sb3I6ICRzbGljay1hcnJvdy1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktZGVmYXVsdDtcbiAgICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgfVxufVxuXG4uc2xpY2stcHJldiB7XG4gICAgbGVmdDogLTI1cHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICAgICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAtMjVweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBsZWZ0OiAtMjVweDtcbiAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJHNsaWNrLW5leHQtY2hhcmFjdGVyO1xuICAgICAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICAgICAgY29udGVudDogJHNsaWNrLXByZXYtY2hhcmFjdGVyO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKiBEb3RzICovXG5cbi5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uc2xpY2stZG90cyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogLTI1cHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGkge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgbWFyZ2luOiAwIDVweDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBidXR0b24ge1xuICAgICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDBweDtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1vbi1ob3ZlcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJHNsaWNrLWRvdC1zaXplO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICAgICAgICAgICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAgICAgICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5zbGljay1hY3RpdmUgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiLyogU2xpZGVyICovXG5cbi5zbGljay1zbGlkZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICB0b3VjaC1hY3Rpb246IHBhbi15O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stbGlzdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG5cbiAgICAmLmRyYWdnaW5nIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBjdXJzb3I6IGhhbmQ7XG4gICAgfVxufVxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnNsaWNrLXRyYWNrIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICBbZGlyPVwicnRsXCJdICYge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgJi5kcmFnZ2luZyBpbWcge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG5cbiAgICAuc2xpY2staW5pdGlhbGl6ZWQgJiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5zbGljay1sb2FkaW5nICYge1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnNsaWNrLXZlcnRpY2FsICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICB9XG59XG4uc2xpY2stYXJyb3cuc2xpY2staGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuIiwiLyogTWFnbmlmaWMgUG9wdXAgQ1NTICovXG5cbkBpbXBvcnQgXCJzZXR0aW5nc1wiO1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vXG4vLyBDb250ZW50czpcbi8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8gICAgLSBUcmFuc2x1c2NlbnQgb3ZlcmxheVxuLy8gICAgLSBDb250YWluZXJzLCB3cmFwcGVyc1xuLy8gICAgLSBDdXJzb3JzXG4vLyAgICAtIEhlbHBlciBjbGFzc2VzXG4vLyAyLiBBcHBlYXJhbmNlXG4vLyAgICAtIFByZWxvYWRlciAmIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLy8gICAgLSBDU1MgcmVzZXQgZm9yIGJ1dHRvbnNcbi8vICAgIC0gQ2xvc2UgaWNvblxuLy8gICAgLSBcIjEgb2YgWFwiIGNvdW50ZXJcbi8vICAgIC0gTmF2aWdhdGlvbiAobGVmdC9yaWdodCkgYXJyb3dzXG4vLyAgICAtIElmcmFtZSBjb250ZW50IHR5cGUgc3R5bGVzXG4vLyAgICAtIEltYWdlIGNvbnRlbnQgdHlwZSBzdHlsZXNcbi8vICAgIC0gTWVkaWEgcXVlcnkgd2hlcmUgc2l6ZSBvZiBhcnJvd3MgaXMgcmVkdWNlZFxuLy8gICAgLSBJRTcgc3VwcG9ydFxuLy9cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyAxLiBHZW5lcmFsIHN0eWxlc1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIFRyYW5zbHVzY2VudCBvdmVybGF5XG4ubWZwLWJnIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDI7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiBmaXhlZDtcblxuICBiYWNrZ3JvdW5kOiAkbWZwLW92ZXJsYXktY29sb3I7XG4gIG9wYWNpdHk6ICRtZnAtb3ZlcmxheS1vcGFjaXR5O1xufVxuXG4vLyBXcmFwcGVyIGZvciBwb3B1cFxuLm1mcC13cmFwIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDM7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjsgLy8gZml4ZXMgd2Via2l0IGJ1ZyB0aGF0IGNhbiBjYXVzZSBcImZhbHNlXCIgc2Nyb2xsYmFyXG59XG5cbi8vIFJvb3QgY29udGFpbmVyXG4ubWZwLWNvbnRhaW5lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIHBhZGRpbmc6IDAgJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQ7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi8vIFZlcnRpY2FsIGNlbnRlcmVyIGhlbHBlclxuLm1mcC1jb250YWluZXIge1xuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB9XG59XG5cbi8vIFJlbW92ZSB2ZXJ0aWNhbCBjZW50ZXJpbmcgd2hlbiBwb3B1cCBoYXMgY2xhc3MgYG1mcC1hbGlnbi10b3BgXG4ubWZwLWFsaWduLXRvcCB7XG4gIC5tZnAtY29udGFpbmVyIHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBQb3B1cCBjb250ZW50IGhvbGRlclxuLm1mcC1jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDU7XG59XG4ubWZwLWlubGluZS1ob2xkZXIsXG4ubWZwLWFqYXgtaG9sZGVyIHtcbiAgLm1mcC1jb250ZW50IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBjdXJzb3I6IGF1dG87XG4gIH1cbn1cblxuLy8gQ3Vyc29yc1xuLm1mcC1hamF4LWN1ciB7XG4gIGN1cnNvcjogcHJvZ3Jlc3M7XG59XG4ubWZwLXpvb20tb3V0LWN1ciB7XG4gICYsIC5tZnAtaW1hZ2UtaG9sZGVyIC5tZnAtY2xvc2Uge1xuICAgIGN1cnNvcjogLW1vei16b29tLW91dDtcbiAgICBjdXJzb3I6IC13ZWJraXQtem9vbS1vdXQ7XG4gICAgY3Vyc29yOiB6b29tLW91dDtcbiAgfVxufVxuLm1mcC16b29tIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBjdXJzb3I6IC13ZWJraXQtem9vbS1pbjtcbiAgY3Vyc29yOiAtbW96LXpvb20taW47XG4gIGN1cnNvcjogem9vbS1pbjtcbn1cbi5tZnAtYXV0by1jdXJzb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGN1cnNvcjogYXV0bztcbiAgfVxufVxuXG4ubWZwLWNsb3NlLFxuLm1mcC1hcnJvdyxcbi5tZnAtcHJlbG9hZGVyLFxuLm1mcC1jb3VudGVyIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDpub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbn1cblxuLy8gSGlkZSB0aGUgaW1hZ2UgZHVyaW5nIHRoZSBsb2FkaW5nXG4ubWZwLWxvYWRpbmcge1xuICAmLm1mcC1maWd1cmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gSGVscGVyIGNsYXNzIHRoYXQgaGlkZXMgc3R1ZmZcbkBpZiAkbWZwLXVzZS12aXN1YWxseWhpZGRlbiB7XG4gIC8vIEZyb20gSFRNTDUgQm9pbGVycGxhdGUgaHR0cHM6Ly9naXRodWIuY29tL2g1YnAvaHRtbDUtYm9pbGVycGxhdGUvYmxvYi92NC4yLjAvZG9jL2Nzcy5tZCN2aXN1YWxseWhpZGRlblxuICAubWZwLWhpZGUge1xuICAgIGJvcmRlcjogMCAhaW1wb3J0YW50O1xuICAgIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogLTFweCAhaW1wb3J0YW50O1xuICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gICAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB9XG59IEBlbHNlIHtcbiAgLm1mcC1oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vIDIuIEFwcGVhcmFuY2Vcbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4vLyBQcmVsb2FkZXIgYW5kIHRleHQgdGhhdCBkaXNwbGF5cyBlcnJvciBtZXNzYWdlc1xuLm1mcC1wcmVsb2FkZXIge1xuICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tdG9wOiAtMC44ZW07XG4gIGxlZnQ6IDhweDtcbiAgcmlnaHQ6IDhweDtcbiAgei1pbmRleDogJG1mcC16LWluZGV4LWJhc2UgKyA0O1xuICBhIHtcbiAgICBjb2xvcjogJG1mcC1jb250cm9scy10ZXh0LWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gSGlkZSBwcmVsb2FkZXIgd2hlbiBjb250ZW50IHN1Y2Nlc3NmdWxseSBsb2FkZWRcbi5tZnAtcy1yZWFkeSB7XG4gIC5tZnAtcHJlbG9hZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG5cbi8vIEhpZGUgY29udGVudCB3aGVuIGl0IHdhcyBub3QgbG9hZGVkXG4ubWZwLXMtZXJyb3Ige1xuICAubWZwLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuLy8gQ1NTLXJlc2V0IGZvciBidXR0b25zXG5idXR0b24ge1xuICAmLm1mcC1jbG9zZSxcbiAgJi5tZnAtYXJyb3cge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IDA7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICB6LWluZGV4OiAkbWZwLXotaW5kZXgtYmFzZSArIDY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgfVxuICAmOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXI6IDBcbiAgfVxufVxuXG5cbi8vIENsb3NlIGljb25cbi5tZnAtY2xvc2Uge1xuICB3aWR0aDogNDRweDtcbiAgaGVpZ2h0OiA0NHB4O1xuICBsaW5lLWhlaWdodDogNDRweDtcblxuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvcGFjaXR5OiAkbWZwLWNvbnRyb2xzLW9wYWNpdHk7XG4gIHBhZGRpbmc6IDAgMCAxOHB4IDEwcHg7XG4gIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC1zaXplOiAyOHB4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEJhc2tlcnZpbGxlLCBtb25vc3BhY2U7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gICY6YWN0aXZlIHtcbiAgICB0b3A6IDFweDtcbiAgfVxufVxuLm1mcC1jbG9zZS1idG4taW4ge1xuICAubWZwLWNsb3NlIHtcbiAgICBjb2xvcjogJG1mcC1pbm5lci1jbG9zZS1pY29uLWNvbG9yO1xuICB9XG59XG4ubWZwLWltYWdlLWhvbGRlcixcbi5tZnAtaWZyYW1lLWhvbGRlciB7XG4gIC5tZnAtY2xvc2Uge1xuICAgIGNvbG9yOiAkbWZwLWNvbnRyb2xzLWNvbG9yO1xuICAgIHJpZ2h0OiAtNnB4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDZweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4vLyBcIjEgb2YgWFwiIGNvdW50ZXJcbi5tZnAtY291bnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgY29sb3I6ICRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMThweDtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gTmF2aWdhdGlvbiBhcnJvd3NcbkBpZiAkbWZwLWluY2x1ZGUtYXJyb3dzIHtcbiAgLm1mcC1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIG9wYWNpdHk6ICRtZnAtY29udHJvbHMtb3BhY2l0eTtcbiAgICBtYXJnaW46IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgbWFyZ2luLXRvcDogLTU1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICB3aWR0aDogOTBweDtcbiAgICBoZWlnaHQ6IDExMHB4O1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbiAgICAmOmFjdGl2ZSB7XG4gICAgICBtYXJnaW4tdG9wOiAtNTRweDtcbiAgICB9XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICBtYXJnaW4tbGVmdDogMzVweDtcbiAgICAgIGJvcmRlcjogbWVkaXVtIGluc2V0IHRyYW5zcGFyZW50O1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuXG4gICAgICBib3JkZXItdG9wLXdpZHRoOiAxM3B4O1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMTNweDtcbiAgICAgIHRvcDo4cHg7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMjFweDtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDIxcHg7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuXG4gIH1cblxuICAubWZwLWFycm93LWxlZnQge1xuICAgIGxlZnQ6IDA7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItcmlnaHQ6IDE3cHggc29saWQgJG1mcC1jb250cm9scy1jb2xvcjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAzMXB4O1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBtYXJnaW4tbGVmdDogMjVweDtcbiAgICAgIGJvcmRlci1yaWdodDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAubWZwLWFycm93LXJpZ2h0IHtcbiAgICByaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxN3B4IHNvbGlkICRtZnAtY29udHJvbHMtY29sb3I7XG4gICAgICBtYXJnaW4tbGVmdDogMzlweFxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBib3JkZXItbGVmdDogMjdweCBzb2xpZCAkbWZwLWNvbnRyb2xzLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vIElmcmFtZSBjb250ZW50IHR5cGVcbkBpZiAkbWZwLWluY2x1ZGUtaWZyYW1lLXR5cGUge1xuICAubWZwLWlmcmFtZS1ob2xkZXIge1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1wYWRkaW5nLXRvcDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJG1mcC1pZnJhbWUtcGFkZGluZy10b3A7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6ICRtZnAtaWZyYW1lLW1heC13aWR0aDtcbiAgICB9XG4gICAgLm1mcC1jbG9zZSB7XG4gICAgICB0b3A6IC00MHB4O1xuICAgIH1cbiAgfVxuICAubWZwLWlmcmFtZS1zY2FsZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctdG9wOiAkbWZwLWlmcmFtZS1yYXRpbyAqIDEwMCU7XG4gICAgaWZyYW1lIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWlmcmFtZS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gSW1hZ2UgY29udGVudCB0eXBlXG5AaWYgJG1mcC1pbmNsdWRlLWltYWdlLXR5cGUge1xuXG4gIC8qIE1haW4gaW1hZ2UgaW4gcG9wdXAgKi9cbiAgaW1nIHtcbiAgICAmLm1mcC1pbWcge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIHBhZGRpbmc6ICRtZnAtaW1hZ2UtcGFkZGluZy10b3AgMCAkbWZwLWltYWdlLXBhZGRpbmctYm90dG9tO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICB9XG5cbiAgLyogVGhlIHNoYWRvdyBiZWhpbmQgdGhlIGltYWdlICovXG4gIC5tZnAtZmlndXJlIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogJG1mcC1pbWFnZS1wYWRkaW5nLXRvcDtcbiAgICAgIGJvdHRvbTogJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgYm94LXNoYWRvdzogJG1mcC1zaGFkb3c7XG4gICAgICBiYWNrZ3JvdW5kOiAkbWZwLWltYWdlLWJhY2tncm91bmQ7XG4gICAgfVxuICAgIHNtYWxsIHtcbiAgICAgIGNvbG9yOiAkbWZwLWNhcHRpb24tc3VidGl0bGUtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgIH1cbiAgICBmaWd1cmUge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuICAubWZwLWJvdHRvbS1iYXIge1xuICAgIG1hcmdpbi10b3A6IC0kbWZwLWltYWdlLXBhZGRpbmctYm90dG9tICsgNDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgY3Vyc29yOiBhdXRvO1xuICB9XG4gIC5tZnAtdGl0bGUge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgbGluZS1oZWlnaHQ6IDE4cHg7XG4gICAgY29sb3I6ICRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgcGFkZGluZy1yaWdodDogMzZweDsgLy8gbGVhdmUgc29tZSBzcGFjZSBmb3IgY291bnRlciBhdCByaWdodCBzaWRlXG4gIH1cblxuICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgLm1mcC1jb250ZW50IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubWZwLWdhbGxlcnkge1xuICAgIC5tZnAtaW1hZ2UtaG9sZGVyIHtcbiAgICAgIC5tZnAtZmlndXJlIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgQGlmICRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSwgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMzAwcHgpIHtcbiAgICAgIC8qKlxuICAgICAgICogUmVtb3ZlIGFsbCBwYWRkaW5ncyBhcm91bmQgdGhlIGltYWdlIG9uIHNtYWxsIHNjcmVlblxuICAgICAgICovXG4gICAgICAubWZwLWltZy1tb2JpbGUge1xuICAgICAgICAubWZwLWltYWdlLWhvbGRlciB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAmLm1mcC1pbWcge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1maWd1cmUge1xuICAgICAgICAgIC8vIFRoZSBzaGFkb3cgYmVoaW5kIHRoZSBpbWFnZVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzbWFsbCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubWZwLWJvdHRvbS1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC42KTtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAzcHggNXB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1mcC1jb3VudGVyIHtcbiAgICAgICAgICByaWdodDogNXB4O1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICB9XG4gICAgICAgIC5tZnAtY2xvc2Uge1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjYpO1xuICAgICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gU2NhbGUgbmF2aWdhdGlvbiBhcnJvd3MgYW5kIHJlZHVjZSBwYWRkaW5nIGZyb20gc2lkZXNcbkBtZWRpYSBhbGwgYW5kIChtYXgtd2lkdGg6IDkwMHB4KSB7XG4gIC5tZnAtYXJyb3cge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjc1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuNzUpO1xuICB9XG4gIC5tZnAtYXJyb3ctbGVmdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDA7XG4gIH1cbiAgLm1mcC1hcnJvdy1yaWdodCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCU7XG4gIH1cbiAgLm1mcC1jb250YWluZXIge1xuICAgIHBhZGRpbmctbGVmdDogJG1mcC1wb3B1cC1wYWRkaW5nLWxlZnQtbW9iaWxlO1xuICAgIHBhZGRpbmctcmlnaHQ6ICRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTtcbiAgfVxufVxuXG4iLCIvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi8vICAgICAgU2V0dGluZ3MgICAgICAvL1xuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbi8vIG92ZXJsYXlcbiRtZnAtb3ZlcmxheS1jb2xvcjogICAgICAgICAgICAgICAgICAgIzBiMGIwYiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLW92ZXJsYXktb3BhY2l0eTogICAgICAgICAgICAgICAgIDAuOCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIG92ZXJsYXkgc2NyZWVuXG4kbWZwLXNoYWRvdzogICAgICAgICAgICAgICAgICAgICAgICAgIDAgMCA4cHggcmdiYSgwLCAwLCAwLCAwLjYpICFkZWZhdWx0OyAvLyBTaGFkb3cgb24gaW1hZ2Ugb3IgaWZyYW1lXG5cbi8vIHNwYWNpbmdcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgOHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFBhZGRpbmcgZnJvbSBsZWZ0IGFuZCBmcm9tIHJpZ2h0IHNpZGVcbiRtZnAtcG9wdXAtcGFkZGluZy1sZWZ0LW1vYmlsZTogICAgICAgNnB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgIC8vIFNhbWUgYXMgYWJvdmUsIGJ1dCBpcyBhcHBsaWVkIHdoZW4gd2lkdGggb2Ygd2luZG93IGlzIGxlc3MgdGhhbiA4MDBweFxuXG4kbWZwLXotaW5kZXgtYmFzZTogICAgICAgICAgICAgICAgICAgIDEwNDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYXNlIHotaW5kZXggb2YgcG9wdXBcblxuLy8gY29udHJvbHNcbiRtZnAtaW5jbHVkZS1hcnJvd3M6ICAgICAgICAgICAgICAgICAgdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEluY2x1ZGUgc3R5bGVzIGZvciBuYXYgYXJyb3dzXG4kbWZwLWNvbnRyb2xzLW9wYWNpdHk6ICAgICAgICAgICAgICAgIDAuNjUgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBPcGFjaXR5IG9mIGNvbnRyb2xzXG4kbWZwLWNvbnRyb2xzLWNvbG9yOiAgICAgICAgICAgICAgICAgICNGRkYgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjb250cm9sc1xuJG1mcC1jb250cm9scy1ib3JkZXItY29sb3I6ICAgICAgICAgICAjM0YzRjNGICFkZWZhdWx0OyBcdCAgICAgICAgICAgICAgICAgLy8gQm9yZGVyIGNvbG9yIG9mIGNvbnRyb2xzXG4kbWZwLWlubmVyLWNsb3NlLWljb24tY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBDb2xvciBvZiBjbG9zZSBidXR0b24gd2hlbiBpbnNpZGVcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvcjogICAgICAgICAgICAgI0NDQyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIENvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcbiRtZnAtY29udHJvbHMtdGV4dC1jb2xvci1ob3ZlcjogICAgICAgI0ZGRiAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIEhvdmVyIGNvbG9yIG9mIHByZWxvYWRlciBhbmQgXCIxIG9mIFhcIiBpbmRpY2F0b3JcblxuLy8gSWZyYW1lLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWlmcmFtZS10eXBlOiAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIElmcmFtZS10eXBlIHBvcHVwc1xuJG1mcC1pZnJhbWUtcGFkZGluZy10b3A6ICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSWZyYW1lIHBhZGRpbmcgdG9wXG4kbWZwLWlmcmFtZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGlmcmFtZXNcbiRtZnAtaWZyYW1lLW1heC13aWR0aDogICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgIC8vIE1heGltdW0gd2lkdGggb2YgaWZyYW1lc1xuJG1mcC1pZnJhbWUtcmF0aW86ICAgICAgICAgICAgICAgICAgICA5LzE2ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gUmF0aW8gb2YgaWZyYW1lICg5LzE2ID0gd2lkZXNjcmVlbiwgMy80ID0gc3RhbmRhcmQsIGV0Yy4pXG5cbi8vIEltYWdlLXR5cGUgb3B0aW9uc1xuJG1mcC1pbmNsdWRlLWltYWdlLXR5cGU6ICAgICAgICAgICAgICB0cnVlICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gRW5hYmxlIEltYWdlLXR5cGUgcG9wdXBzXG4kbWZwLWltYWdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbWZwLWltYWdlLXBhZGRpbmctdG9wOiAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7ICAgICAgICAgICAgICAgICAgICAgICAvLyBJbWFnZSBwYWRkaW5nIHRvcFxuJG1mcC1pbWFnZS1wYWRkaW5nLWJvdHRvbTogICAgICAgICAgICA0MHB4ICFkZWZhdWx0OyAgICAgICAgICAgICAgICAgICAgICAgLy8gSW1hZ2UgcGFkZGluZyBib3R0b21cbiRtZnAtaW5jbHVkZS1tb2JpbGUtbGF5b3V0LWZvci1pbWFnZTogdHJ1ZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgIC8vIFJlbW92ZXMgcGFkZGluZ3MgZnJvbSB0b3AgYW5kIGJvdHRvbVxuXG4vLyBJbWFnZSBjYXB0aW9uIG9wdGlvbnNcbiRtZnAtY2FwdGlvbi10aXRsZS1jb2xvcjogICAgICAgICAgICAgI0YzRjNGMyAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gdGl0bGUgY29sb3JcbiRtZnAtY2FwdGlvbi1zdWJ0aXRsZS1jb2xvcjogICAgICAgICAgI0JEQkRCRCAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgIC8vIENhcHRpb24gc3VidGl0bGUgY29sb3JcblxuLy8gQTExeVxuJG1mcC11c2UtdmlzdWFsbHloaWRkZW46ICAgICAgICAgICAgICBmYWxzZSAhZGVmYXVsdDsgICAgICAgICAgICAgICAgICAgICAgLy8gSGlkZSBjb250ZW50IGZyb20gYnJvd3NlcnMsIGJ1dCBtYWtlIGl0IGF2YWlsYWJsZSBmb3Igc2NyZWVuIHJlYWRlcnNcbiIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxLiBHZW5lcmFsIChGb3VuZGF0aW9uIE92ZXJyaWRlcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vLyBjb2xvcnNcbiRncmF5MzojMzMzMzMzO1xuJGdyYXk0OiM0NDQ0NDQ7XG4kZ3JheTU6IzU1NTU1NTtcbiRncmF5NTc6IzU3NTc1NztcbiRncmF5NjojNjY2NjY2O1xuJGdyYXk3OiM3Nzc3Nzc7XG4kZ3JheTg6Izg4ODg4ODtcbiRncmF5OGI6IzhiOGI4YjtcbiRncmF5OTojOTk5OTk5O1xuJGdyYXlBOiNhYWFhYWE7XG4kZ3JheUM6I2NjY2NjYztcbiRncmF5RDojZGRkZGRkO1xuJGdyYXlEMTojZDFkMWQxO1xuJGdyYXlENDojZDRkNGQ0O1xuJGdyYXlENTojZDVkNWQ1O1xuJGdyYXlFOiNlZWVlZWU7XG4kZ3JheUVEOiNlZGVkZWQ7XG4kZ3JheUVGOiNlZmVmZWY7XG4kZ3JheUU2OiNlNmU2ZTY7XG4kZ3JheUU3OiNlN2U3ZTc7XG4kZ3JheUYxOiNmMWYxZjE7XG4kZ3JheUY0OiNmNGY0ZjQ7XG4kZ3JheUY2OiNmNmY2ZjY7XG4kZ3JheUY3OiNmN2Y3Zjc7XG5cbiR3aGl0ZUY6I2ZmZmZmZjtcbiR3aGl0ZUYxOiNmMWYxZjE7XG4kd2hpdGVGMzojZjNmM2YzO1xuJHdoaXRlRjU6I2Y1ZjVmNTtcbiR3aGl0ZUY3OiNmN2Y3Zjc7XG4kd2hpdGVGODojZjhmOGY4O1xuXG4kYmxhY2swOiMwMDAwMDA7XG5cbiRibHVlOiMzODk3ZjE7XG5cbiRncmVlbjojOGJjNDQzO1xuXG4kcmVkOiAjZDAwMjA0O1xuXG4kcHJpbWFyeS1jb2xvcjokcmVkO1xuXG4vLyRib2R5LWZvbnQtZmFtaWx5OidSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJGhlYWRpbmctZm9udC1mYW1pbHk6XCJNb250c2VycmF0XCIsIFwiUm9ib3RvIENvbmRlbnNlZFwiLCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kYm9keS1mb250LWZhbWlseTonRE0gU2FucycsIHNhbnMtc2VyaWY7XG4kdGl0bGUtZm9udC1mYW1pbHk6ICdQbGF5ZmFpciBEaXNwbGF5Jywgc2VyaWY7XG4kZm9udC1wcmltYXJ5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiRmb250LXRoaXJkYXJ5OiAkaGVhZGluZy1mb250LWZhbWlseTtcblxuICAvLyBmaXRtZW50XG4gICRkZXRhaWwtZm9udC1mYW1pbHk6ICdBcmlhbCcsIHNhbnMtc2VyaWY7XG5cbiAgLy8gSW52ZW50b3J5XG4gICRibHVlOiAjMzM2Njk5O1xuICAkZ3JlZW46IzMzY2MzMztcbiAgJHllbGxvdzojZjRhODI2O1xuICAkZ3JheTogIzdmODI4MztcbiAgJGxpZ2h0LXJlZDojZWQwMDFhO1xuICAkaW52LWxpZ2h0LWdyYXk6I2U0ZTRlNDtcbiAgLy8gJGhlYWRpbmctZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICRib2R5LWZvbnQtZmFtaWx5LXJlZ3VsYXI6JGJvZHktZm9udC1mYW1pbHk7XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAxLiBHZW5lcmFsIChGb3VuZGF0aW9uIE92ZXJyaWRlcylcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJvZHkge1xuICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAxLjc7XG4gIG1hcmdpbjowO1xuICAmLnNsaWRlLWFjdGl2ZSB7XG4gICAgb3ZlcmZsb3cteDpoaWRkZW47XG4gIH1cblxuICAvLyBwYWdlIHRyYW5zaXN0aW9uc1xuICBvcGFjaXR5OiAxO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwLjdzO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAmLmZhZGUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuaDEsXG5oMixcbmgzLFxuaDQsXG5oNSxcbmg2IHtcbiAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogOTAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBjb2xvcjogJGJsYWNrO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbn1cblxuaDEge1xuICBmb250LXNpemU6Mi4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6MTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDQuNXJlbTtcbiAgICAvL2xldHRlci1zcGFjaW5nOi01cHg7XG4gIH1cbn1cblxuaDIge1xuICBmb250LXNpemU6MnJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgfVxufVxuaDQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgZm9udC1zaXplOjEuNXJlbTtcbn1cbnAge1xuICBjb2xvcjokYmxhY2s7XG59XG5hIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogIzY2NjY2NjtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICB9XG4gICY6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgfVxufVxuXG51bCxcbm9sIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxudWwge1xuICBsaXN0LXN0eWxlOm5vbmU7XG59XG5cbnRhYmxlIHtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbnRhYmxlIHRyIHRkLFxudGFibGUgdGhlYWQgdHIgdGgge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbnRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIGJhY2tncm91bmQ6ICM3MDcwNzA7XG59XG5cbi5iZy1pbWcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzMzO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG59XG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5wcm9kdWN0LXBhcmFncmFwaCB7XG4gIGNvbG9yOiAjMDAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cblxuLmluZm8ge1xuICAmLS1saW1pdCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuICAmLS1oZWlnaHQge1xuICAgIGhlaWdodDogNmVtO1xuICB9XG59XG5cbi5wYXJhbGxheCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIGgxLFxuICBoMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmc6IDNyZW07XG4gICAgdG9wOiAyNSU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjQuNXJlbSA1LjQzNzVyZW07XG4gICAgfVxuICB9XG4gIGgxIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNSk7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGxldHRlci1zcGFjaW5nOi0uMzVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTo2LjVyZW07XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICB9XG4gICAgLnN1YnRpdGxlIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtM3B4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06bG93ZXJjYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzMzM7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAuYmctdG9wIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgfVxuICB9XG4gIC5pbWc6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgY29udGVudDogJyc7XG4gICAgLy9vcGFjaXR5OiAwLjQ7XG4gICAgLy9iYWNrZ3JvdW5kOiAjMDAwO1xuICB9XG59XG5cbi53aGl0ZS1wb3B1cCB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogNDAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIC5wb3B1cC1oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICB9XG4gIC5idXR0b24tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbn1cblxuLm5vLXJlc3VsdHMge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5vdmVybGF5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMC43KTtcbiAgei1pbmRleDogMTA7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZGlzcGxheTogbm9uZTtcbiAgJi0tbmF2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0b3A6IDMuMnJlbTtcbiAgfVxufVxuXG4ucHJpbWFyeSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLnByaW1hcnktYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLnByaW1hcnktYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwYWRkaW5nOiAwLjhyZW0gMS45cmVtO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGEge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLnJlZC1iZyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4uYmxhY2stZm9udCB7XG4gIGNvbG9yOiAjMzMzO1xufVxuXG4ucmVkIHtcbiAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xufVxuXG4ud2hpdGUge1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLmJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmF5MztcbiAgZm9udC1zaXplOjFyZW07XG4gIGZvbnQtd2VpZ2h0OjQwMDtcbiAgcGFkZGluZzoxLjI1cmVtIDEuNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICB9XG59XG4ucGlsbCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTouNzVyZW07XG4gIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjb2xvcjokd2hpdGU7XG4gIHBhZGRpbmc6LjY1cmVtIDFyZW07XG4gIGJvcmRlci1yYWRpdXM6MjVweDtcbiAgZm9udC13ZWlnaHQ6NjAwO1xuICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gIH1cbn1cblxuLm5vLW1hcmdpbiB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5idXR0b24uc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXlFNztcbiAgY29sb3I6ICMzMjMyMzI7XG59XG5cbi5ibGFjayxcbi5idXR0b24uYmxhY2sge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYnV0dG9uLFxuLnRleHQtdXBwZXJjYXNlIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5idXR0b24tZ3JvdXAgLmJ1dHRvbiB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmZvbnQtbGlnaHQge1xuICBmb250LXdlaWdodDogMzAwO1xufVxuXG4uZm9udC1ub3JtYWwge1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4uZm9udC1ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cblxuLmZvbnQtaGVhdnkge1xuICBmb250LXdlaWdodDogOTAwO1xufVxuXG4uZm9udC1pdGFsaWMge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5nLXJlY2FwdGNoYSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4jY2FwdGNoYUNoZWNrIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ucGFkZGVkIHtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xufVxuXG4ucGFkZGVkLmV4dHJhIHtcbiAgcGFkZGluZy10b3A6IDJyZW07XG4gIHBhZGRpbmctYm90dG9tOiAycmVtO1xufVxuXG4ucGFkZGVkLnNob3J0IHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDAuNXJlbTtcbn1cblxuLnBhZGRlZC1sZWZ0IHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVyZW07XG59XG5cbi5wYWRkZWQtcmlnaHQge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG59XG5cbi5jb250YWluZXItcGFkZGluZy0tYiB7XG4gIHBhZGRpbmctYm90dG9tOiA0cmVtO1xufVxuXG4uYWNjb3JkaW9uIC5hY2NvcmRpb24tbmF2aWdhdGlvbj4uY29udGVudCB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLmFjY29yZGlvbi1pdGVtOmZpcnN0LWNoaWxkPiA6Zmlyc3QtY2hpbGQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuXG4uYW5jaG9yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0zcmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uZnVsbC13aWR0aCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5tZW51LnNpbXBsZT5saT5hIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLm1lbnU+bGk6bm90KC5tZW51LXRleHQpPmEge1xuICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgfVxufVxuXG4uZml4ZWQge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDk5O1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udGl0bGUtYmFyLFxuLnRvcC1iYXIge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udG9wLWJhcixcbi50b3AtYmFyIHVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi50b3AtYmFyIHVsLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDEpO1xuICBib3JkZXI6IDBweDtcbn1cblxuLmRyb3Bkb3duLm1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50LmlzLWRvd24tYXJyb3c+YTo6YWZ0ZXIge1xuICByaWdodDogMHB4O1xufVxuXG4uZHJvcGRvd24ubWVudT5saS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudD5hIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cblxuLmRyb3Bkb3duLm1lbnU+bGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQ+YTphZnRlciB7XG4gIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAwcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsPmxpLm9wZW5zLXJpZ2h0PmE6OmFmdGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkcHJpbWFyeS1jb2xvcjtcbiAgcmlnaHQ6IDVweDtcbn1cblxuLmRyb3Bkb3duLm1lbnU+bGk+YTpob3Zlcixcbi5kcm9wZG93bi5tZW51PmxpPnVsIGxpIGE6aG92ZXIsXG4uZHJvcGRvd24ubWVudT5saS5pcy1hY3RpdmU+YSB7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbn1cblxuLmRyb3Bkb3duLm1lbnU+bGk+dWwgbGkgYSB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwcmVtO1xufVxuXG4uZHJvcGRvd24ubWVudT5saS5vcGVucy1yaWdodD4uaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHRvcDogMTU0JTtcbiAgbWluLXdpZHRoOiAyODBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG59XG5cbmFkZHJlc3Mge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbiNpbnN0YWZlZWQgLmNvbHVtbiB7XG4gIHBhZGRpbmc6IDFweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MC4wNjNlbSkge1xuICAuaW50LnNpdGUtY29udGVudCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5cbi8qKioqKioqKiogVklERU8gKioqKioqKioqL1xuXG4jdmlkZW9zIHtcbiAgbWFyZ2luLXRvcDogM3JlbTtcbiAgYTpob3ZlciB7XG4gICAgY29sb3I6ICM2NjY7XG4gIH1cbiAgYTo6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDApO1xuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG4gICNuZXh0LWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgfVxuICAjdmlkZW8tY29udGFpbmVyIC5jb2x1bW4gYSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbi8vICoqKioqKioqKiogUE9QVVAgKioqKioqKioqKiAvL1xuLndoaXRlLXBvcHVwLS13aWRlIHtcbiAgbWF4LXdpZHRoOiA3MDBweDtcbn1cblxuLy8gKioqKioqKioqKiBIT1ZFUiBJVEVNUyAqKioqKioqKioqIC8vXG4uaG92ZXItaXRlbS1saW5rIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDFyZW0gMDtcbn1cblxuLmhvdmVyLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAwLjNzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4zcyBlYXNlLWluLW91dDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmOmhvdmVyIHtcbiAgICAuaG92ZXItaXRlbV9faW1nIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG4gIH1cbiAgJl9faGVhZGVyIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgJl9faGVhZGVyLFxuICBoNiBzbWFsbCB7XG4gICAgY29sb3I6ICM1NDU0NTQ7XG4gIH1cbiAgJl9faW1nIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZS1pbi1vdXQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgfVxuICBoMyB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG4gIGg1IHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxuICBwIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn1cblxuLy8gKioqKioqKioqKiBQcm9kdWN0IERldGFpbCBQb3B1cCBPdmVycmlkZSAqKioqKioqKioqIC8vXG4ucG9wdXAtYmtnIC5tZnAtaW1nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLnBvcHVwLWJrZyAubWZwLWltYWdlLWhvbGRlciAubWZwLWNsb3NlIHtcbiAgY29sb3I6ICMwMDA7XG4gIHJpZ2h0OiAwO1xufVxuXG5cbi8vIFNvY2lhbCBNZWRpYSBJY29ucyAvL1xuLnNvY2lhbC1tZW51IHtcbiAgZGlzcGxheTpmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICA+IGRpdiB7XG4gICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICB9XG59XG5cbi5yb3cge1xuICBtYXgtd2lkdGg6OTByZW07XG59XG5cbi8vIHBhZ2UgaGVhZGVyXG4ucGFnZS1oZWFkZXIge1xuICB0ZXh0LWFsaWduOmxlZnQ7XG4gIGNvbG9yOiR3aGl0ZTtcbi8qICBtYXJnaW4tYm90dG9tOjFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB9Ki9cbiAgLnJvdyB7XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuICBoMSB7XG4gICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjIuNzVyZW07XG4gICAgfVxuICAgIC8qXG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogNnB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOjIxNHB4O1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICB9Ki9cbiAgfVxuICBwIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICBsaW5lLWhlaWdodDoyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAycHg7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBtYXgtd2lkdGg6MzcwcHg7XG4gICAgfVxuICB9XG4gIC8qXG4gIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpe1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZToxNDAlO1xuICAgIH1cbiAgfSovXG4gIC5wYWdlLXRpdGxlIHtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNSk7XG4gICAgcGFkZGluZzoycmVtIDA7XG4gICAgLy9taW4taGVpZ2h0OjE1MHB4O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6MjAwcHg7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAvL21pbi1oZWlnaHQ6MjMwcHg7XG4gICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIH1cbiAgfVxufVxuLypcbi5wYWdlLWhlYWRlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgLy9oZWlnaHQ6MTAwdmg7XG4gIH1cbiAgaDEge1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLnJvdyB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZzowIDIuODEyNXJlbTtcbiAgICB9XG4gIH1cbiAgLnBhZ2UtdGl0bGUge1xuICAgIHBhZGRpbmc6MXJlbSAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjRyZW0gMDtcbiAgICB9XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4qL1xuXG4ucGFnZS1jb250ZW50IHtcbiAgbWFyZ2luLWJvdHRvbToycmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICB9XG59XG5cblxuLmxvYWRpbmctcGFnZSB7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB6LWluZGV4Ojk5OTk7XG4gIC8vYmFja2dyb3VuZC1jb2xvcjokeWVsbG93O1xuICBoZWlnaHQ6MTAwdmg7XG4gIHRvcDowO1xuICByaWdodDowO1xuICBsZWZ0OjA7XG4gIGJvdHRvbTowO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBib3JkZXI6NjAwcHggc29saWQgJHByaW1hcnktY29sb3I7XG4gIHRyYW5zaXRpb246YWxsIDFzIGVhc2UtaW4tb3V0O1xuICAmLmNsb3NlIHtcbiAgICBib3JkZXI6MHB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICB9XG4gICYtcG9wdXAge1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHotaW5kZXg6OTk5OTtcbiAgICAvL2JhY2tncm91bmQtY29sb3I6JHllbGxvdztcbiAgICBoZWlnaHQ6MTAwdmg7XG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICBsZWZ0OjA7XG4gICAgYm90dG9tOjA7XG4gICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgICBib3JkZXI6NjAwcHggc29saWQgcmdiYSgwLDAsMCwuNyk7XG4gICAgdHJhbnNpdGlvbjphbGwgMXMgZWFzZS1pbi1vdXQ7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBvcGFjaXR5OiAwO1xuICAgICYuc2hvdyB7XG4gICAgICBvcGFjaXR5OjE7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgICAmLmZhbmN5Ym94LW1hcmdpbiB7XG4gICAgICBvcGFjaXR5OjA7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGluZyAvKiBTYWZhcmkgYW5kIENocm9tZSAqLyB7XG4gICAgICBmcm9tIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICAgIEBrZXlmcmFtZXMgcm90YXRpbmcge1xuICAgICAgZnJvbSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3RhdGluZyB7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC1tcy1hbmltYXRpb246IHJvdGF0aW5nIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC1vLWFuaW1hdGlvbjogcm90YXRpbmcgMXMgbGluZWFyIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uOiByb3RhdGluZyAxcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICBmb250LXNpemU6M3JlbTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBmb3h5Y2FydFxuW2RhdGEtZmMtc2lkZWNhcnRdICNmYyB7XG4gIG5hdiAuZmMtZml4ZWQtYnV0dG9uLXJpZ2h0IC5mYy1zaWRlY2FydC1idXR0b24ge1xuICAgIGJhY2tncm91bmQ6JGJsdWU7XG4gIH1cbiAgLmZjLWFjdGlvbi0tY2hlY2tvdXQtLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDokYmx1ZTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRncmF5MztcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBmaXRtZW50XG4jZml0bWVudC1wb3B1cCB7XG4gIHBhZGRpbmc6MnJlbTtcbiAgLmZpdG1lbnQtcG9wdXAtaWNvbiB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgY29sb3I6JHJlZDtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgfVxuICBoNCB7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxuICBzZWxlY3Qge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjpyaWdodCBjZW50ZXI7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBoZWlnaHQ6YXV0bztcbiAgICBib3JkZXItcmFkaXVzOjJweDtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcmVkO1xuICAgIGxldHRlci1zcGFjaW5nOiAuMXJlbTtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICB9XG4gIH1cbiAgI2ZpdG1lbnRDbGVhciB7XG4gICAgZm9udC1zaXplOi44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjokcmVkO1xuICAgIH1cbiAgfVxufVxuLnByb2Nlc3Npbmcge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgY29sb3I6JHdoaXRlO1xuICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50O1xuICAubWZwLWNsb3NlIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbn1cblxuLy8gbmV3c2xldHRlciBwb3B1cFxuI25ld3NsZXR0ZXItcG9wdXAge1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgbWF4LXdpZHRoOjU4MHB4O1xuICBwYWRkaW5nOjNyZW07XG4gIGkge1xuICAgIGNvbG9yOiRyZWQ7XG4gICAgZm9udC1zaXplOjIuNXJlbTtcbiAgfVxuICBoNCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICB9XG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OjEuMztcbiAgfVxuICAudGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgfVxuICAuaWNvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgfVxuICAuY29udGVudCB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB9XG4gICNtY19lbWJlZF9zaWdudXAge1xuICAgIGlucHV0IHtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAmOjpwbGFjZWhvbGRlciB7IC8qIENocm9tZSwgRmlyZWZveCwgT3BlcmEsIFNhZmFyaSAxMC4xKyAqL1xuICAgICAgICBjb2xvcjogJGdyYXk2O1xuICAgICAgICBvcGFjaXR5OiAxOyAvKiBGaXJlZm94ICovXG4gICAgICB9XG4gICAgICBcbiAgICAgICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSW50ZXJuZXQgRXhwbG9yZXIgMTAtMTEgKi9cbiAgICAgICAgY29sb3I6ICRncmF5NjtcbiAgICAgIH1cbiAgICAgIFxuICAgICAgJjo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogTWljcm9zb2Z0IEVkZ2UgKi9cbiAgICAgICAgY29sb3I6ICRncmF5NjtcbiAgICAgIH1cbiAgICAgICYuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6LjI1cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAycHg7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgd2lkdGg6MTc1cHg7XG4gICAgICAgIGhlaWdodDo1NHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgMTAuIEZvcm1zXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLyogaG9uZXlwb3QgKi9cbi5vaG5vaG9uZXkge1xuICBvcGFjaXR5OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgei1pbmRleDogLTE7XG59XG5cblxuLyogbG9hZGVyICovXG4ubGRzLWVsbGlwc2lzLFxuLmxkcy1lbGxpcHNpcyBkaXYge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuLmxkcy1lbGxpcHNpcyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogODBweDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBjb2xvcjogI2I5YjliOTtcbn1cbi5sZHMtZWxsaXBzaXMgZGl2IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDMzLjMzMzMzcHg7XG4gIHdpZHRoOiAxMy4zMzMzM3B4O1xuICBoZWlnaHQ6IDEzLjMzMzMzcHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgYmFja2dyb3VuZDogY3VycmVudENvbG9yO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMCwgMSwgMSwgMCk7XG59XG4ubGRzLWVsbGlwc2lzIGRpdjpudGgtY2hpbGQoMSkge1xuICBsZWZ0OiA4cHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMSAwLjZzIGluZmluaXRlO1xufVxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDIpIHtcbiAgbGVmdDogOHB4O1xuICBhbmltYXRpb246IGxkcy1lbGxpcHNpczIgMC42cyBpbmZpbml0ZTtcbn1cbi5sZHMtZWxsaXBzaXMgZGl2Om50aC1jaGlsZCgzKSB7XG4gIGxlZnQ6IDMycHg7XG4gIGFuaW1hdGlvbjogbGRzLWVsbGlwc2lzMiAwLjZzIGluZmluaXRlO1xufVxuLmxkcy1lbGxpcHNpcyBkaXY6bnRoLWNoaWxkKDQpIHtcbiAgbGVmdDogNTZweDtcbiAgYW5pbWF0aW9uOiBsZHMtZWxsaXBzaXMzIDAuNnMgaW5maW5pdGU7XG59XG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczMge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGxkcy1lbGxpcHNpczIge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMjRweCwgMCk7XG4gIH1cbn0iLCIudCB7XG4gICYtdXBwZXJjYXNlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gICYtY2VudGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgJi0tc20ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbn1cblxuLmNvbG9yIHtcbiAgJi0tZ3JheSB7XG4gICAgY29sb3I6ICRtZWRpdW0tZ3JheTtcbiAgfVxufVxuXG4ubWFyZ2luIHtcbiAgJi0tdGIge1xuICAgIG1hcmdpbi10b3A6IDAuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIH1cbn1cblxuLnBhZGRpbmcge1xuICAmLS10YiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICB9XG59XG5cbi5mIHtcbiAgJi1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufSIsIi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBIZWFkZXJcbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4gICBoZWFkZXIge1xuICAgIGJhY2tncm91bmQ6IHJnYigwLDAsMCk7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDoxMDAlO1xuICAgICYubWFpbiB7XG4gICAgICBwYWRkaW5nOi43NXJlbSAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6ODEuMjVyZW07XG4gICAgfVxuICAgIC50b3AtYmFyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB9XG4gICAgLy8gc3RpY2t5XG4gICAgJi5zdGlja3kge1xuICAgICAgaGVpZ2h0OjgwcHg7XG4gICAgfVxuICAgICYuc3RpY2t5LmlzLWFuY2hvcmVkLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206YXV0b1xuICAgIH1cbiAgICAmLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgIHRvcDowIWltcG9ydGFudDtcbiAgICB9XG4gICAgLy8gbWVudSBpY29uXG4gICAgLmNzcy0xaWQzbmZuIHtcbiAgICAgIGZpbGw6IG5vbmU7XG4gICAgICBzdHJva2U6ICR3aGl0ZTtcbiAgICB9XG4gICAgI3N2Zy1tZWdhbWVudS1vcGVuIHtcbiAgICAgIHdpZHRoOjE4cHg7XG4gICAgICBoZWlnaHQ6MThweDtcbiAgICAgIGZpbGw6JHdoaXRlO1xuICAgICAgc3Ryb2tlLXdpZHRoOiAxcmVtO1xuICAgIH1cbiAgICAuaGVhZGVyLWxlZnQsLmhlYWRlci1jZW50ZXIsLmhlYWRlci1yaWdodCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIC5oZWFkZXItbGVmdCB7XG4gICAgICBzdmcgcGF0aCwgc3BhbiB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgc3Ryb2tlOiR3aGl0ZTtcbiAgICAgIH1cbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgIH1cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICAuY3NzLTF3aGJwa24ge1xuICAgICAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci1jZW50ZXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICAgIC5oZWFkZXItbG9nbyB7XG4gICAgICAgIG1heC13aWR0aDoyMjBweDtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtaGVpZ2h0OjQycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci1yaWdodCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5oZWFkZXItc29jaWFsIHtcbiAgICAgICAgdWwge1xuICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmZvb3Rlci1zb2NpYWwtZGl2aWRlciB7XG4gICAgICAgICAgICAgIHdpZHRoOjFweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OjE2cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOjVweDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIGhlaWdodDphdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gbWVnYW1lbnVcbiAgICAmLm1lZ2FtZW51LWFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5tZWdhbWVudSB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIG92ZXJmbG93OmF1dG87XG4gICAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgIH1cbiAgICAgIC5kcm9wZG93bi5tZW51ID4gbGkge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICA+IGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgJi5tZW51LWJyYW5kcyB7XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDoycmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgICAgJi1tZW51IHtcbiAgICAgICAgdWwuZHJvcGRvd24ubWVudSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxLjc1cmVtO1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICBwYWRkaW5nOi4yNXJlbSAxcmVtO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYtdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjEyNXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBwYWRkaW5nOjAgMXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tZWdhbWVudS1nYWxsZXJ5IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAgICAgb3ZlcmZsb3c6YXV0bztcbiAgICAgICAgaGVpZ2h0OjEwMHZoO1xuICAgICAgICAvLyBtb2JpbGUgXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIHJpZ2h0Oi02NDBweDtcbiAgICAgICAgbGVmdDo2NDBweDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIC5jbG9zZS1tZW51LWJyYW5kcyB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIH1cbiAgICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLy8gZW5kIG1vYmlsZVxuICAgICAgICBhIHtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OjE7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmJyYW5kIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjM2cHg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgICAgICAgICAgbWF4LWhlaWdodDozOHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYtaG92ZXItb3ZlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZGlzY292ZXItbW9yZSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmlzLWRyaWxsZG93biB7XG4gICAgICBtYXgtd2lkdGg6IDM3MHB4IWltcG9ydGFudDtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDQ2Ni4xMjVweCFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgMy4gVG9wIGJhclxuICAgICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuICBcbiAgICAgLnN0aWNreS1jb250YWluZXIge1xuICAgICAgei1pbmRleDogMjA7XG4gICAgfVxuICAgIFxuICAgIGhlYWRlci5tYWluIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UgZG93bikge1xuICAgICAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgaGVhZGVyIHtcbiAgICAgIC8qLy8vIE1haW4gTmF2aWdhdGlvbiAvLy8qL1xuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRyZW0pIHtcbiAgICAgICAgICBoZWlnaHQ6ODBweDtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0cmVtKSB7XG4gICAgICAgICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAubWVudS5pY29uLXRvcD5saT5hIHtcbiAgICAgICAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgIFxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5maXJzdC1zdWIge1xuICAgICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICByaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIHRvcDogNDRweCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgXG4gICAgICAgIC5oZWFkZXItbG9nbyB7XG4gICAgICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NHJlbSkge1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgI3Jlc3BvbnNpdmUtbWVudSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGhlYWRlciB7XG4gICAgICAucm93IHtcbiAgICAgICAgbWF4LXdpZHRoOjgxLjI1cmVtO1xuICAgICAgfVxuICAgICAgLnRvcC1iYXIgeyBcbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MS4yNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuMjVyZW07XG4gICAgICAgICAgLnRvcC1iYXItdGl0bGUge1xuICAgICAgICAgICAgd2lkdGg6MjAlO1xuICAgICAgICAgICAgXG4gICAgICAgICAgfVxuICAgICAgICAgIC50b3AtYmFyLXRpdGxlIHtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDpmbGV4LXN0YXJ0O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICB9XG4gICAgICAgICAgI3Jlc3BvbnNpdmUtbWVudSB7XG4gICAgICAgICAgICB3aWR0aDo2OCU7XG4gICAgICAgICAgICAudG9wLWJhci1yaWdodCwgLnRvcC1iYXItcmlnaHQgPiB1bCB7XG4gICAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudG9wLWJhci1yaWdodCA+IHVsIHtcbiAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLm5hdi1tZW51LXJpZ2h0IHtcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgICB3aWR0aDoxMiU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTM7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6NTBweDtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjAyNXJlbTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBoZWlnaHQ6ODBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjNyZW07XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgICAgICAmLmFjdGl2ZS1wYWdlIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgYm90dG9tOi0uNnJlbTtcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgICAgICBoZWlnaHQ6M3B4O1xuICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIFxuICAgICAgICAudG9wLWJhci1sZWZ0IHtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMDtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyJTtcbiAgICAgICAgfVxuICAgIFxuICAgICAgICAuaHAtYnRuLWxpbmtzIGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMS44cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuOHJlbTtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgXG4gICAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIC5oZWFkZXItbG9nbyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5tb2JpbGUtbmF2LW1lbnUtcmlnaHQge1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm5hdi1tZW51LXJpZ2h0IHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9ICBcbiAgICB9XG5cblxuXG4vLy8vIE9mZiAtIENhbnZhcyBNZW51IC8vLy8vLy8vLy8vXG4ub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgbGVmdDowO1xufVxuLmlzLW9mZi1jYW52YXMtb3BlbiB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC43NSk7XG4gIG9wYWNpdHk6IDA7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAuanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLWNsb3NhYmxlIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWFic29sdXRlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cbiAgLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1vdmVybGF5LWZpeGVkIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7IH1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4ub2ZmLWNhbnZhcyB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogMTI7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjVzIGVhc2U7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjsgfVxuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gLm9mZi1jYW52YXMge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICB6LWluZGV4OiAxMjsgfVxuICAub2ZmLWNhbnZhcy5pcy1jbG9zZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuICAub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAge1xuICAgIHotaW5kZXg6IDEzOyB9XG4gICAgLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgYm94LXNoYWRvdzogMCAwIDEwcHggcmdiYSgxMCwgMTAsIDEwLCAwLjcpOyB9XG4gIC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEyO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgei1pbmRleDogMTI7IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cbiAgLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgICB6LWluZGV4OiAxMzsgfVxuICAgIC5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTsgfVxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy1vcGVuIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG5cbi5wb3NpdGlvbi1sZWZ0IHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIHdpZHRoOiAzNzVweDtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzc1cHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNzVweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0zNzVweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cDM3NXB4eCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDQ1cHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDQ1cHgpOyB9XG4gIC5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgLTEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAucG9zaXRpb24tbGVmdCB7XG4gICAgd2lkdGg6IDQ0NXB4O1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTQ0NXB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00NDVweCk7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNDQ1cHgpOyB9XG4gICAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1sZWZ0Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0NDVweCk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ0NXB4KTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAtMTNweCAwIDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuICAgIFxuICAgIH1cblxuLnBvc2l0aW9uLXJpZ2h0IHtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICB3aWR0aDogMjUwcHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDI1MHB4KTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tcmlnaHQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpOyB9XG4gIC5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDEzcHggMCAyMHB4IC0xM3B4IHJnYmEoMTAsIDEwLCAxMCwgMC4yNSk7IH1cblxuLnBvc2l0aW9uLXRvcCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIGhlaWdodDogMjUwcHg7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi10b3AuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi10b3AuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpOyB9XG5cbi5wb3NpdGlvbi1ib3R0b20ge1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICBoZWlnaHQ6IDI1MHB4O1xuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDI1MHB4KTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyNTBweCk7IH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1ib3R0b20uaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUwcHgpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTsgfVxuICAucG9zaXRpb24tYm90dG9tLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTsgfVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuOyB9XG4gIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTsgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAyNTBweDsgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyNTBweDsgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSAuY2xvc2UtYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1tZWRpdW0gfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1MHB4OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDI1MHB4OyB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1sYXJnZSB7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQuaGFzLXJldmVhbC1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4OyB9XG4gICAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICAgIG1hcmdpbi1yaWdodDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXRvcCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogMjUwcHg7IH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gICAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfVxuICAgIC5vZmYtY2FudmFzLWNvbnRlbnQgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNTBweDsgfVxuICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci1sYXJnZSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1yaWdodCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi1ib3R0b20ge1xuICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9XG4gICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBpbmhlcml0O1xuICAgIHdpZHRoOiBpbmhlcml0O1xuICAgIG92ZXJmbG93OiBpbmhlcml0O1xuICAgIHRyYW5zaXRpb246IGluaGVyaXQ7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tcmlnaHQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UucG9zaXRpb24tdG9wLCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgICAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG5cblxuXG4vLy8gT2ZmIENhbnZhcyBNZW51IFN0eWxpbmcgLy8vLy8vLy8vLy8vXG4ub2ZmLWNhbnZhcyB7XG4gID4gZGl2ID4gZGl2IHtcbiAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gIH1cbiAgJi5wb3NpdGlvbi1sZWZ0IHtcbiAgICAvKndpZHRoOjQ0NXB4OyAvLyBOZWVkIHRvIHVwZGF0ZSBqcyBiZWZvcmUgYXBwbHlpbmcuLi4uKi9cbiAgICB3aWR0aDozNzVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgd2lkdGg6NDQ1cHg7XG4gICAgfVxuICAgIC8vYm9yZGVyOjFweCBzb2xpZCAkZ3JheTk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MC44MjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxuICAmLnBvc2l0aW9uLXJpZ2h0IHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHJpZ2h0OjA7XG4gICAgbGVmdDowO1xuICAgIHRvcDowO1xuICAgIHBhZGRpbmc6MS4yNXJlbSAycmVtO1xuICAgIGZvbnQtc2l6ZTouODI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6MjAwO1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgfVxuICAgIC8qXG4gICAgcGFkZGluZzouNXJlbSAycmVtO1xuICAgIGNvbG9yOiRsaWdodC1ncmF5O1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgKi9cbiAgICAvKiY6aG92ZXIge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgfSovXG4gIH1cbiAgLnNsaWRlLW92ZXItY29udGFpbmVyIHtcbiAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgLnNsaWRlLW92ZXItZml0bWVudCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFNjtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICB3aWR0aDoyMDBweDtcbiAgICAgICAgaGVpZ2h0OjU4cHg7XG4gICAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcblxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZml0bWVudC1pbmZvIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBtYXgtd2lkdGg6NDMlO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGUtb3Zlci1maWx0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBzZWxlY3QsLmJ1dHRvbiB7XG4gICAgICAgIGhlaWdodDo1NXB4O1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICB9XG4gICAgICBzZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czoycHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZlcnRpY2FsLm1lbnUge1xuICAgIHBhZGRpbmctbGVmdDowO1xuICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgbWFyZ2luLXRvcDowO1xuICAgID4gbGkge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudD5hOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICAgIHRvcDoxM3B4O1xuICAgICAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgICAgICByaWdodDoycmVtO1xuICAgICAgfVxuICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXT5hOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnLSc7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgIH1cbiAgICAgICAgLmZhLWNhcmV0LWRvd24ge1xuICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgID4gbGkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtbWVudSB7XG4gICAgcGFkZGluZzoxcmVtIDFyZW0gMnJlbTtcbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLyBPZmYgQ2FudmFzIENvbnRlbnQgU3R5bGluZyAvLy8vLy8vLy8vLy9cbi5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAmLmlzLW9wZW4tcmlnaHQge1xuICAgIC5mYS1iYXJzOmJlZm9yZSB7XG4gICAgICBjb250ZW50OlwiXFxmMDBkXCI7XG4gICAgfVxuICB9XG59XG5cblxuLy8vLyBGb3JjZSBNZW51IEJ1dHRvbiAvLy8vLy8vLy8vL1xuI2ZvcmNlTWVudSB7XG4gIGRpc3BsYXk6ZmxleCFpbXBvcnRhbnQ7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4vKlxuLmhpZGUtZm9yLWxhcmdlIHtcbiAgcGFkZGluZy10b3A6MS41cmVtO1xuICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xufSovXG5cbi8vIEkgZG8gbm90IHdhbnQgdG8gdXNlICFpbXBvcnRhbnQgLy8vLy8vLy9cbiNyZXNwb25zaXZlLW1lbnUge1xuICAuZHJvcGRvd24ubWVudSB7XG4gICAgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgID4gYSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gUHJldmVudGluZyBGT1VDXG4ubm8tanMgLnRvcC1iYXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5uby1qcyAudG9wLWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAubm8tanMgLnRpdGxlLWJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG4uaGVhZGVyIHtcbiAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbn1cbi5pbnZlbnRvcnktbm8tanMge1xuICBkaXNwbGF5Om5vbmU7XG59XG5cbi5sb2FkaW5nLXNjcmVlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwuNyk7XG4gIHBvc2l0aW9uOmFic29sdXRlO1xuICB0b3A6MDtcbiAgcmlnaHQ6MDtcbiAgbGVmdDowO1xuICBib3R0b206MDtcbiAgY29udGVudDonJztcbiAgZGlzcGxheTpibG9jaztcbiAgei1pbmRleDo5OTk5O1xuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiA0NXB4O1xuICAgIGhlaWdodDogNDVweDsgIFxuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAtbW96LWFuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgICBhbmltYXRpb246c3BpbiAxcyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cbiAgQC1tb3ota2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cbiAgQC13ZWJraXQta2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9IH1cbiAgQGtleWZyYW1lcyBzcGluIHsgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOnJvdGF0ZSgzNjBkZWcpOyB9IH1cbn1cblxuXG4vLy8vLy8vLy8vLyBoZWFkZXIgbmF2IHNlYXJjaCAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuLmhlYWRlci1uYXYtc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU3O1xuICB3aWR0aDoxMDAlO1xuICBkaXNwbGF5Om5vbmU7XG4gIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBib3JkZXItYm90dG9tOjA7XG4gIH0gXG4gIGJ1dHRvbiB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGNvbG9yOiRibGFjaztcbiAgfVxuICAmLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDoxLjkzNzVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjEuOTM3NXJlbTtcbiAgICB9XG4gIH1cbiAgLnRvZ2dsZS1zZWFyY2gge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICB9XG4gIGZvcm0ge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBpbnB1dCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHdpZHRoOjI4MHB4O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6NDAwcHg7XG4gICAgICB9XG4gICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xNXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIGJ1dHRvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzowIDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuXG5cbi8vLy8vLy8vLy8vIGhlYWRlciBmaWx0ZXIgc29ydCAvLy8vLy8vLy8vLy8vLy8vLy8vL1xuLm1vYmlsZS1oZWFkZXItd2hlZWxzLWZpbHRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAuZmlsdGVyLXNvcnQge1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgLy9wYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgICAmLXRvcCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAkZ3JheTY7XG4gICAgICBjb2xvcjokZ3JheTY7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHRyYW5zaXRpb246YWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwYWRkaW5nOi44NXJlbSAxcmVtO1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjIyMHB4O1xuICAgICAgICBoZWlnaHQ6NTRweDtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTY7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgaGVpZ2h0OjFweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG4gICAgLy8gYm90dG9tXG4gICAgJi1ib3R0b20ge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206Ljc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJvcmRlcjowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1zZXJpZXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZS1maWx0ZXItY291bnQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBcbiAgfVxufVxuXG5cblxuLy8vLy8vLy8vLy8gaGVhZGVyIGZpdG1lbnQgLSBtb2JpbGUgLy8vLy8vLy8vLy8vLy8vLy8vLy9cbi5oZWFkZXItZml0bWVudC1tb2JpbGUge1xuICBkaXNwbGF5OmZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RTY7XG4gIHBhZGRpbmctbGVmdDoycmVtO1xuICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gIC5idXR0b24ge1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogNThweDtcbiAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICB9XG4gIC5maXRtZW50LWluZm8ge1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbWF4LXdpZHRoOiA0MyU7XG4gICAgZm9udC1zaXplOi43NXJlbTtcbiAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufSIsIi5mb290ZXIge1xuICBwYWRkaW5nOjFyZW0gLjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gIGNvbG9yOiRibGFjaztcbiAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmc6MDtcbiAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICB9XG4gIGEsIHAge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gIH1cbiAgaDUge1xuICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6MDtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgfVxuICB9XG4gIHVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjowO1xuICB9XG4gIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOjEuMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxuICBhIHtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAvL2ZvbnQtd2VpZ2h0OjcwMDtcbiAgICB9XG4gIH1cbiAgLy8gbG9nbyAvLy8vLy8vLy8vLy8vL1xuICAmLWxvZ28ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDoyNSU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOjUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gYWRkcmVzcyAvLy8vLy8vLy8vLy8vXG4gICYtY29udGFjdCB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBwYWRkaW5nOjAgLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICB9XG4gIH1cbiAgLy8gc29jaWFsIC8vLy8vLy8vLy8vLy9cbiAgJi1zb2NpYWwge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzowIC41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICB9XG4gICAgbGkge1xuICAgICAgbWFyZ2luLXJpZ2h0OjEuMjVyZW07XG4gICAgfVxuICAgIGEge1xuICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgXG4gIFxuICAvLyBtZW51IC8vLy8vLy8vLy8vLy8vXG4gICYtdG9wIHtcbiAgICBcbiAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgfVxuICAmLW1lbnUge1xuICAgIC8qXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIG9ubHkpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICB9Ki9cbiAgICAmLWNvbGxlY3Rpb24ge1xuICAgICAgZGlzcGxheTp0YWJsZTtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgLy8gbW9iaWxlXG4gICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxLjI1cmVtO1xuICAgICAgICBoNSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mYXMge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgICAgJi10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGJvcmRlcjowO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWNvbnRlbnQge1xuICAgICAgICAgIGJvcmRlcjowO1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgfVxuICAgICAgICAmLWl0ZW0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTM7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9vdGVyLW1lbnUtbGlzdCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuc21hbGwtMTUge1xuICAgICAgd2lkdGg6NTAlO1xuICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OjA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6MjUlO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6MTIuNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICAvLyBzb2NpYWwgLy8vLy8vLy8vLy8vL1xuICAmLWJvdHRvbSB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGhlaWdodDo2MHB4O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGhlaWdodDo4NXB4O1xuICAgIH1cbiAgICBwIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjokZ3JheTk7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLyouaHAge1xuICBwIHtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgZm9udC1zaXplOjEuMXJlbTtcbiAgfVxufSovXG4uc2VjdGlvbiB7XG4gIGNvbG9yOiRibGFjaztcbiAgZm9udC13ZWlnaHQ6NDAwO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgJjphZnRlciB7XG4gICAgY29udGVudDonICc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG4gID4gZGl2IHtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuICAmLWJhY2tncm91bmQge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246Y2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OjEwMHZoO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjQpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6MTA7XG4gICAgICB0b3A6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBib3R0b206MDtcbiAgICAgIGxlZnQ6MDtcbiAgICB9XG4gICAgJi1jb250YWluZXIge1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi10aXRsZSB7XG4gICAgJi1kaXZpZGVyIHtcbiAgICAgIHdpZHRoOjIwMHB4O1xuICAgICAgaGVpZ2h0OjhweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtXG4gICAgfVxuICB9XG4gICYtYnV0dG9uIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIC5jdWJlLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTUwcHg7XG5cdCAgdGV4dC1hbGlnbjogY2VudGVyO1xuXHQgIGhlaWdodDogNTBweDtcblxuXHQgIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gLjMzcztcblx0ICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjMzczsgLyogQW5pbWF0ZSB0aGUgdHJhbnNmb3JtIHByb3BlcnRpZXMgKi9cblxuXHQgIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcblx0ICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyAvKiA8LU5CICovXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoOTBkZWcpO1xuXHQgICAgdHJhbnNmb3JtOiByb3RhdGVYKDkwZGVnKTsgLyogVGV4dCBibGVlZCBhdCA5MMK6ICovXG4gICAgICB9XG4gICAgICAuY3ViZS1mcm9udCwuY3ViZS1ib3R0b20ge1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgICAuY3ViZS1mcm9udCB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuXHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDI1cHgpO1xuICAgICAgfVxuICAgICAgLmN1YmUtYm90dG9tIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoLTkwZGVnKSB0cmFuc2xhdGVaKC0yNXB4KTtcblx0ICAgIHRyYW5zZm9ybTogcm90YXRlWCgtOTBkZWcpIHRyYW5zbGF0ZVooLTI1cHgpO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5mb290ZXIuaHAge1xuICAuc2VjdGlvbi1iYWNrZ3JvdW5kIHtcbiAgICAmLWltYWdlIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIGltZyB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuIiwiLmhlcm8tY29udGFpbmVyIHtcbiAgaDQsaDEsYSB7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG4gIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOjA7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gIH1cbiAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgJi1iYWNrZ3JvdW5kIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBzY3JvbGw7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjQpO1xuICAgIGhlaWdodDoxMDB2aDtcbiAgICBoNCB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMjVyZW07XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5oZXJvLXNjcm9sbC1tb3JlIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbToxNSU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIHotaW5kZXg6IDk7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgaSB7XG4gICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICB3aWR0aDogMzBweDtcbiAgICAgIC8vbWFyZ2luOiAyNHB4IDAgMCAtMTMwcHg7XG4gICAgICBhbmltYXRpb246IHVwZG93biAycyBlYXNlIGluZmluaXRlO1xuICAgIH1cbiAgICBAa2V5ZnJhbWVzIHVwZG93biB7XG4gICAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICAgIH1cbiAgICAgIDI1JSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICAgICAgb3BhY2l0eToxO1xuICAgICAgfVxuICAgICAgNTAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cbiAgICAgIDk5JSB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgIH1cbiAgICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OjE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIG1wNCB2aWRlb1xuLmhlcm8tdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMHZoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5Om5vbmU7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbiAgJi1zaG9ydCB7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLmhlcm8tdmlkZW9fX2JhY2tncm91bmQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIHotaW5kZXg6IDA7XG59XG5cbi5oZXJvLXZpZGVvX19jb250ZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBjb2xvcjogI2ZmZjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uaGVyby12aWRlbzo6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuMzUpO1xuICB6LWluZGV4OiAxO1xufVxuXG4uaGVyby12aWRlb19fY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbn0iLCIuaHAgLmV4cGxvcmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5iYWNrZ3JvdW5kIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9ob21lL2V4cGxvcmUtYmcud2VicCcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MCU7XG4gICAgcGFkZGluZy10b3A6M3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgIGltZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgICAgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcmVncm91bmQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OjA7XG4gICAgcmlnaHQ6MDtcbiAgICB0b3A6MDtcbiAgICBib3R0b206MDtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGJhY2tncm91bmQ6cmdiYSgwLDAsMCwuNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICBib3R0b206OHJlbTtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIGJvdHRvbTo0cmVtO1xuICAgICAgdG9wOnVuc2V0O1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG5cbiAgLmV4cGxvcmUtcmlnaHQge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlDO1xuICAgIGxldHRlci1zcGFjaW5nOjJweDtcbiAgICBmb250LXNpemU6MXJlbTtcbiAgICB3aWR0aDogMjY0cHg7XG4gICAgaGVpZ2h0OjYwcHg7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICBoZWlnaHQ6IDc0cHg7ICBcbiAgICB9XG4gIH1cbn0iLCIuaHAgLnBlbmNpbCB7XG4gIHBhZGRpbmctdG9wOjIuNXJlbTtcbiAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgcGFkZGluZy1sZWZ0OjA7XG4gIHBhZGRpbmctcmlnaHQ6MDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDo0cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjRyZW07XG4gIH1cbiAgaDIscCxhIHtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0Oi44O1xuICAgIGZvbnQtc2l6ZToxLjY1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjQuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICB9XG4gIHAge1xuICAgIGZvbnQtc2l6ZToxLjEyNXJlbTtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gICAgbGluZS1oZWlnaHQ6MS41O1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6MS41NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICBcbiAgLnBlbmNpbC1yaWdodCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgbWluLXdpZHRoOjE0MHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBsZXR0ZXItc3BhY2luZzouMnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBwYWRkaW5nOjEuMjVyZW0gMnJlbTtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6IDY2cHg7XG4gICAgICBtaW4td2lkdGg6IDIwNXB4O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJi5kZWFsZXJzIHtcbiAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjQuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICB9XG4gIC8vIGluZm9ybWF0aW9uIHBhZ2VcbiAgJi5pbmZvcm1hdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgaDIscCB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIGgyIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6MS43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmhwIC53aGVlbHMge1xuICBwYWRkaW5nLXRvcDoycmVtO1xuICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOjRyZW07XG4gICAgcGFkZGluZy1ib3R0b206NHJlbTtcbiAgfVxuICAucm93IHtcbiAgICBtYXgtd2lkdGg6ODEuMjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgcGFkZGluZy1sZWZ0OjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjVyZW07XG4gICAgfVxuICB9XG5cbiAgLy8gaGVhZGVyIFxuICBoMSxwIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gIH1cbiAgaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgbGluZS1oZWlnaHQ6IC43NTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOiA2LjI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uMXJlbTtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgIH1cbiAgfVxuICAud2hlZWxzLWhlYWRlciB7XG4gICAgLnRpdGxlIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOjEuMTI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc3VidGl0bGUge1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICBmb250LXdlaWdodDo5MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xMjVyZW07XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgaGVpZ2h0OjNweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5OTtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDo2cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOi43NXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBsaXN0aW5nXG4gIC53aGVlbHMtbGlzdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAuY29sdW1uLCAuY29sdW1ucyB7XG4gICAgICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDJyZW07XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjRyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6NHJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtaW5mbyB7XG4gICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdC1pdGVtIHtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgLy9tYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgICAgICAud2hlZWwtbmFtZSB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNztcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICAgIC53aGVlbC1uYW1lIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzowO1xuICAgICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmluaXNoLW5hbWUsLndoZWVsLXNpemVzIHtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYWRkaXRpb25hbCBmaW5pc2hlc1xuICAgIC5vdGhlci1maW5pc2hlcyB7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG9wYWNpdHk6MDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB6LWluZGV4OjI7XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgPiAub3RoZXItZmluaXNoIHtcbiAgICAgICAgICB3aWR0aDoyNSU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjZweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1jb250YWluZXIge1xuICAgICAgICAvL29wYWNpdHk6MDtcbiAgICAgICAgZGlzcGxheTpncmlkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICBncmlkLWNvbHVtbjogMSAvIDE7XG4gICAgICAgICAgZ3JpZC1yb3c6IDEgLyAxO1xuICAgICAgICB9XG4gICAgICAgIC5tb3JlLWluZm9ybWF0aW9uLC5vbmUtaW5mb3JtYXRpb24ge1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRodW1ibmFpbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUY3O1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgcGFkZGluZzo0cHg7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1vcmUtaW5mb3JtYXRpb24ge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBjdGFcbiAgLndoZWVscy1jdGEge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIC5idXR0b24ge1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7ICBcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIHdpZHRoOjI3OHB4O1xuICAgICAgICBoZWlnaHQ6NzBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuaHAgLnNlcmllcyB7XG4gIHBhZGRpbmctdG9wOjJyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZzo0LjVyZW0gMDtcbiAgfVxuICAuc2VyaWVzLWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjEyNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIHAge1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICBmb250LXdlaWdodDozMDA7XG4gICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjMuNzVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlcmllcy1saXN0IHtcbiAgICAuc2VyaWVzLWl0ZW0ge1xuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgYmFja2Ryb3AtZmlsdGVyOiBibHVyKDEwcHgpO1xuICAgICAgICAgICAgLXdlYmtpdC1iYWNrZHJvcC1maWx0ZXI6IGJsdXIoMTBweCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXk5O1xuICAgICAgICAgIGluc2V0OjFyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgaW5zZXQ6MnJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsLW5hbWUge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6My41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3VidGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjJyZW07XG4gICAgICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnRpcmVzLWFjY2Vzc29yaWVzLnNlY3Rpb24ge1xuICAvL2JhY2tncm91bmQtaW1hZ2U6bGluZWFyLWdyYWRpZW50KDExNWRlZywgJHdoaXRlIDUwJSwgJGdyYXlFIDUwJSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgfVxuICBoMSB7XG4gICAgZm9udC1zaXplOjRyZW07XG4gICAgZm9udC13ZWlnaHQ6ODAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIGZvbnQtc2l6ZToxLjM1cmVtO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBmb250LXdlaWdodDozMDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTsgIFxuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc3R5bGU6aXRhbGljO1xuICAgIH1cbiAgfVxuICBoNiB7XG4gICAgZm9udC1zaXplOjJyZW07XG4gICAgY29sb3I6JGdyYXkzO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTFweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOi0zcHg7XG4gICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgfVxuICB9XG4gIGltZyB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIC8qdHJhbnNmb3JtOnNjYWxlKDEuMzUpOyovXG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWJhY2tncm91bmQtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICB9XG4gIC5zZWN0aW9uLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6MTByZW07XG4gICAgfVxuICAgIC5zZWN0aW9uLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tdGl0bGUge1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtOyBcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MTByZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY3RhLWxpc3Qge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgLnJvdyB7XG4gICAgICAvL3BhZGRpbmctbGVmdDouNjI1cmVtOyBcbiAgICAgIC8vcGFkZGluZy1yaWdodDouNjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6MnJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDoycmVtO1xuICAgICAgLmNvbHVtbiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIC5jb2x1bW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoyLjVyZW07XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoyLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb2x1bW46Zmlyc3QtY2hpbGR7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvY3RhLXRpcmVzLmpwZycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29sdW1uOmxhc3QtY2hpbGQge1xuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9ob21lL2N0YS1hY2Nlc3Nvcmllcy5qcGcnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY1O1xuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyYXlDO1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGdyYXlDO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBwYWRkaW5nLXRvcDoyNSU7XG4gICAgICBwYWRkaW5nLWJvdHRvbToyNSU7XG4gICAgICAvKlxuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmctdG9wOjRyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjRyZW07XG4gICAgICB9Ki9cbiAgICAgIGg0IHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LWZhbWlseTokdGl0bGUtZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTozLjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxLjA1KTtcbiAgICAgIH1cbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOmF1dG87XG4gICAgfVxuICAgIC8qXG4gICAgLnRpdGxlLC5pbWFnZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo0cmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTo2cmVtO1xuICAgICAgfVxuICAgIH0qL1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOi0xcHg7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjJyZW07XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgLy9tYXgtd2lkdGg6MjU1cHg7XG4gICAgICAvL3dpZHRoOjEwMCU7XG4gICAgICAvL2JvcmRlcjoxcHggc29saWQgJGdyYXlCNTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgJHJlZDtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDNweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmlubGluZS1ibG9jay1kaXNwbGF5IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmbG9hdDpub25lO1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICB9XG4vKiAgICAuY29sdW1uIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIHotaW5kZXg6IDM7IFxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy8vaW1hZ2VzLmljb25maWd1cmF0b3JzLmFwcC9pbWFnZXMvd2hlZWxzL2xhcmdlL21rdy1yOTAxLXdoZWVsLTVsdWctYnJ1c2hlZC10aXRhbml1bS0yMHgxMS01MDBfNjk3NS5wbmcnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICB6LWluZGV4OiAyOyBcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLy9pbWFnZXMuaWNvbmZpZ3VyYXRvcnMuYXBwL2ltYWdlcy93aGVlbHMvbGFyZ2UvbWt3LXI5MDItd2hlZWwtNWx1Zy1icnVzaGVkLXRpdGFuaXVtLTIweDExLTUwMF8zMjUwLnBuZycpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLy9pbWFnZXMuaWNvbmZpZ3VyYXRvcnMuYXBwL2ltYWdlcy93aGVlbHMvbGFyZ2UvbWt3LXI5MDMtd2hlZWwtNWx1Zy1icm9uemUtMTh4OTUtNTAwXzU5MzQucG5nJyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdG9wOjA7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGJvdHRvbTowO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICB9XG4gICAgfSovXG4gIH1cbiAgXG59IiwiLmhwIC5jdGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RUQ7XG4gIHBhZGRpbmctdG9wOjJyZW07XG4gIHBhZGRpbmctYm90dG9tOjJyZW07XG4gIHRleHQtYWxpZ246Y2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjNyZW07XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nLXRvcDo1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjVyZW07XG4gIH1cbiAgLnJvdyB7XG4gICAgLy9tYXgtd2lkdGg6ODEuMjVyZW07XG5cbiAgICAgIG1heC13aWR0aDo4MS4yNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgICAgfVxuICAgID4gLmNvbHVtbiB7XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgcGFkZGluZy10b3A6MjUlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToyNSU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgZm9udC1zaXplOjMuNXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDozMiU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206MzIlO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZToxMDElO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSwmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDoycmVtO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6dXJsKCcvaW1hZ2VzL2hvbWUvY3RhLWdhbGxlcnkuanBnJyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOnVybCgnL2ltYWdlcy9ob21lL2N0YS12aXN1YWxpemVyLmpwZycpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaDEge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICBsaW5lLWhlaWdodDouNzU7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NC43NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi0uMXJlbTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgaGVpZ2h0OjNweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgd2lkdGg6MjE1cHg7XG4gICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOjEuMXJlbTtcbiAgfVxuXG4gIC50aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gIC50ZXh0IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gIH1cbiAgLnN1YnRpdGxlIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICBoZWlnaHQ6M3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgaGVpZ2h0OjZweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuaHAgLmRlYWxlcnMge1xuICBoMSB7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIFxuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBsaW5lLWhlaWdodDouODU7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzotLjJyZW07XG4gICAgfVxuICB9XG4gIC5idXR0b24ge1xuICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgaGVpZ2h0OjY4cHg7XG4gICAgICB3aWR0aDoyMDhweDtcbiAgICB9XG4gIH1cbiAgLmRlYWxlci1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nLXRvcDozcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206M3JlbTtcbiAgICAgIGhlaWdodDoyNTZweDtcbiAgICB9XG4gIH1cbn0iLCIuaHAgLmFib3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy9pbWFnZXMvaG9tZS9hYm91dC11cy5qcGcnKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgcGFkZGluZy10b3A6M3JlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTozcmVtO1xuICAgIGhlaWdodDo1MHZoO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDE1MCU7XG4gICAgICBoZWlnaHQ6YXV0bztcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBpbWcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZm9yZWdyb3VuZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6MDtcbiAgICByaWdodDowO1xuICAgIHRvcDowO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBwYWRkaW5nOjJyZW0gMDtcbiAgICBib3R0b206MDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgcGFkZGluZzo0LjVyZW0gMDtcbiAgICAgIGJvdHRvbTphdXRvO1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIH1cbiAgICAucm93IHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gIGgyIHtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC1zaXplOi43NXJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6LjEyNXJlbTtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzouMnJlbTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjQuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuNTtcbiAgICAgIGxldHRlci1zcGFjaW5nOjA7XG4gICAgfVxuICB9XG5cbiAgLmFib3V0LXJpZ2h0IHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6MnB4O1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgXG4gICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgd2lkdGg6IDI2NHB4O1xuICAgICAgaGVpZ2h0OiA3NHB4OyAgXG4gICAgICBtYXJnaW46dW5zZXQ7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgfVxuICB9XG59IiwiLmluc3RhZ3JhbSB7XG4gIGEge1xuICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgaW1nIHtcbiAgICAgIC8vZmlsdGVyOmdyYXlzY2FsZSgxKTtcbiAgICB9XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDoycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgaDIge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBkaXNwbGF5OmlubGluZTtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2luc3RhZ3JhbSB7XG4gICAgYSB7XG4gICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2luc3RhZ3JhbS1wb3B1cCB7XG4gIGNvbG9yOiRncmF5Mztcbn0iLCIuaHAgLmdhbGxlcnkge1xuICBwYWRkaW5nOjJyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gIGNvbG9yOiR3aGl0ZTtcbiAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZzo0cmVtIDA7XG4gIH1cbiAgaDIscCB7XG4gICAgY29sb3I6JHdoaXRlO1xuICB9XG4gIGgyIHtcbiAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOi4xMjVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAuMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgIGxldHRlci1zcGFjaW5nOi4xMjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGZvbnQtc2l6ZTo0LjI1cmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjI1cmVtO1xuICAgIH1cbiAgfVxuICAudGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAmOmhvdmVyIHtcbiAgICAgIC5waG90by1pbWFnZS1jb250YWluZXIge1xuICAgICAgICBmaWx0ZXI6IGJsdXIoM3B4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmdhbGxlcnktbGlzdCB7XG4gICAgcGFkZGluZzowIDEuMjVyZW07XG4gICAgLmNvbHVtbiB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBwYWRkaW5nOjAgLjM1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIG9wYWNpdHk6MDtcbiAgfVxuICAucGhvdG8taW1hZ2Uge1xuICAgIG1hcmdpbi1ib3R0b206Ljc1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgICYtY29udGFpbmVyIHtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gIH1cbn0iLCIuYWNjb3JkaW9uLWZpbHRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cbiAgJl9fY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgJl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICAmLS1tb2JpbGUge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyYXk7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuICAmX19jb250ZW50IHtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgJl9fZHJvcGRvd24ge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlIHVwKSB7XG4gICAgICBtYXJnaW46IDAgMC41cmVtO1xuICAgICAgZmxleC1ncm93OiAxO1xuICAgIH1cbiAgICBzZWxlY3Qge1xuICAgICAgcGFkZGluZzogMXJlbTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IDByZW0gY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICZfX2J0biB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IC42NXJlbSAxcmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxufSIsIi5zZWxlY3RlZFZlaGljbGVCYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYmViZWI7XG4gIC5sYXlvdXQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWluLWhlaWdodDogODBweDtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG4gIGltZyB7XG4gICAgbWF4LWhlaWdodDogMTAwcHg7XG4gIH1cbiAgLnJvdy0tc21hbGwge1xuICAgIG1heC13aWR0aDogNjdyZW07XG4gIH1cbiAgJl9fY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgJi0tbm9NYXJnaW4ge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgbWFyZ2luOiAxLjVyZW0gYXV0byAwO1xuICAgIH1cbiAgfVxuICAmX190ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgfVxuICB9XG4gICZfX3NwYW4ge1xuICAgIGNvbG9yOiAjNmE2YTZhO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cbiAgJl9fYnRuIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctbGVmdDogMS41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuNXJlbTtcbiAgfVxuICAmLS1zbWFsbGVyIHtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBmb250LXNpemU6IDFyZW07XG4gIH1cbn0iLCIucGVuY2lsLXRvcC1zZWFyY2gge1xuICBwYWRkaW5nOiAxMXB4IDA7XG59XG5cbi5uYXYtc2VhcmNoIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSB1cCkge1xuICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICB9XG59XG5cbi5zZWFyY2gtbGluayB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB2ZXJ0aWNhbC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gICZfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB0b3A6IDAuMnJlbTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDEwMjRweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgICAgZm9udC1zaXplOiAwLjlyZW07XG4gICAgfVxuICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTAyNHB4KSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLWljb24ge1xuICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjgpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAwLjJyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSB1cCkge1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICB9XG59XG5cbi5zZWFyY2gtYm94IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IDAuN3JlbTtcbiAgd2lkdGg6IDQyM3B4O1xuICB6LWluZGV4OiAxMTtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG59XG5cbi5zZWFyY2gtYnRuIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn0iLCIjd2hlZWxzIHtcbiAgaDIsIGgzIHtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gIGgyIHtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgZm9udC1zaXplOjUuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgbGV0dGVyLXNwYWNpbmc6LTVweDtcbiAgfVxuICBoMyB7XG4gICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgaDQge1xuICAgIGZvbnQtc2l6ZToxLjc1cmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgZm9udC1zaXplOjIuNjVyZW07XG4gICAgfVxuICB9XG4gIGEge1xuICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIGNvbG9yOiRncmF5NjtcbiAgfVxuICBhIHtcbiAgICAvL3RleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICY6aG92ZXIge1xuICAgICAgLy9jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgLy9tYXJnaW4tYm90dG9tOjJyZW07XG4gICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC4wMjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuNztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNXJlbTtcbiAgICB9XG4gIH1cbiAgLnJvdyB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgfVxuLypcbiAgLy8gcGFnZSBoZWFkZXJcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBjb2xvcjokd2hpdGU7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjIuNXJlbTtcbiAgICB9XG4gICAgaDEge1xuICAgICAgZm9udC1mYW1pbHk6JHRpdGxlLWZvbnQtZmFtaWx5O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6NC4yNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgcCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgJHJlZDtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGZvbnQtc2l6ZTowLjlyZW07XG4gICAgICBsaW5lLWhlaWdodDoyLjU7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB9XG4gICAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgICAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICB9XG4gICAgLnBhZ2UtdGl0bGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC41KTtcbiAgICB9XG4gIH1cbiovXG4vLyBmaWx0ZXIgc29ydCAvLy8vLy8vLy8vLy8vLy8vLy9cbiAgLmZpbHRlci1zb3J0IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXgtd2lkdGg6bm9uZTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHhsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6NXJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXRvcCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICRncmF5NjtcbiAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHBhZGRpbmc6Ljg1cmVtIDFyZW07XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6MjU0cHg7XG4gICAgICAgIGhlaWdodDo1NHB4O1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZGl2aWRlciB7XG4gICAgICBoZWlnaHQ6MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgICAvLyBib3R0b21cbiAgICAmLWJvdHRvbSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgJi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1jb3VudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IFxuICB9XG5cbiAvKiAucHJvZHVjdC1pdGVtIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgcGFkZGluZzoycmVtO1xuICAgIHBhZGRpbmctdG9wOjA7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1ib3R0b206MDtcbiAgICB9XG4gICAgPiAuY29sdW1uIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9Ki9cblxuICAucm93IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgLy9wYWRkaW5nOiAwIDIuODEyNXJlbTtcbiAgICAgLy8gPiAuY29sdW1uIHt9XG4gICAgfVxuICB9XG5cbiAgLy8gcHJvZHVjdHMgbGlzdCAvLy8vLy8vLy8vLy8vLy9cbiAgLnByb2R1Y3RzLWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctbGVmdDo1cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDo1cmVtO1xuICAgIH1cbiAgICAuY29sdW1uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICAuaG92ZXItaXRlbSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmluZm8ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICBsaW5lLWhlaWdodDoxLjM1O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICB9XG4gICAgICAud2hlZWwtbmFtZSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5vdGhlci1maW5pc2hlcyB7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG9wYWNpdHk6MDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB6LWluZGV4OjI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICA+IC5vdGhlci1maW5pc2gge1xuICAgICAgICAgIHdpZHRoOjI1JTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6NnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWNvbnRhaW5lciB7XG4gICAgICAgIFxuICAgICAgICAvL29wYWNpdHk6MDtcbiAgICAgICAgZGlzcGxheTpncmlkO1xuICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgZ3JpZC1jb2x1bW46IDEgLyAxO1xuICAgICAgICAgIGdyaWQtcm93OiAxIC8gMTtcbiAgICAgICAgfVxuICAgICAgICAubW9yZS1maW5pc2hlcywub25lLWZpbmlzaCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aHVtYm5haWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6NHB4O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1vcmUtZmluaXNoZXMge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJyZWFrIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgLnJvdyB7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBtYXgtd2lkdGg6ODRyZW07XG4gICAgfVxuICB9XG4gIC8vIGJyYW5kIGluZm9ybWF0aW9uXG4gIC5icmFuZC1pbmZvcm1hdGlvbiB7XG4gICAgLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6ODByZW07XG4gICAgfVxuICB9XG4gIC8qXG4gIC5wcm9kdWN0LWxpc3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRjtcbiAgICBwYWRkaW5nLXRvcDowLjY3NXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOjMuNzVyZW0gMDtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgbWFyZ2luLWJvdHRvbTowLjY3NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjMuNzVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OjEuODc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuODc1cmVtO1xuICAgICAgICA+IC5jb2x1bW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxLjg3NXJlbTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuODc1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nOjNyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LWluZm8ge1xuICAgICAgPiBkaXYge1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgICYud2hlZWwge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyLjM1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSovXG59XG5cbi8qI3doZWVscyB7XG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICBtYXJnaW4tdG9wOjNyZW07XG4gICAgLmNvbHVtbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICB9XG4gIC5ob3Zlci1pdGVtX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZToyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6LjU7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIGNvbG9yOiRncmF5O1xuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgZm9udC1zaXplOjEuMXJlbTtcbiAgICB9XG4gIH1cbiAgLnBvcF91cF92ZWhpY2xlIHtcbiAgICB0cmFuc2l0aW9uOmFsbCAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYnV0dG9uIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBzZWUgb24gdmVoaWNsZSBwb3B1cFxuLmZhbmN5Ym94LWlubmVyIHtcbiAgaGVpZ2h0OmF1dG8haW1wb3J0YW50O1xuICAjdmVoaWNsZS1zZWxlY3RzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbn1cbi5mYW5jeWJveC1jbG9zZSB7XG4gIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQhaW1wb3J0YW50O1xuICByaWdodDotMjBweCFpbXBvcnRhbnQ7ICBcbn1cbiAgKi8iLCIjd2hlZWwge1xuICBjb2xvcjokZ3JheTY7XG4gIC8vcGFkZGluZy10b3A6OTBweDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgLy9iYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsICR3aGl0ZUY3IDAsICR3aGl0ZUY3IDU1JSwgdHJhbnNwYXJlbnQgNTUlLCB0cmFuc3BhcmVudCAxMDAlKTtcbiAgICBwYWRkaW5nLXRvcDowO1xuICB9XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgcGFkZGluZzowO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgbWF4LWhlaWdodDo2MDBweDtcbiAgICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICB9XG4gICAgLmZsZXgtdmlkZW8gaWZyYW1lIHtcbiAgICAgIHRvcDotMTAlO1xuICAgIH1cbiAgfVxuICAuZGV0YWlscyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAvL2JhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgxMTVkZWcsICR3aGl0ZSA1MCUsICR3aGl0ZUY4IDUwJSk7XG4gICAgfVxuICB9XG4gICNkZXRhaWwtdG9wIHtcbiAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOjNyZW07XG4gICAgcGFkZGluZy1sZWZ0Oi41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6LjVyZW07XG4gICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy10b3A6M3JlbTtcbiAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgfVxuICBcbiAgLmxhYmVsIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOi44NXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6LjI1cmVtO1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgIGkge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICB9XG4gIH1cblxuICAuYnV0dG9uLCBpbnB1dCwgc2VsZWN0IHtcbiAgICBtYXgtd2lkdGg6MzcwcHg7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOi4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgfVxuXG4gIFxuICBcbiAgXG4gIC53aGVlbC1zaXplcyB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cbiAgfVxuICAud2hlZWwtZGV0YWlscyB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbiAgICAud2hlZWwtcGFyYWdyYXBoIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5sb2FkaW5nSW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5maXRtZW50LXNlYXJjaC1jb250YWluZXIge1xuICAgIGJ1dHRvbiB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4wNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNkZXRhaWwtYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICA+IC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgfVxufVxuXG4uZ2FsbGVyeS1wb3B1cCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXJnaW46IDAgYXV0bztcbiAgLmdhbGxlcnlWaWV3LWluZm8ge1xuICAgIGNvbG9yOiAjY2NjO1xuICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBzcGFuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAucG9wdXAtY2FyIHtcbiAgICBmb250LXdlaWdodDogOTAwO1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC5tZnAtY2xvc2Uge1xuICAgIGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbG9hdDogcmlnaHQ7XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmFsdC1pbWFnZXMge1xuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICAvL3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG5cbi5kZXRhaWwtdGh1bWIge1xuICBwIHtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW46IDAuMjVyZW07XG4gIH1cbiAgLmZpbmlzaC1uYW1lIHtcbiAgICBjb2xvcjogJGRhcmstZ3JheTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxuICBpbWcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjNzIGVhc2UtaW4tb3V0O1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA4KTtcbiAgICB9XG4gIH1cbn1cblxuXG5cbi5zZWUtb24tdmVoaWNsZS1jb250YWluZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI2NjYztcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDAuMnJlbTtcbiAgbWFyZ2luOiAwLjVyZW0gMDtcbn1cblxuLnNlZS1vbi12ZWhpY2xlLWhlYWRlciB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG4uc2VlLW9uLXZlaGljbGUtc2VsZWN0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxudGFibGUge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIHRyIHtcbiAgICB0ZCxcbiAgICB0aCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIHRoIHtcbiAgICAgIGJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgI3doZWVsIHtcbiAgICAuYmFubmVyLXRvcCB7XG4gICAgICAud2hlZWwtYmFubmVyIHtcbiAgICAgICAgaGVpZ2h0OiA2cmVtO1xuICAgICAgfVxuICAgICAgLmhlYWRpbmcge1xuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgdG9wOiA5MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5zbGljay1zbGlkZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgLmZpbmlzaC1oZWFkZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxuXG4jZGV0YWlsLXF1b3RlLXBvcHVwIHtcbiAgbWF4LXdpZHRoOjc1cmVtO1xuICBoMixoNCxoNSB7XG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBsYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAub3B0aW9uLXR3byB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG59IiwiLm1haW4taW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBwYWRkaW5nLXJpZ2h0OjA7XG4gIG1hcmdpbjowIGF1dG87XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgcGFkZGluZy1yaWdodDoycmVtO1xuICB9XG4gIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmFsdC1pbWFnZXMge1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIC5zbGljay10cmFjayB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAvL2ZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICB9XG4gIH1cbiAgJi0tcmV0YWlsZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgICAuc2xpY2stdHJhY2sge1xuICAgICAgICAvL3dpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcbiAgICAuc2xpY2stZG90cyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXNsaWRlIHtcbiAgICAvL3dpZHRoOjEwMHB4IWltcG9ydGFudDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIGJvcmRlcjoxcHggc29saWQgJHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgIHdpZHRoOjExNXB4IWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6MDtcbiAgICAgIG1hcmdpbi1yaWdodDowO1xuICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgICYuc2xpY2stY3VycmVudCB7XG4gICAgICBib3JkZXItY29sb3I6ICRncmF5OTtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLXNsaWRlOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG4gIGEge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiAuN3JlbTtcbiAgfVxuICBpbWcge1xuICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDgpO1xuICAgIH1cbiAgfVxufSIsIiN3aGVlbCB7XG4gIC53aGVlbC1kZXRhaWwtc3BlY3Mge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICA+IGRpdiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIH1cbiAgICAud2hlZWwtc2l6ZXMge1xuICAgICAgbWFyZ2luLXRvcDowO1xuICAgIH1cbiAgfVxufVxuXG4ud2hlZWwtc3BlY3Mge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICAmX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgJl9fZGV0YWlscyB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG59XG5cbi5kZXRhaWwtc3BlYy10YWJzIHtcbiAgYm9yZGVyOiBub25lO1xuICAmLWNvbnRlbnQge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICAmLXBhbmVsIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgYSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOiAwLjZyZW0gMDtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuICAgIGNvbG9yOiAjNjY2O1xuICAgICZbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgfVxuICB9XG59XG5cblxuLmJwLXRvZ2dsZS1idG4ge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG59IiwiLndoZWVsLWluZm8ge1xuICBoMyB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICBjb2xvcjokZ3JheTM7XG4gIH1cbiAgb2wge1xuICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICBjb2xvcjokZ3JheTY7XG4gICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgbGkge1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgfVxuICB9XG4gID4gZGl2IHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgIC5maW5pc2gge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICAuc2l6ZXMge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAudGl0bGUge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgJi1saXN0IHtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBzcGFuIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VlLXNwZWNzIHtcbiAgICBhIHtcbiAgICB9XG4gIH1cbn1cblxuLy8gYWNjb3JkaW9uXG4jd2hlZWwge1xuICAud2hlZWwtZmlsdGVyIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjEuMjVyZW07XG4gICAgICAuaXMtYWN0aXZlPi5hY2NvcmRpb24tdGl0bGUgLmZhLWNoZXZyb24tdXA6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6J1xcZjA3OCc7XG4gICAgICB9XG4gICAgICAuZmFzIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgICBjb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICAgICYtdGl0bGUge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjokZ3JheTY7XG4gICAgICB9XG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmN0YS1idXR0b25zIHtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OmZsZXg7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgfVxuICAucGlsbCB7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDsgXG4gIH1cbiAgPiBkaXYge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICB9XG4gICAgICAucGlsbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICBib3JkZXI6MXB4IHNvbGlkICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTk7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgcGFkZGluZy10b3A6LjI1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOi4yNXJlbTtcbiAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgbGkge1xuICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgIG1hcmdpbi1yaWdodDouNTtcbiAgICB3aWR0aDoyNSU7XG4gICAgJjpmaXJzdC1jaGlsZCA+IC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi5kZXRhaWxzLW1lZGlhIHtcbiAgei1pbmRleDogNTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAmX19oZWFkZXIge1xuICAgIGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLW91dDtcbiAgICAtbW96LXRyYW5zaXRpb246IGNvbG9yIDAuM3MgZWFzZS1vdXQ7XG4gICAgLW8tdHJhbnNpdGlvbjogY29sb3IgMC4zcyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzIGVhc2Utb3V0O1xuICAgIGNvbG9yOiAjMDAwO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufVxuXG4uZGV0YWlscy1kaXZpZGVyIHtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYzdjN2M5O1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMXB4O1xuICAgIG1hcmdpbjogMTVweCBhdXRvIDA7XG4gICAgd2lkdGg6IDJyZW07XG4gIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gIC5kZXRhaWxzLTM2MCxcbiAgLmRldGFpbHMtdmlkZW8ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMXJlbTtcbiAgfVxuICAuZGV0YWlscy1kaXZpZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4iLCIjc2VlLW9uLXZlaGljbGUtZGV0YWlsIHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICB9XG4gIHNlbGVjdCB7XG4gICAgZm9udC1zaXplOiAuODc1cmVtO1xuICB9XG4gIC5lcnJvciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIHotaW5kZXg6IDI7XG4gIH1cbiAgLm5vLWZpdG1lbnQge1xuICAgIG1pbi1oZWlnaHQ6IDZyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICY6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIG9wYWNpdHk6IC44O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMTtcbiAgICB9XG4gICAgLmVycm9yIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAubG9hZGluZ0ltYWdlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLmhvdmVyLWl0ZW06aG92ZXIge1xuICAgIGJ1dHRvbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBvcGFjaXR5OiAwLjA3NTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgICY6OmJlZm9yZSB7XG4gICAgICBvcGFjaXR5OiAuNztcbiAgICB9XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA0MCU7XG4gICAgbGVmdDogMDtcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMC44cmVtO1xuICAgIG9wYWNpdHk6IDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuICAgIH1cbiAgfVxuICAmLW92ZXJsYXkge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDAuNSk7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAuZmEtc3Bpbm5lciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn0iLCIjc2VlLW9uLXZlaGljbGUtcG9wdXAge1xuICBib3JkZXI6MDtcbiAgcGFkZGluZzozcmVtO1xuICBib3JkZXItcmFkaXVzOjEwcHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMHZtYXggcmdiYSgwLCAwLCAwLCAuNyk7XG4gICY6LWludGVybmFsLWRpYWxvZy1pbi10b3AtbGF5ZXI6OmJhY2tkcm9wLCY6OmJhY2tkcm9wIHtcbiAgICAvL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjcpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICBwYWRkaW5nOjJyZW07XG4gICAgJltvcGVuXSB7XG4gICAgICBoZWlnaHQ6MTAwdmg7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICB9XG4gIH1cbiAgI3doZWVsLXNwZWMtcHJpY2UsLmJ1eS1ub3cge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxuICAjdmVoaWNsZS1kZXNjcmlwdGlvbiwgI3ZlaGljbGUtZGVzY3JpcHRpb24tbW9iaWxlIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo5MDA7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICB9XG4gICN2ZWhpY2xlLWRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgfVxuICAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUge1xuICAgICN2b3Ytc3VibW9kZWwge1xuICAgICAgZm9udC1zaXplOjEuMzByZW07XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxuICAudmVoaWNsZS1wb3B1cC1jb2xvci1idXR0b24ge1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gIC53aGVlbC1pbmZvIHtcbiAgICBwYWRkaW5nOjA7XG4gICAgbWFyZ2luOjA7XG4gICAgYm9yZGVyOjA7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RUQ7XG4gICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICAud2hlZWwtdGh1bWJuYWlsIHtcbiAgICAgIG1hcmdpbi1yaWdodDouNzVyZW07XG4gICAgfVxuICB9XG4gIC5zcGVjcy1pbmZvLC5zcGVjcyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICB9XG4gIC5zcGVjcy1pbmZvIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgI3doZWVsLWJyYW5kIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgfVxuICAuc3BlY3Mge1xuICAgICYtY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgICB9XG4gICAgICA+IC5zcGVjczpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5kaXZpZGVyIHtcbiAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBsb2FkaW5nIFxuICAjaWNtLXZvdi1sb2FkaW5nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICBib3JkZXItcmFkaXVzOjEwcHg7XG4gIH1cbiAgLy8gcHJldiBuZXh0XG4gIC52ZWhpY2xlLXBvcHVwLWltYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLnZvdi1hbmdsZS1hcnJvdyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDoyNSU7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBwYWRkaW5nOi41cmVtO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHRvcDo0OCU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgfVxuICB9XG4gICN2b3YtcHJldmlvdXMtYW5nbGUge1xuICAgIGxlZnQ6MDtcbiAgfVxuICAjdm92LW5leHQtYW5nbGUge1xuICAgIHJpZ2h0OjA7XG4gIH1cbiAgXG59XG5cblxuXG4vLyBzd2F0Y2hcbiNzd2F0Y2hlcy1kaWFsb2cge1xuICBib3JkZXI6MXB4IHNvbGlkICRncmF5QztcbiAgYm9yZGVyLXJhZGl1czo1cHg7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDEwMHZtYXggcmdiYSgwLCAwLCAwLCAuNSk7XG4gIC5pY20tdm92LXN3YXRjaC1ncmlkIHtcbiAgICBkaXNwbGF5OiBncmlkO1xuICAgIGdhcDogMTBweDtcbiAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IDFmciAxZnI7XG4gIH1cbn0iLCIud2hlZWwtZ2FsbGVyeSB7XG4gICZfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTA1O1xuICAgIG1hcmdpbjogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICB9XG59XG5cbi53aGVlbC1nYWxsZXJ5TGlzdCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICB9XG4gICZfX2l0ZW0ge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMxJTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICBtYXJnaW4tdG9wOiAwLjVyZW07XG4gICAgJjpudGgtY2hpbGQobiArIDcpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICYtLWRpc3BsYXk6bnRoLWNoaWxkKG4gKyA3KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLndoZWVsLWdhbGxlcnlJbWFnZSB7XG4gIC8vd2lkdGg6IDE5MHB4O1xuICAvL2hlaWdodDogMTAycHg7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG59XG5cbkBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuICAud2hlZWwtZ2FsbGVyeVR4dCB7XG4gICAgZm9udC1zaXplOiAwLjhyZW07XG4gIH1cbn1cbiIsIiNzcGVjcyB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIC8vb3ZlcmZsb3c6IGF1dG87XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICBmb250LXNpemU6LjhyZW07XG4gIGNvbG9yOiRibGFjaztcbiAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gIHBhZGRpbmc6MXJlbSAycmVtO1xuICAudGFicyB7XG4gICAgYm9yZGVyOjA7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOjEuNXJlbTtcbiAgICB9XG4gIH1cbiAgdGFibGUge1xuICAgIHRyIHtcbiAgICAgIHRoLHRkIHtcbiAgICAgICAgcGFkZGluZzouNzVyZW0gMXJlbTtcbiAgICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgICBmb250LXNpemU6Ljg3NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIFxuICAgIHRoZWFkIHtcbiAgICAgIC8vdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOjA7XG4gICAgICB0ciB7XG4gICAgICAgIHRoIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICB0Ym9keSB7XG4gICAgYm9yZGVyOjA7XG4gIH1cbiAgdHIge1xuICAgICY6bnRoLWNoaWxkKG9kZCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUYxO1xuICAgIH1cbiAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxuICB0aGVhZCB0cjpudGgtY2hpbGQob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgfVxuICAudGl0bGUge1xuICAgIGZvbnQtZmFtaWx5OiRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIGxldHRlci1zcGFjaW5nOi4ycmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcGFkZGluZy10b3A6LjlyZW07XG4gICAgcGFkZGluZy1ib3R0b206LjlyZW07XG4gICAgXG4gIH1cblxuICAudGFicy1jb250ZW50IHtcbiAgICBib3JkZXI6MDtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53aGVlbC1zcGVjIHtcbiAgJi10YWJzIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBtYXJnaW4tcmlnaHQ6Ljc1cmVtO1xuICAgID4gYSB7XG4gICAgICBmb250LXNpemU6MS42cmVtO1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICAgICYuaXMtYWN0aXZlIHtcbiAgICAgIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLXBhbmVsIHtcbiAgICBvdmVyZmxvdzphdXRvO1xuICB9XG59XG4vKlxuLndoZWVsLXNwZWMge1xuICAgICYtaGVhZGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXk5O1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB9XG4gIFxuICAgICYtdGFicyA+IGEge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUYxO1xuICAgICAgICBjb2xvcjokZ3JheTk7XG4gICAgICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpmb2N1cywgJlthcmlhLXNlbGVjdGVkPXRydWVdIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheTc7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgfSAgICAgICAgXG4gICAgfVxuICAgICYtcGFuZWwge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgYSB7XG4gICAgICAgIHRyYW5zaXRpb246YWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1idG4ge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgIH1cbiAgLnRhYnMge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICA+IGRpdiB7XG4gICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodDowO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSovIiwiLmZpbmlzaGVzIHtcbiAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAvL2JvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDoxNzBweDtcbiAgfVxuICBwIHtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICAuZmluaXNoLW5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC1zaXplOjFyZW1cbiAgICB9XG4gICAgLmx1Z3Mge1xuICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgfVxuICB9XG4gIC5sYWJlbCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICB9XG4gIC5hbHQtZmluaXNoZXMge1xuICAgID4gYSB7XG4gICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgIHBhZGRpbmc6LjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG5cbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlRjM7XG5cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGMztcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgfVxuICAgICAgJi5kaXNjb250aW51ZWQtZmluaXNoIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZm9udC1zaXplOi43cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLjFyZW07XG4gICAgICAgIC5kaXNjb250aW51ZWQtb3ZlcmxheSB7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDowO1xuICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAuZGlzY29udGludWVkLW92ZXJsYXl7XG4gICAgICAgICAgICBvcGFjaXR5OjE7XG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBvcGFjaXR5Oi4xNTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDo5MHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi53aGVlbC1kZXRhaWwtZ2FsbGVyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLnBob3RvIHtcbiAgICBib3JkZXI6MXB4IHNvbGlkICR3aGl0ZTtcbiAgICBib3JkZXItbGVmdDowO1xuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItcmlnaHQ6MDtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTo3NSU7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgfVxuICAubmF2aWdhdGlvbiB7XG4gICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICY6Zm9jdXMsICY6YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBnYWxsZXJ5IHNsaWRlclxuLmpzLXNsaWRlciB7XG4gIHBhZGRpbmc6MCAzcmVtO1xuICAuc2xpY2stdHJhY2sge1xuICAgIG1hcmdpbjowO1xuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgcGFkZGluZzouMjVyZW07XG4gICAgPiBhIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIC8vbGluZS1oZWlnaHQ6MTtcbiAgICAgICYuZ2FsbGVyeVZpZXdWaWRlby1vcGVuIHtcbiAgICAgICAgLndoZWVsLWdhbGxlcnlJbWFnZSB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLndoZWVsLWdhbGxlcnlJbWFnZSB7XG4gICAgICAvL2JvcmRlci1yYWRpdXM6MTVweDtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlEO1xuICAgIH1cbiAgICAudmlkZW8taWNvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgZm9udC1zaXplOjIuMjVyZW07XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgfVxuICB9XG4gIC5zbGljay1hcnJvdyB7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgaGVpZ2h0OjMwcHg7XG4gICAgd2lkdGg6MzBweDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHotaW5kZXg6MTtcbiAgICBvcGFjaXR5OjE7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluO1xuICAgIHRvcDozNSU7XG4gICAgaSB7XG4gICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjIuNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6NDBweDtcbiAgICAgIHdpZHRoOjQwcHg7XG4gICAgfVxuICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgb3BhY2l0eTouNTtcbiAgICB9XG4gICAgJi5mZWF0dXJlZC1uZXh0IHtcbiAgICAgIHJpZ2h0OjBweDtcbiAgICB9XG4gICAgJi5mZWF0dXJlZC1wcmV2IHtcbiAgICAgIGxlZnQ6MHB4O1xuICAgIH1cbiAgICAvKlxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAmLmZlYXR1cmVkLW5leHQge1xuICAgICAgICByaWdodDotMjVweDtcbiAgICAgIH1cbiAgICAgICYuZmVhdHVyZWQtcHJldiB7XG4gICAgICAgIGxlZnQ6LTI1cHg7XG4gICAgICB9XG4gICAgfVxuICAgICovXG4gIH1cbn1cblxuLy8gd2hlZWwgZ2FsbGVyeSBzbGlkZXJcbi53aGVlbC1nYWxsZXJ5IHtcbiAgJl9faGVhZGVyIHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIH1cbiAgJkxpc3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAmX19pdGVtIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICBmbG9hdDpsZWZ0O1xuICAgICAgd2lkdGg6NDklO1xuICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOjE4MHB4O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAmOm50aC1jaGlsZCgybikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wb3B1cC13aGVlbGltYWdlIHtcbiAgbWF4LWhlaWdodDogODAwcHg7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxcmVtO1xuICBtYXJnaW46IDAgYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG59XG5cbi53aGVlbC1nYWxsZXJ5SW1hZ2Uge1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICBpbWcge1xuICAgIC8vb3BhY2l0eTogMDtcbiAgICB3aWR0aDoxMDAlO1xuICB9XG59XG4ud2hlZWwtZ2FsbGVyeVR4dCB7XG4gIGZvbnQtc2l6ZToxcmVtO1xuICBkaXNwbGF5OmJsb2NrO1xuICBsaW5lLWhlaWdodDoxLjI1O1xuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgfVxufSIsIi5wcm9kdWN0LW5leHQtcHJldiB7XG4gIGRpc3BsYXk6ZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgYSB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkd2hpdGVGODtcbiAgICBtYXJnaW4tbGVmdDoxcmVtO1xuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiRibGFjaztcbiAgICB9XG4gICAgJi5uby1wcm9kdWN0IHtcbiAgICAgIG9wYWNpdHk6LjU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbiAgaW1nIHtcbiAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5RDU7XG4gIH1cbn0iLCIud2hlZWwtdGl0bGUge1xuICBwYWRkaW5nLWJvdHRvbTowO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICB9XG4gIGgyLCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgfVxuICB9XG4gIGgzLGg0IHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIFxuICB9XG4gIGgzIHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOi41cmVtO1xuICB9XG4gIGg0IHtcbiAgICBmb250LXNpemU6LjlyZW07XG4gICAgY29sb3I6JHJlZDtcbiAgICBtYXJnaW4tYm90dG9tOi4yNXJlbTtcbiAgfVxuICBoNiB7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGxldHRlci1zcGFjaW5nOi4xNXJlbTtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiRncmF5NjtcbiAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgfVxuICAudGl0bGUge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIC8vZGlzcGxheTpmbGV4O1xuICAgICAgLy9hbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgfVxuICB9XG4gIC5yZWQge1xuICAgIGNvbG9yOiRyZWQ7XG4gIH1cbiAgLmRpdmlkZXIge1xuICAgIHdpZHRoOjFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICBoZWlnaHQ6NDZweDtcbiAgICBtYXJnaW4tbGVmdDoxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDoxLjI1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICB9XG4gIH1cbiAgLmZpbmlzaCB7XG4gICAgLy9tYXJnaW4tbGVmdDoxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgLy9kaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIC5kaXNjb250aW51ZWQge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBtYXJnaW4tdG9wOi0xLjVyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgfVxuICB9XG4gIC5wcmljZSwubXNycC1kaXNwbGF5IHtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHNwYW4ge1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgXG4gICAgICAmLm1zcnAtcHJpY2luZyB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgdG9wOiA0NSU7XG4gICAgICAgIFxuICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WSgxMGRlZyk7XG4gICAgICAgIFxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tc3JwLWRpc3BsYXkge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufSIsIiN3aGVlbCB7XG4gIC8vIGJ5IHZlaGljbGVcbiAgLndoZWVsLWNvbnRlbnQtY29udGFpbmVyIHtcbiAgICAuY2FydCB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2FydCB7XG4gICAgY29sb3I6JGdyYXk2O1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBcbiAgICBcbiAgICAvLyBwcm9kdWN0IHNlbGVjdCAvLy8vL1xuICAgIC5wcm9kdWN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICYuc2t1LXByb2R1Y3Qge1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICB9XG4gICAgICAjcHJvZHVjdC1zZWxlY3Qge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCAuNXJlbSBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1za3Uge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIH1cbiAgICAgIC5sYWJlbCB7XG4gICAgICAgICYuc2t1LWluZm9ybWF0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICAgICYtcmVhciB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDouNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5za3UtbGFiZWwge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICAvLyBmaXRtZW50IHNlbGVjdGVkIC8vLy8vL1xuICAgIC5maXRtZW50LXNlbGVjdGVkIHtcbiAgICAgIG1heC13aWR0aDo0MDBweDtcbiAgICAgIC52ZWhpY2xlIHtcbiAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICBsaW5lLWhlaWdodDoxLjU7XG4gICAgICAgIC8vZGlzcGxheTp0YWJsZTtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgLy9tYXJnaW4tbGVmdDoxcmVtO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgICAgLy9kaXNwbGF5OnRhYmxlLWNlbGw7XG4gICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUU7XG4gICAgICAgICAgJi5maXRtZW50LW9wZW4ge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDowO1xuXG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuZml0bWVudENsZWFyMyB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB9XG4gICAgICAgIC5yZW1vdmUtZml0bWVudCB7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICAgIH1cbiAgICAgICAgLnZvdi1saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5MztcbiAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgcGFkZGluZzoxcmVtIDJyZW07XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czo1MHB4O1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDoyNjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG5cblxuXG4gICAgLy8gcHJpY2luZyAvLy8vLy8vLy9cbiAgICAucHJpY2luZy1zZWN0aW9uIHtcbiAgICAgIG1heC13aWR0aDozNzBweDsgIFxuICAgICAgJi5za3UtcHJpY2luZy1zZWN0aW9uIHtcbiAgICAgICAgZGlzcGxheTpibG9jayFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgICAudG9wIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOmZsZXgtZW5kO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWF4LXdpZHRoOjgwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW07XG4gICAgICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6M3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJpY2luZyB7XG4gICAgICAgICAgZm9udC1zaXplOjEuNzVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOi4xNXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYm90dG9tIHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRyZWQ7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTouOHJlbTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiN3aGVlbHMge1xuICAuZmlsdGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgd2lkdGg6ODUlO1xuICAgIH1cbiAgICAucmVmZXJlbmNlLXZlaGljbGUge1xuICAgICAgLmZpdG1lbnQtbWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgdWwge1xuICAgICAgbWFyZ2luOjA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICAvLyBhY3RpdmUgZmlsdGVyIFxuICAgIC5maWx0ZXItYWN0aXZlIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1yaWdodDouMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRyZWQ7XG4gICAgICAgIHBhZGRpbmc6LjI1cmVtIC41cmVtO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTouNzVyZW07XG4gICAgICAgIHRyYW5zZm9ybTogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtdGl0bGUge1xuICAgICAgICBoNCB7XG4gICAgICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWNsZWFyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIGZpbHRlciBsaXN0XG4gICAgaDQge1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICB9XG4gICAgLmljb24tcHJvZHVjdC1maWx0ZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgJi5maWx0ZXItYnJhbmRzLW9wdHMge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICAmLmZpbHRlci1hY3RpdmUge1xuICAgICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgIC5maWx0ZXItYWN0aXZlLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pY29uLWZpbHRlci10aXRsZSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaWNvbi1maWx0ZXItaXRlbXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmZpbHRlci1idXR0b24ge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICAgIG1hcmdpbjoxcmVtIDA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5QztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuZmlsdGVyLWZpdG1lbnQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTo4cHggc29saWQgJGdyYXk5O1xuICAgICAgICAuZml0bWVudC1zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6NXB4O1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOjFyZW0gMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBub24gZml0bWVudCBwYWdlc1xuICAmOm5vdCgud2hlZWxzLXNlYXJjaGVkLWJ5LXZlaGljbGUpIHtcbiAgICAvLyBoZWFkZXJcbiAgICAuZml0bWVudC1oZWFkZXIge1xuICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAgICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBib3JkZXItdG9wOjA7XG4gICAgICAgIG1hcmdpbi10b3A6MXJlbTtcbiAgICAgIH1cbiAgICAgIC5tb2JpbGUtb25seS1zbGlkZS1maWx0ZXItc2VhcmNoIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICAgIC5jb2x1bW4ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICB9XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAmLmZpdG1lbnQtb3BlbiB7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC8vIGZpbHRlclxuICAgIC5maWx0ZXIge1xuICAgICAgLmZpdG1lbnQtc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZpbHRlci1pdGVtcyB7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmFjY29yZGlvbi1maWx0ZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIHVwKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG4gICZfX2NvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSB1cCkge1xuICAgICAgLypkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsqL1xuICAgIH1cbiAgfVxuICAmX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgICYtLW1vYmlsZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG4gICZfX2NvbnRlbnQge1xuICAgIGJvcmRlcjogMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxuICAmX19kcm9wZG93biB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UgdXApIHtcbiAgICAgIG1hcmdpbjogMCAwLjVyZW07XG4gICAgICBmbGV4LWdyb3c6IDE7XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMHJlbSBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICB9XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIHVwKSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJl9fYnRuIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogLjY1cmVtIDFyZW07XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDFyZW07XG4gICAgfVxuICB9XG59XG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vLy8vLy8gb2ZmIGNhbnZhcyBvdmVycmlkZXMgLy8vLy8vXG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5IHtcbiAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNzUpO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQsIC5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC00ODVweCk7XG59XG5cbi8vLy8gb2ZmIGNhbnZhcyBzdHlsaW5nXG4ub2ZmLWNhbnZhcyB7XG4gIGNvbG9yOiRibGFjaztcbiAgPiBkaXYgPiBkaXYge1xuICAgIHBhZGRpbmctbGVmdDoycmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgfVxuICAmLnBvc2l0aW9uLWxlZnQge1xuICAgIC8qd2lkdGg6NDQ1cHg7IC8vIE5lZWQgdG8gdXBkYXRlIGpzIGJlZm9yZSBhcHBseWluZy4uLi4qL1xuICAgIC8vd2lkdGg6Mzc1cHg7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHdpZHRoOjQ0NXB4O1xuICAgIH1cbiAgICAvL2JvcmRlcjoxcHggc29saWQgJGdyYXk5O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOjAuODI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgJi5wb3NpdGlvbi1yaWdodCB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIH1cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgd2lkdGg6MTAwJTtcbiAgICByaWdodDowO1xuICAgIGxlZnQ6MDtcbiAgICB0b3A6MDtcbiAgICBwYWRkaW5nOjEuMjVyZW0gMnJlbTtcbiAgICBmb250LXNpemU6LjgyNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjIwMDtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIH1cbiAgICAvKlxuICAgIHBhZGRpbmc6LjVyZW0gMnJlbTtcbiAgICBjb2xvcjokbGlnaHQtZ3JheTtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICovXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gICAgJi5vcmFuZ2Uge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnZlcnRpY2FsLm1lbnUge1xuICAgIHBhZGRpbmctbGVmdDowO1xuICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgbWFyZ2luLXRvcDowO1xuICAgID4gbGkge1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAmLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudD5hOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnKyc7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgICAgIHRvcDoxM3B4O1xuICAgICAgICAgIG1hcmdpbi10b3A6MDtcbiAgICAgICAgICByaWdodDoycmVtO1xuICAgICAgfVxuICAgICAgJi5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXT5hOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnLSc7XG4gICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjEuMnJlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2UtaW4tb3V0O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICAgIH1cbiAgICAgICAgLmZhLWNhcmV0LWRvd24ge1xuICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICAgID4gbGkge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zb2NpYWwtbWVudSB7XG4gICAgcGFkZGluZzoxcmVtIDFyZW0gMnJlbTtcbiAgICBhIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokZ3JheTM7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gSWNvbiBGaWx0ZXJzXG4gIC5wcm9kdWN0LWZpbHRlcnMge1xuICAgIC5pY29uLXByb2R1Y3QtZmlsdGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgIHBhZGRpbmctYm90dG9tOjFyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICAgIC5maWx0ZXItYnJhbmRzLW9wdHMge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgfVxuICAuaWNvbi1maWx0ZXItdGl0bGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgaSB7XG4gICAgICBjb2xvcjokZ3JheTk7XG4gICAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5pY29uLWZpbHRlci1pdGVtcyB7XG4gICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICBsaSB7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgIH1cbiAgICBpbnB1dCB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICAgIGxhYmVsIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgfVxuICB9XG5cbiAgLy8gd2hlZWxzLCB3aGVlbCBicmFuZHMsIHRpcmVzIHtcbiAgLndoZWVscy1zbGlkZS1maWx0ZXIsLnRpcmVzLXNsaWRlLWZpbHRlciB7XG4gICAgLnByb2R1Y3QtZmlsdGVycyB7XG4gICAgICBkaXNwbGF5OmJsb2NrIWltcG9ydGFudDtcbiAgICB9XG4gICAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MnJlbTtcbiAgICAgIGg0IHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgIGZvbnQtc2l6ZTowLjlyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFyZW07XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICAmLmZhLW1pbnVzLCYuZmEtcGx1cyB7XG4gICAgICAgICAgY29sb3I6JGdyYXk4O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmlsdGVyLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmZpbHRlci1idXR0b24ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIGNvbG9yOiRncmF5NDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maWx0ZXItaXRlbXMge1xuICAgICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZpbHRlci1icmFuZHMgLmZpbHRlci1pdGVtcyB7XG4gICAgICAgIC8vZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgXG4gICAgICAucHJvZHVjdC1maWx0ZXJzIHtcbiAgICAgICAgLnByb2R1Y3QtZmlsdGVyIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206MS41cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBhY3RpdmUgXG4gICAgICAuZmlsdGVyLWFjdGl2ZSB7XG4gICAgICAgIC8vcGFkZGluZzoxcmVtIDJyZW07XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgcGFkZGluZzouMjVyZW0gLjVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgZm9udC1zaXplOmluaGVyaXQ7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuZml0bWVudFNldCB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDoxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLWNsZWFyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOjEuNXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIGNvbG9yOiAkZ3JheTQ7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5maWx0ZXItYWN0aXZlLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maWx0ZXItYnJhbmRzIHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1heC13aWR0aDoyNjBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgfVxuXG5cbiAgLy8gZ2FsbGVyeVxuICAuc2xpZGUtZmlsdGVyLWdhbGxlcnkge1xuICAgIG1hcmdpbi10b3A6MnJlbTtcbiAgfVxufVxuXG4uaW50IHtcbiAgLnBhZ2UtY29udGVudCB7XG4gICAgPiBkaXY6Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1vYmlsZS1vbmx5LXNsaWRlLWZpbHRlci1zZWFyY2gge1xuICAgID4gLnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHBhZGRpbmc6MXJlbSAuNXJlbTtcbiAgICAgICYuZml0bWVudC1vcGVuIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgICAgJjpub3QoLnNlYXJjaC1ieS12ZWhpY2xlKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6c3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICAgIC5idXR0b24tdGV4dCB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAubGlzdGluZy1zZWFyY2gtYmFyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSBkb3duKSB7XG4gICAgICA+IC5jb2x1bW4ge1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjd2hlZWxzLndoZWVscy1zZWFyY2hlZC1ieS12ZWhpY2xlIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICAucGFnZS10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgaDEge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOjEyMDBweCl7XG4gICAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdpbmF0aW9uIHtcbiAgICAuY3VycmVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxufSIsIiN3aGVlbC5kZXRhaWwtYnktdmVoaWNsZSB7XG4gIC8vIHZvdiBjYWxsXG4gIC52b3YtY2FsbCB7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgbGV0dGVyLXNwYWNpbmc6MDtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6MS4xMjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLypcbiAgICAuZml0bWVudC1idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBib3R0b206LTMwMHB4O1xuICAgICAgei1pbmRleDoxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgYm90dG9tOi00MDBweDtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICAgIGJvcmRlcjoxcHggc29saWQgJGJsYWNrO1xuICAgICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSovXG4gIH1cbiAgLmN0YSB7XG4gICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICBtYXJnaW4tdG9wOjJyZW07XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGJsYWNrO1xuICB9XG59XG5cbi53aGl0ZS1wb3B1cCB7XG4gIC8vIGZpdG1lbnQgY2hlY2tcbiAgLmZpdG1lbnRDaGVja19CdXR0b24ge1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICB9XG59IiwiLnZlaGljbGUtZml0bWVudCB7XG4gIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgLmZpdG1lbnQtc2VsZWN0ZWQge1xuICAgIGJvcmRlci1yYWRpdXM6NXB4O1xuICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlFRDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RjY7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIG1hcmdpbi1ib3R0b206MS4yNXJlbTtcbiAgICAudmVoaWNsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgIH1cbiAgICAmLW90aGVyLXNwZWNzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgJi1za3Uge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIHBhZGRpbmc6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICB9XG4gIGkge1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIGNvbG9yOiRncmVlbjtcbiAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gIH1cbiAgcCxhIHtcbiAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgfVxuICBwIHtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gIH1cbiAgLnJlbW92ZS1maXRtZW50IHtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgIGNvbG9yOiRibGFjaztcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICAudm92LWxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgZGlzcGxheTpibG9jaztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nOi43NXJlbTtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gIH1cbn0iLCIjc2VlLW9uLXZlaGljbGUtZGV0YWlsIHtcbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsaW5lLWhlaWdodDoxLjI1O1xuICB9XG4gIGg2IHtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIGZvbnQtc2l6ZTogLjg3NXJlbTtcbiAgfVxuICAuZXJyb3Ige1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgbGVmdDogNTAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICB6LWluZGV4OiAyO1xuICB9XG4gIC5uby1maXRtZW50IHtcbiAgICBtaW4taGVpZ2h0OiA2cmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAuODtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgfVxuICAgIC5lcnJvciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgLmxvYWRpbmdJbWFnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5ob3Zlci1pdGVtOmhvdmVyIHtcbiAgICBidXR0b24ge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgLjNzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMC4wNzU7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyBlYXNlLWluLW91dDtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuICAgIH1cbiAgICAmOjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogLjc7XG4gICAgfVxuICB9XG4gIGJ1dHRvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNDAlO1xuICAgIGxlZnQ6IDA7XG4gICAgcGFkZGluZzogMXJlbTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBvcGFjaXR5OiAwO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICB9XG4gIH1cbiAgJi1vdmVybGF5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDUwcHg7XG4gICAgLmZhLXNwaW5uZXIge1xuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG59XG4gIC8vIHBvcHVwXG4ub3Blbi1zZWUtb24tdmVoaWNsZS1wb3B1cCB7XG4gIGZvbnQtd2VpZ2h0OjUwMDtcbiAgY29sb3I6JGJsYWNrO1xuICBmb250LXNpemU6LjgyNXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAmOmhvdmVyIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgfVxuICAmLWNvbnRhaW5lciB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgfVxufVxuI3NlZS1vbi12ZWhpY2xlLXBvcHVwIHtcbiAgcGFkZGluZzowO1xuICBtYXgtd2lkdGg6MTIwMHB4O1xuICBmb250LXNpemU6LjgyNXJlbTtcbiAgLnZlaGljbGUtcG9wdXAge1xuICAgICYtaW1hZ2Uge1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxuICAgICYtaW5mb3JtYXRpb24ge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgcGFkZGluZy10b3A6MDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAgICAgcGFkZGluZzowIC4yNXJlbSAuNXJlbTtcbiAgICAgIH1cbiAgICAgID4gZGl2IHtcbiAgICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOjhweDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBtYXJnaW46MCAuMzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgICBsYWJlbCwuaW5mby1kaXNwbGF5IHtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICAgIC5pbmZvLWRpc3BsYXkge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLnBhaW50LWluZm8tY29udGFpbmVyIHtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjokc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgICNpY20tY2hhbmdlLWNvbG9yIHtcbiAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6JHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi53aGVlbC1pbmZvLWNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDo1MHB4O1xuICAgICAgICAgIH0gICAgXG4gICAgICAgICAgLnJpZ2h0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgICAgd2lkdGg6ODAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0gICAgICBcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLndoZWVsLWluZm8ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgLnRodW1iIHtcbiAgICAgICAgICB3aWR0aDoxMDBweDtcbiAgICAgICAgICBoZWlnaHQ6MTAwcHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjFyZW07XG4gICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjp0b3AgcmlnaHQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOjE2MCU7XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsIHtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICAgICAgLnNwZWNzIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6LjI1cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0Oi4yNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgLnZlaGljbGUtaW5mbyB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubWZwLWNsb3NlIHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgfVxufVxuXG5cblxuXG4jc2VlLW9uLXZlaGljbGUtcG9wdXAge1xuICBib3JkZXI6MDtcbiAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDB2bWF4IHJnYmEoMCwgMCwgMCwgLjcpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RDE7XG4gICY6LWludGVybmFsLWRpYWxvZy1pbi10b3AtbGF5ZXI6OmJhY2tkcm9wLCY6OmJhY2tkcm9wIHtcbiAgICAvL2JhY2tncm91bmQ6cmdiYSgwLDAsMCwwLjcpO1xuICB9XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAvL3BhZGRpbmc6MnJlbTtcbiAgICAmW29wZW5dIHtcbiAgICAgIGhlaWdodDoxMDB2aDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIH1cbiAgfVxuICAjd2hlZWwtc3BlYy1wcmljZSwuYnV5LW5vdyB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gICN2ZWhpY2xlLWRlc2NyaXB0aW9uLCAjdmVoaWNsZS1kZXNjcmlwdGlvbi1tb2JpbGUge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICBmb250LXNpemU6MS41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgI3ZlaGljbGUtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZToycmVtO1xuICB9XG4gICN2ZWhpY2xlLWRlc2NyaXB0aW9uLW1vYmlsZSB7XG4gICAgI3Zvdi1zdWJtb2RlbCB7XG4gICAgICBmb250LXNpemU6MS4zMHJlbTtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgfVxuICB9XG4gIC52ZWhpY2xlLXBvcHVwLWNvbG9yLWJ1dHRvbiB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLndoZWVsLWluZm8ge1xuICAgIHBhZGRpbmc6MDtcbiAgICBtYXJnaW46MDtcbiAgICBib3JkZXI6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRDtcbiAgICBib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIC53aGVlbC10aHVtYm5haWwge1xuICAgICAgbWFyZ2luLXJpZ2h0Oi43NXJlbTtcbiAgICB9XG4gIH1cbiAgLnNwZWNzLWluZm8sLnNwZWNzIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbiAgLnNwZWNzLWluZm8ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgd2lkdGg6MTAwJTtcbiAgfVxuICAjd2hlZWwtYnJhbmQge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICB9XG4gIC5zcGVjcyB7XG4gICAgJi1jb250YWluZXIge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAgIH1cbiAgICAgID4gLnNwZWNzOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRpdmlkZXIge1xuICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIGxvYWRpbmcgXG4gICNpY20tdm92LWxvYWRpbmcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgLjUpO1xuICAgIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgfVxuICAvLyBwcmV2IG5leHRcbiAgLnZlaGljbGUtcG9wdXAtaW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOi41cmVtO1xuICAgIGZsZXgtZ3JvdzoxO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBwYWRkaW5nOi43NXJlbSAwLjcxMjVyZW0gMC43NXJlbTtcbiAgICB9XG4gICAgLnZvdi12ZWhpY2xlLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6OHB4O1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBpbWcge1xuICAgICAgICBwYWRkaW5nOjIuMjVyZW0gMDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgICAgICAgd2lkdGg6MTEwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52b3YtYW5nbGUtYXJyb3cge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6NTAlO1xuICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgcGFkZGluZzowO1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogLjk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHRvcDo0OCU7XG4gICAgfVxuICAgIGkge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgaSB7XG4gICAgICAgIGNvbG9yOiRncmF5QztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI3Zvdi1wcmV2aW91cy1hbmdsZSB7XG4gICAgbGVmdDowO1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWxlZnQ6MnJlbTtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICB9XG4gIH1cbiAgI3Zvdi1uZXh0LWFuZ2xlIHtcbiAgICByaWdodDowO1xuICAgIHBhZGRpbmc6MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLXJpZ2h0OjJyZW07XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICB9XG4gIFxufVxuXG5cblxuLy8gc3dhdGNoXG4jc3dhdGNoZXMtZGlhbG9nIHtcbiAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gIGJvcmRlci1yYWRpdXM6NXB4O1xuICBib3gtc2hhZG93OiAwIDAgMCAxMDB2bWF4IHJnYmEoMCwgMCwgMCwgLjUpO1xuICBoNCB7XG4gICAgZm9udC1zaXplOjFyZW07XG4gIH1cbiAgLmljbS12b3Ytc3dhdGNoLWdyaWQge1xuICAgIGRpc3BsYXk6IGdyaWQ7XG4gICAgZ2FwOiAxMHB4O1xuICAgIGdyaWQtdGVtcGxhdGUtY29sdW1uczogMWZyIDFmcjtcbiAgfVxuICAuaWNtLXZvdi1zd2F0Y2gtZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTouODVyZW07XG4gIH1cbn0iLCIvLy8vLyBsaXN0aW5nIGZpbHRlcnMgLyBzb3J0IC8vLy8vLy8vXG4jd2hlZWxzIC53aGVlbC1maWx0ZXJzLCAjd2hlZWwtYnJhbmRzIC53aGVlbC1maWx0ZXJzIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICB9XG5cbiAgLnRpdGxlIHtcbiAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheUE7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICB9XG4gIC5hY2NvcmRpb24tY29udGFpbmVyIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gIH1cbiAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICB9XG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5QTtcbiAgICB9XG4gIH1cblxuICAuZml0bWVudC1zZWFyY2gge1xuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6MTBweDtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC53aGVlbC1maWx0ZXIge1xuICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgLy9ib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRncmF5NjtcbiAgICBoNSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIG1hcmdpbjowO1xuICAgIH1cbiAgICBsaSB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICBmb250LXNpemU6Ljg3NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjA7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206Ljc1cmVtO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBsaW5lLWhlaWdodDowO1xuICAgIH1cbiAgICAmLmZpbHRlci1hY3RpdmUge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAgIHVsIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICAgIHBhZGRpbmc6LjI1cmVtIC41cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOjEwcHg7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk2O1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmI2NsZWFyIHtcbiAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6LjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtc2VsZWN0ZWQge1xuICAgICAgICBwYWRkaW5nOi41cmVtO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRyZWQ7XG4gICAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmlsdGVyLWFjdGl2ZS1jbGVhciB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QTtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6JGdyYXk2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVyLWJ1dHRvbiB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OjgwMDtcbiAgICB9XG4gICAgJi1wYXJ0LW51bWJlciB7XG4gICAgICBtYXgtd2lkdGg6ODAlO1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk2O1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmx1ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1zaG9wYnkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRncmF5NjsgIFxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgbWF4LXdpZHRoOjgwJTtcbiAgICAgIH1cbiAgICAgIGxhYmVsLHNlbGVjdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaDUge1xuICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOjFweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBtb2JpbGUgXG4jd2hlZWxzLCAjd2hlZWwtYnJhbmRzLCAjZ2FsbGVyeSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgLmZpbHRlciB7XG4gICAgICAmLXNlbGVjdGlvbiB7XG4gICAgICAgIGJvcmRlcjowO1xuICAgICAgICBwYWRkaW5nOi43NXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlBO1xuICAgIH1cbiAgfVxuICAuYWNjb3JkaW9uIHtcbiAgICAmLWl0ZW0ge1xuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICBhIHtcbiAgICAgICAgICAvL2NvbG9yOiRibHVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgYm9yZGVyOjA7XG4gICAgfVxuICB9XG59XG5cbiN3aGVlbHMgLndoZWVsLWZpbHRlciwgI3doZWVsLWJyYW5kcyAud2hlZWwtZmlsdGVyIHtcbiAgI3doZWVsLWZpbHRlci1zZWFyY2gge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5icmFuZC1uYW1lIHtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjFyZW07XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBtYXJnaW46MCAxcmVtO1xuICAgIH1cblxuICAgIC5hY2NvcmRpb24tZmlsdGVyX19oZWFkZXIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVuc2V0O1xuICAgIH1cbiAgfVxuXG5cblxuXG5cbiAgLmFjY29yZGlvbi1maWx0ZXIge1xuICAgICZfX2NvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJl9fY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmX19kcm9wZG93biB7XG4gICAgICBmbGV4LWdyb3c6IDA7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOjAgMXJlbTtcbiAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgIH1cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OjEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUQ7XG4gICAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgcGFkZGluZzouNzVyZW0gMS43NXJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc29ydC13aGVlbHMge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG4vLy8vLyBzaWRlIGZpbHRlcnMgLSBmaXRtZW50IC8vLy8vLy9cbiN3aGVlbHMsICN3aGVlbC1icmFuZHMsICNnYWxsZXJ5IHtcbiAgLmZpbHRlciB7XG4gICAgJi1maXRtZW50IHtcbiAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICB9XG4gICAgLnZlaGljbGUtdGl0bGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGhlaWdodDo1NHB4O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBoNCB7XG4gICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnZlaGljbGUtc2VsZWN0IHtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXlDO1xuICAgICAgYm9yZGVyLXRvcDowO1xuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiRncmF5QztcbiAgICAgIH1cbiAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gZWxpdGVcbiAgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3Qge1xuICAgIC52cy0tdW5zZWFyY2hhYmxlIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUU2O1xuICAgICAgaW5wdXQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgIH1cbiAgICAgIC52c19fZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgLnZzX19zZWFyY2gge1xuICAgICAgICAgIC8vZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnZzLS1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFNjtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFNjtcbiAgICAgICAgfVxuICAgICAgICAudnNfX2Ryb3Bkb3duLXRvZ2dsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU2O1xuICAgICAgICAgIGJvcmRlcjowO1xuICAgICAgICB9XG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudnNfX3NlbGVjdGVkIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBJY29uIEZpbHRlcnNcbi5wcm9kdWN0LWZpbHRlcnMge1xuICAuaWNvbi1wcm9kdWN0LWZpbHRlciB7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIHBhZGRpbmc6MS4yNXJlbSAxcmVtO1xuICB9XG4gIC5maWx0ZXItYnJhbmRzLW9wdHMge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgfVxufVxuLmljb24tZmlsdGVyLXRpdGxlIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBoNCB7XG4gICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgZm9udC1zaXplOi44cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICBjb2xvcjokYmxhY2s7XG4gIH1cbn1cblxuLmljb24tZmlsdGVyLWl0ZW1zIHtcbiAgcGFkZGluZy10b3A6MXJlbTtcbiAgbGkge1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBkaXNwbGF5OmZsZXg7XG4gIH1cbiAgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgfVxuICBsYWJlbCB7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgfVxufVxuXG4vLy8vLyBzaWRlIGZpbHRlcnMgLy8vLy8vL1xuI3doZWVscywgI3doZWVsLWJyYW5kcywgI2dhbGxlcnkge1xuICAuZmlsdGVyIHtcbiAgICBwYWRkaW5nLWxlZnQ6MnJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjJyZW07XG4gICAgaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4xcmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICBpIHtcbiAgICAgICYuZmEtbWludXMsJi5mYS1wbHVzIHtcbiAgICAgICAgY29sb3I6JGdyYXk4O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVyLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgICAuZmlsdGVyLWJ1dHRvbiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIGNvbG9yOiRncmF5NDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbHRlci1pdGVtcyB7XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgICAgZGlzcGxheTpub25lO1xuICAgICAgbGkge1xuICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgIH1cbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmlsdGVyLWJyYW5kcyAuZmlsdGVyLWl0ZW1zIHtcbiAgICAgIC8vZGlzcGxheTpibG9jaztcbiAgICB9XG5cbiAgICAucHJvZHVjdC1maWx0ZXJzIHtcbiAgICAgIC5wcm9kdWN0LWZpbHRlciB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxLjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC8vIGFjdGl2ZSBcbiAgICAuZmlsdGVyLWFjdGl2ZSB7XG4gICAgICAvL3BhZGRpbmc6MXJlbSAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlDO1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgcGFkZGluZzouMjVyZW0gLjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICBmb250LXNpemU6aW5oZXJpdDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5maXRtZW50U2V0IHtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5OTtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OjEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtY2xlYXIge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOjEuNXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIGNvbG9yOiAkZ3JheTQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5maWx0ZXItYWN0aXZlLXRpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICBoNCB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpbHRlci1icmFuZHMge1xuICAgICAgbGFiZWwge1xuICAgICAgICBtYXgtd2lkdGg6MjYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyB3aGVlbCBpbmZvcm1hdGlvbiBhbmQgcHJpY2luZ1xuI3doZWVsIC53aGVlbC1pbmZvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIHtcbiAgLypwYWRkaW5nOjFyZW07XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMjVweCAkZ3JheUM7XG4gIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICBwYWRkaW5nOjIuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjIuNXJlbTtcbiAgfSovXG4gIC8vIGluZm9ybWF0aW9uXG4gIGgxLGg0IHtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOi4ycmVtO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgIGxpbmUtaGVpZ2h0OjEuMTtcbiAgfVxuXG4gIC5ib3R0b20sLnByaWNpbmctc3RvY2ssLnByaWNpbmctcHJpY2UsLnByaWNpbmctbWF0Y2gge1xuICAgIGZvbnQtZmFtaWx5OiRkZXRhaWwtZm9udC1mYW1pbHk7XG4gIH1cblxuICAucHJpY2luZy1zcGVjcyB7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBmb250LXNpemU6Ljg1cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICB9XG4gICAgLnRvcCB7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIC5mcm9udCwucmVhciB7XG4gICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OicsJztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpsYXN0LWNoaWxkOmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ib3R0b20ge1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICAgIC5wcmljaW5nLWJyYW5kIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgICAucHJpY2luZy1zdGFydGluZyB7XG4gICAgICAgIC5jYWxsLWZvciB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNhbGUtaXRlbSB7XG4gICAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYubm9uLXNrdXBhZ2Uge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcmljaW5nLXN0b2NrIHtcbiAgICAgIGNvbG9yOiRncmVlbjtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgfVxuICB9XG5cbiAgLnByaWNpbmctcHJpY2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlFRjtcbiAgICBwYWRkaW5nOjFyZW07XG4gICAgYm9yZGVyLXJhZGl1czouNXJlbTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6MS41cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgIC5zYWxlLWl0ZW0ge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5zdWJ0aXRsZSB7XG4gICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByaWNlLW9yaWdpbmFsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgIH1cbiAgICAucHJpY2Utc2FsZSB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAvLyBjdGFcbiAgLnByaWNpbmctbWF0Y2gge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC1zaXplOi45NXJlbTtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gIH1cblxuICAucHJpY2luZy12ZWhpY2xlIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07ICBcbiAgICB9XG4gICAgYnV0dG9uIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkZGV0YWlsLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC1zaXplOi45NXJlbTtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cbiAgfVxuXG4gIC5jdGEge1xuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIGJvcmRlci1yYWRpdXM6LjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOjByZW07XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZzoxLjZyZW0gLjVyZW07XG4gICAgICBmb250LXNpemU6MS4wNXJlbTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgIH1cbiAgICAgICYuZ3JheSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk5O1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5QztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gICAgJi1idXR0b24ge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICAmLWxpbmsge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206MS41cmVtO1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYub3JhbmdlIHtcbiAgICAgICAgLmljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIFxuICAgICAgYSB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiRkZXRhaWwtZm9udC1mYW1pbHk7XG4gICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuXG4gICAgICAuaWNvbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDoxLjVyZW07XG4gICAgICAgIHdpZHRoOjUwcHg7XG4gICAgICAgIGhlaWdodDo1MHB4O1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6NTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bnNldDtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LXNpemU6Mi41cmVtO1xuICAgICAgfVxuICAgICAgLnRleHQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYnV5LW9wdGlvbnMge1xuICAgIGZvbnQtZmFtaWx5OiRkZXRhaWwtZm9udC1mYW1pbHk7XG4gICAgcGFkZGluZzoxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlENDtcbiAgICBib3JkZXItcmFkaXVzOi41cmVtO1xuICAgIGxhYmVsIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB9XG4gICAgLm1pc3Npbmcge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsNTEsNTEsLjUpO1xuICAgIH1cbiAgfVxufVxuXG5cblxuXG5cblxuXG5cblxuI3doZWVsIC53aGVlbC1pbmZvLCAjd2hlZWwgLmFjY2Vzc29yeS1pbmZvIHtcbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6MjAwcHg7XG4gIH1cbiAgLnNlcmllcy1sb2dvIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGltZyB7XG4gICAgICAgIG1heC13aWR0aDoxODBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndoZWVsLW5hbWUge1xuICAgIGZvbnQtc2l6ZToyLjI1cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmctYm90dG9tOi41cmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctYm90dG9tOjA7XG4gICAgICBmb250LXNpemU6MnJlbTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgfVxuICB9XG59XG5cbiNzZWUtb24tdmVoaWNsZS1kZXRhaWwge1xuICBoNSB7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIGxldHRlci1zcGFjaW5nOi0xcHg7XG4gICAgbGluZS1oZWlnaHQ6MTtcbiAgICBjb2xvcjokYmxhY2s7XG4gIH1cbn1cblxuXG4vLyBzcGVjIGluZm9ybWF0aW9uXG4ud2hlZWwtZGV0YWlsLXNpemVzIHtcbiAgLnRpdGxlIHtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gIH1cbn1cblxuXG4vLyBiYWRnZSBpbmZvcm1hdGlvblxuLndoZWVsLWJhZGdlcyB7XG4gIGRpc3BsYXk6ZmxleDtcbiAgPiBkaXYge1xuICAgIG1hcmdpbi1yaWdodDouNXJlbTtcbiAgfVxuICBpbWcge1xuICAgIG1heC13aWR0aDoxMDBweDtcbiAgfVxufVxuXG5cbi8vIGZpbmlzaCBpbmZvcm1hdGlvblxuLndoZWVsLWZpbmlzaGVzIHtcbiAgXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOjE1MHB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgJjpob3ZlciB7XG4gICAgICBvcGFjaXR5Oi41O1xuICAgIH1cbiAgfVxuICAudGl0bGUge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIGNvbG9yOiRncmF5MztcbiAgICBtYXJnaW4tYm90dG9tOjEuMTVyZW07XG4gIH1cbiAgLmRldGFpbC10aHVtYiB7XG4gICAgZGlzcGxheTpmbGV4O1xuICB9XG4gIC53aGVlbC1maW5pc2gge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICB9XG59XG5cblxuLy8gdmlkZW9zIGluZm9ybWF0aW9uIFxuLndoZWVsLXZpZGVvcyB7XG4gICYuZmluaXNoZXMtYm9yZGVyIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGdyYXlBO1xuICAgIG1hcmdpbi10b3A6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS41cmVtO1xuICB9XG4gIC50aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAkZ3JheTM7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4xNXJlbTtcbiAgfVxuICAud2hlZWwtdmlkZW8ge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICA+IGRpdiB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgbWF4LXdpZHRoOjUwJTtcbiAgICB9XG4gICAgYSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUE7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAucGxheS1pY29uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsMCk7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBsYXktaWNvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6MDtcbiAgICAgIHJpZ2h0OjA7XG4gICAgICBib3R0b206MDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnJnYmEoMCwwLDAsLjUpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZSBcbi5wcmljaW5nLWluZm9ybWF0aW9uIHtcbiAgcGFkZGluZzowIC42MjVyZW07XG59IiwiI3doZWVsIHtcbiAgLnNwZWMtaW5mb3JtYXRpb24tY29udGFpbmVyIHtcbiAgICAuc3BlYy1pbmZvcm1hdGlvbiB7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTk7XG4gICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgZm9udC1mYW1pbHk6JGRldGFpbC1mb250LWZhbWlseTtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4wNXJlbTtcbiAgICAgICYtdGl0bGUgeyBcbiAgICAgICAgY29sb3I6JGdyYXkzO1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xcmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIH1cbiAgICAgICYtaXRlbSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIGNvbG9yOiRncmF5MztcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgJjpudGgtY2hpbGQob2RkKSB7XG4gICAgICAgICAgPiBkaXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgICBtYXJnaW46MCAycHg7XG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiI3doZWVsIHtcbiAgLndoZWVsLWRldGFpbC1zdGFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vbWFyZ2luLWJvdHRvbTozcmVtO1xuICB9XG4gIFxuXG5cblxuICAuc3RhZ2UtY29udGFpbmVyIHsgXG4gICAgPiBkaXYge1xuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6MzUlO1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOjgwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICB3aWR0aDo4NSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFsdC1pbWFnZXMge1xuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6NHJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOHJlbTtcbiAgICAgIH1cbiAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgfVxuICAgICAgLnNsaWNrLXNsaWRlLC5zbGljay10cmFjayB7XG4gICAgICAgIHdpZHRoOjEwMCUhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLnNsaWNrLXNsaWRlIHsgXG4gICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICBib3JkZXItY29sb3I6JGdyYXlDO1xuICAgICAgICBib3JkZXItcmFkaXVzOjVweDtcbiAgICAgICAgd2lkdGg6MTE1cHghaW1wb3J0YW50O1xuICAgICAgICAmLnNsaWNrLWN1cnJlbnQge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjokZ3JheTk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zbGljay1hY3RpdmU6YWZ0ZXIge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICB9XG4gICAgICAvKi5zbGljay10cmFjayB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOjEwMCUhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9Ki9cbiAgICB9XG4gIH1cbn1cblxuXG5cbi5tYWluLWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgbWFyZ2luLXJpZ2h0OjA7XG4gIGltZyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmFsdC1pbWFnZXMge1xuICBcbiAgbWFyZ2luOjAgYXV0byAycmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICAvL21heC13aWR0aDo2MCU7XG4gIH1cbiAgLnNsaWNrLXRyYWNrIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxuICAmLS1yZXRhaWxlciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gdXApIHtcbiAgICAgIC5zbGljay10cmFjayB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIC8qbWFyZ2luLXRvcDogM3JlbTsqL1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgLnNsaWNrLWRvdHMge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICB9XG4gIC5zbGljay1zbGlkZSB7XG4gICAgJjpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOjEwMHB4O1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgfVxuICB9XG4gIGEge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBwYWRkaW5nOiAuN3JlbTtcbiAgfVxuICBpbWcge1xuICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTouNTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wOCk7XG4gICAgfVxuICB9XG4gIC5zbGljay1hY3RpdmUge1xuICAgICY6YWZ0ZXIge1xuICAgICAgd2lkdGg6MDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICBoZWlnaHQ6NXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICB9XG4gIH1cbiAgLnNsaWNrLWN1cnJlbnQge1xuICAgICY6YWZ0ZXIge1xuICAgICAgd2lkdGg6ODAlO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICB9XG4gIH1cbn1cblxuLy8gbWVkaWEgYnV0dG9uc1xuI3doZWVsIHtcbiAgLmRldGFpbHMtbWVkaWEge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6MDtcbiAgICByaWdodDoycmVtO1xuICB9XG59XG5cblxuXG5cbi8vIHpvb20gb3ZlciBpbWFnZSBmdW5jdGlvblxuLnpvb20ge1xuICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OicnO1xuICAgIGRpc3BsYXk6YmxvY2s7IFxuICAgIHdpZHRoOjMzcHg7IFxuICAgIGhlaWdodDozM3B4OyBcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTsgXG4gICAgdG9wOjA7XG4gICAgcmlnaHQ6MDtcbiAgICAvL2JhY2tncm91bmQ6dXJsKGljb24ucG5nKTtcbiAgfVxuICBpbWcge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAmOjpzZWxlY3Rpb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgfVxuICB9XG59XG5cblxuXG4vKlxuLmVhc3l6b29tIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgJ1Nocmluay13cmFwJyB0aGUgZWxlbWVudCBcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gICpkaXNwbGF5OiBpbmxpbmU7XG4gICp6b29tOiAxO1xufVxuXG4uZWFzeXpvb20gaW1nIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLmVhc3l6b29tLmlzLWxvYWRpbmcgaW1nIHtcbiAgY3Vyc29yOiBwcm9ncmVzcztcbn1cblxuLmVhc3l6b29tLmlzLXJlYWR5IGltZyB7XG4gIGN1cnNvcjogY3Jvc3NoYWlyO1xufVxuXG4uZWFzeXpvb20uaXMtZXJyb3IgaW1nIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmVhc3l6b29tLW5vdGljZSB7XG4gIGxpbmUtaGVpZ2h0OiAyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTUwO1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB3aWR0aDogMTBlbTtcbiAgbWFyZ2luOiAtMWVtIDAgMCAtNWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4ICM4ODg7XG59XG5cbi5lYXN5em9vbS1mbHlvdXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLmVhc3l6b29tLWZseW91dCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cblxuXG4uZWFzeXpvb20tLW92ZXJsYXkgLmVhc3l6b29tLWZseW91dCB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLmVhc3l6b29tLS1hZGphY2VudCAuZWFzeXpvb20tZmx5b3V0IHtcbiAgdG9wOiAtMTBweDtcbiAgbGVmdDogNzUlO1xuICB3aWR0aDogMzUwcHg7XG4gIGhlaWdodDogMzUwcHg7XG4gIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICBib3JkZXI6IDNweCBzb2xpZCAjMzMzO1xufVxuXG5cblxuXG5cblxuXG5cblxuXG4qLyIsIiN3aGVlbHMuc2VhcmNoLWJ5LXZlaGljbGUsICN3aGVlbC1icmFuZHMuc2VhcmNoLWJ5LXZlaGljbGUsICNnYWxsZXJ5LnNlYXJjaC1ieS12ZWhpY2xlIHtcbiAgLy8gaGVhZGVyXG4gIGgxIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgfVxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6Mi4yNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOi4ycmVtO1xuICAgIH1cbiAgfVxuICAuY29udGVudC1oZWFkZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTp1cmwoJy9pbWFnZXMvYmFubmVycy93aGVlbHMtYmFubmVyLmpwZycpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgaGVpZ2h0OjI0MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5wYWdlLWNvbnRlbnQucGFkZGVkLmV4dHJhIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nLXRvcDowO1xuICAgIH1cbiAgfVxuXG5cbiAgLmxpc3Rpbmctc2VhcmNoLWJhciB7XG4gICAgI3doZWVsLWZpbHRlci1zZWFyY2gge1xuICAgICAgLy9wYWRkaW5nLWxlZnQ6LjI1cmVtO1xuICAgICAgdWwge1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpIHtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOi4zNXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50ICh4bGFyZ2UpIHtcbiAgICAgICAgICAgIC8vZGlzcGxheVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgd2lkdGg6OTZweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6NDBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIHdpZHRoOjQ2cHg7XG4gICAgICBoZWlnaHQ6NTJweDtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDpjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RjQ7XG4gICAgICBjb2xvcjokZ3JheTY7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjQwcHg7XG4gICAgICAgIGhlaWdodDo0MHB4O1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsJi5hY3RpdmUtbGV0dGVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgICAgJi5kaXNhYmxlLWxldHRlciB7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBvcGFjaXR5Oi4yNTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBtb2JpbGVcbiAgICAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCB7XG4gICAgICAucm93ID4gLmNvbHVtbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDouMzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjM1cmVtO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgICBhLGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICBhLGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUVGO1xuICAgICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgIHdpZHRoOjYwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgfVxuICAgICAgYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OjUycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gbGlzdGluZ1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgfVxuXG4gICAgLmhvdmVyLWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOnNjYWxlKDEuMDI1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zYWxlLWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgJHByaW1hcnktY29sb3IgMCwgJHByaW1hcnktY29sb3IgNDAlLCB0cmFuc3BhcmVudCA0MCUsIHRyYW5zcGFyZW50IDEwMCUpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgcGFkZGluZzogMC41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoycmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgICBjb2xvcjokd2hpdGU7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgICBmb250LXNpemU6LjlyZW07XG4gICAgfVxuXG4gICAgLmluZm8ge1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgIH1cblxuICAgIC5pbWFnZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RjQ7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOmZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgICAgLm5ldyB7XG4gICAgICAgIHdpZHRoOjU2cHg7XG4gICAgICAgIGhlaWdodDoyOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6Ljc1cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MjtcbiAgICAgIH1cbiAgICAgIC5icmFuZC1hbmQtbmFtZSB7XG4gICAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4yNTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNwZWNzLC5wcmljZSwuc2hpcHBpbmcge1xuICAgICAgZm9udC1mYW1pbHk6JGRldGFpbC1mb250LWZhbWlseTtcbiAgICB9XG4gICAgLnNwZWNzIHtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgLnNrdSB7XG4gICAgICAgIGNvbG9yOiRncmF5OTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucHJpY2Uge1xuICAgICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIC5zeW1ib2wsLnZhbHVlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgIH1cbiAgICAgIC5zZXQge1xuICAgICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgICAmLm9yaWdpbmFsLXByaWNlIHtcbiAgICAgICAgLnN5bWJvbCwudmFsdWUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgfVxuICAgICAgICAudmFsdWUge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNhbGVzLXByaWNlIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNoaXBwaW5nIHtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBjb2xvcjokZ3JheTk7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6LjA1cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5wYWdpbmF0aW9uLWNvbnRhaW5lciB7XG4gICAgXG4gIH1cbiAgLnBhZ2luYXRpb24ge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QztcbiAgICBtYXJnaW4tYm90dG9tOjNyZW07XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAuY3VycmVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIGZvb3RlclxuICAuZmluYW5jaW5nIHtcbiAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gIH1cblxuICAuYnJhbmQtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTozcmVtO1xuICAgIH1cbiAgICBoNSB7XG4gICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4ycmVtO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OjI7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBtYXJnaW46MDtcbiAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuXG4gIC8vIHNlYXJjaGVkIGJ5IHZlaGljbGVcbiAgJi53aGVlbHMtc2VhcmNoZWQtYnktdmVoaWNsZSB7XG4gICAgaDMsaDQge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6JHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIG1vYmlsZVxuLnN0aWNreS1jb250YWluZXIge1xuICAvLyBjdGFcbiAgLnRvcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgcGFkZGluZzoxcmVtIDEuMjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206MDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgfVxuXG4gIC5saXN0aW5nLXNlYXJjaC1iYXIsLmJyYW5kLWxldHRlci1zZWFyY2gge1xuICAgIGEge1xuICAgICAgd2lkdGg6NDZweDtcbiAgICAgIGhlaWdodDo1MnB4O1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXlGNDtcbiAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgd2lkdGg6NDBweDtcbiAgICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgICAgfVxuICAgICAgJjpob3ZlciwmLmFjdGl2ZS1sZXR0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICB9XG4gICAgICAmLmRpc2FibGUtbGV0dGVyIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIG9wYWNpdHk6LjI1O1xuICAgICAgfVxuICAgIH1cbiAgICAubW9iaWxlLW9ubHktc2xpZGUtZmlsdGVyLXNlYXJjaCB7XG4gICAgICAucm93ID4gLmNvbHVtbiB7XG4gICAgICAgIHBhZGRpbmctbGVmdDouMzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjM1cmVtO1xuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgICAgICBhLGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgICBhLGJ1dHRvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUVGO1xuICAgICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICA+IGRpdiB7XG4gICAgICAgICAgICAgIHdpZHRoOjYwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEsYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgICBidXR0b24ge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBoZWlnaHQ6NTJweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gaGVhZGVyXG4gIC5tYWluLmN0YS1hZGRlZCB7XG4gICAgYm94LXNoYWRvdzpub25lO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRibGFjaztcbiAgfVxuICAuY29udGVudC1oZWFkZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICAgIGJveC1zaGFkb3c6IDBweCA1cHggMTVweCAtNXB4ICRibGFjaztcbiAgICBoMSB7XG4gICAgICBmb250LXNpemU6IDEuMTVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC4wNXJlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuICB9XG59XG5cbi8qXG4vLyBzZXJpZXMgdGl0bGVcbiN3aGVlbHMge1xuICBwYWRkaW5nLXRvcDoycmVtO1xuICAuc2VyaWVzLWFuY2hvciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTIwMHB4O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuICAuc2VyaWVzLWxvZ28ge1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5QTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIG1heC13aWR0aDoyMDBweDtcbiAgICB9XG4gIH1cbiAgLnByb2R1Y3RzLXNlcmllcywgLnByb2R1Y3RzLXNlcmllcyAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWxlZnQ6YXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6YXV0bztcbiAgfVxufVxuXG4vLyB3aGVlbHMgbGlzdGluZ1xuI3doZWVscyB7XG4gIC5wcm9kdWN0cy1saXN0IHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAucHJvZHVjdC1pbmZvcm1hdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBjb2xvcjokZ3JheTM7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICAgIH1cbiAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgfVxuICAgICAgLndoZWVsLXNpemVzIHtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICB9XG4gICAgfVxuICAgICYtbm9uZSB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRml0bWVudFxuI3doZWVscywjd2hlZWwge1xuICAucGFnZS1oZWFkZXIuZml0bWVudC1oZWFkZXIge1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgIHBhZGRpbmctdG9wOjJyZW07XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBmb250LXNpemU6MS44NXJlbTtcbiAgICAgIGZvbnQtc2l6ZTo3MDA7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgICAuZml0bWVudC1iYXItY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5maXRtZW50LWJhciB7XG4gICAgICBwYWRkaW5nLWxlZnQ6LjYyNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6LjYyNXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6LjkzNzVyZW07XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6LjkzNzVyZW07XG4gICAgICB9XG4gICAgICAmLnJpZ2h0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgbWF4LXdpZHRoOjMwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maXRtZW50LWhlYWRlci1pbmZvIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnZlaGljbGUtc2l6ZSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjM1cmVtO1xuICAgICAgICBmb250LXdlaWdodDoxMDA7XG4gICAgICB9XG4gICAgfVxuICAgIC52ZWhpY2xlLWRpc3BsYXkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgJGdyYXlBO1xuICAgICAgfVxuICAgIH1cbiAgICAudmVoaWNsZS1kaXNwbGF5IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIH1cbiAgICAudmVoaWNsZVVwZGF0ZSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICB9XG4gICAgLmZpdG1lbnQtY2hhbmdlIHtcbiAgICAgIGNvbG9yOiRncmF5NTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgfVxufSovIiwiLnRpcmUtZGV0YWlscyB7XG4gICAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNXJlbTtcbn0iLCIudGlyZS1pbmZvIHtcbiAgICAmX19oZWFkZXIge1xuICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG59IiwiLnRpcmUtY3RhIHtcbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59IiwiLnRpcmUtc3BlY3Mge1xuICBtYXJnaW4tdG9wOiAycmVtO1xuICAmX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgJl9fZGV0YWlscyB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG59XG4iLCIjdGlyZXMge1xuICBoMiwgaDMge1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgaDIge1xuICAgIGNvbG9yOiRncmF5MztcbiAgICBmb250LXNpemU6NS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsZXR0ZXItc3BhY2luZzotNXB4O1xuICB9XG4gIGgzIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICBjb2xvcjokZ3JheTY7XG4gIH1cbiAgYSB7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgXG4gIH1cblxuLy8gZmlsdGVyIHNvcnQgLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC5maWx0ZXItc29ydCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgICAmLXRvcCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICRncmF5NjtcbiAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjIyMHB4O1xuICAgICAgICBoZWlnaHQ6NTRweDtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZGl2aWRlciB7XG4gICAgICBoZWlnaHQ6MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgICAvLyBib3R0b21cbiAgICAmLWJvdHRvbSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgJi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1jb3VudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IFxuICB9XG5cbiAgLnByb2R1Y3QtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgICBwYWRkaW5nLXRvcDowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZzoxcmVtIDA7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgfVxuICAgID4gLmNvbHVtbiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cbiAgICB9XG4gIH1cblxuICAvLyBwcm9kdWN0cyBsaXN0IC8vLy8vLy8vLy8vLy8vL1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICAuY29sdW1uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICAuaG92ZXItaXRlbSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaW5mbyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIH1cbiAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjYWNjZXNzb3JpZXMge1xuICBoMiwgaDMge1xuICAgIGxpbmUtaGVpZ2h0OjE7XG4gIH1cbiAgaDIge1xuICAgIGNvbG9yOiRncmF5MztcbiAgICBmb250LXNpemU6NS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICBsZXR0ZXItc3BhY2luZzotNXB4O1xuICB9XG4gIGgzIHtcbiAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBhIHtcbiAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICBjb2xvcjokZ3JheTY7XG4gIH1cbiAgYSB7XG4gICAgXG4gICAgJjpob3ZlciB7XG4gICAgICBcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgXG4gIH1cblxuLy8gZmlsdGVyIHNvcnQgLy8vLy8vLy8vLy8vLy8vLy8vXG4gIC5maWx0ZXItc29ydCB7XG4gICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIC5yb3cge1xuICAgICAgbWF4LXdpZHRoOjgwcmVtO1xuICAgIH1cbiAgICAmLXRvcCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGU7XG4gICAgICBib3JkZXI6MnB4IHNvbGlkICRncmF5NjtcbiAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgdHJhbnNpdGlvbjphbGwgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjIyMHB4O1xuICAgICAgICBoZWlnaHQ6NTRweDtcbiAgICAgIH1cbiAgICAgIGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZGl2aWRlciB7XG4gICAgICBoZWlnaHQ6MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheUM7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgICAvLyBib3R0b21cbiAgICAmLWJvdHRvbSB7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZUY3O1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBoZWlnaHQ6YXV0bztcbiAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgJi5hY3RpdmUtZmlsdGVyLXNlcmllcyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgICYuYWN0aXZlLWZpbHRlci1jb3VudCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiRncmF5NjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IFxuICB9XG5cbiAgLnByb2R1Y3QtaXRlbSB7XG4gICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIHBhZGRpbmc6MnJlbTtcbiAgICBwYWRkaW5nLXRvcDowO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZzoxcmVtIDA7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgfVxuICAgID4gLmNvbHVtbiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG5cbiAgICB9XG4gIH1cblxuICAvLyBwcm9kdWN0cyBsaXN0IC8vLy8vLy8vLy8vLy8vL1xuICAucHJvZHVjdHMtbGlzdCB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICAuY29sdW1uIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgYSB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMDVyZW07XG4gICAgICAuaG92ZXItaXRlbSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokd2hpdGVGNztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gICAgICAgICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaW5mbyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOi43NXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIH1cbiAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYWNjZXNzb3J5LWltYWdlIHtcbiAgbWF4LXdpZHRoOiA1MDBweDtcbn1cbi5hY2Nlc3NvcnktbmFtZSB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuLmFjY2Vzc29yeS1kZXRhaWxzIHtcbiAgYmFja2dyb3VuZDogI2YxZjFmMTtcbiAgcGFkZGluZzogMXJlbSAxLjVyZW07XG59IiwiLmFjY2Vzc29yeS1jdGEge1xuICAuY3RhLWJ1dHRvbnMge1xuICAgIG1hcmdpbjogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICZfX2J0biB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICB9XG59IiwiLmFjY2Vzc29yeS1iYXItYnRuIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgYm94LXNoYWRvdzogMXB4IDFweCAjOTk5O1xuICAgICY6aG92ZXIge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbn0iLCIjZ2FsbGVyeS1maWx0ZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OmF1dG87XG4gICAgICB9XG4gICAgfVxuICBzZWxlY3Qge1xuICAgIHBhZGRpbmctbGVmdDouNXJlbTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXI7XG4gIH1cbn1cblxuI2dhbGxlcnktaGVhZGVyIHtcbiAgLmFjY29yZGlvbiB7XG4gICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICAgICYtdGl0bGUge1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzouMXJlbTtcbiAgICAgIGZvbnQtc2l6ZTouODVyZW07XG4gICAgfVxuICB9XG59IiwiI2dhbGxlcnkge1xuICAucGFnZS1oZWFkZXIge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxuICAvLyBzbGlkZXIgLSBhcnJvd3NcbiAgLnNsaWNrLWFycm93IHtcbiAgICB6LWluZGV4OjE7XG4gICAgd2lkdGg6NzVweDtcbiAgICBoZWlnaHQ6NzVweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OicnO1xuICAgIH1cbiAgICAmLnNsaWNrLXByZXYge1xuICAgICAgbGVmdDoxNSU7XG4gICAgfVxuICAgICYuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDoxNSU7XG4gICAgfVxuICB9XG4gIC8vIHNsaWRlciAtIGRvdHNcbiAgLnNsaWNrLWRvdHMge1xuICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICBsaW5lLWhlaWdodDoxO1xuICAgIGxpIHtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwcHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgICB3aWR0aDoxMHB4O1xuICAgICAgICBoZWlnaHQ6MTBweDtcbiAgICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2xpY2stYWN0aXZlIHtcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC8vIHNsaWNrIHNsaWRlIFxuICAuc2xpY2stc2xpZGUge1xuICAgIGltZyB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgIH1cbiAgfVxuICAvLyBsaXN0XG4gIC5nYWxsZXJ5LWxpc3Qge1xuICAgIC5waG90bywudmlkZW8ge1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5waG90by1pbWFnZS1jb250YWluZXIge1xuICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxLjEpO1xuICAgICAgICB9XG4gICAgICAgIC5waG90by1pbmZvcm1hdGlvbiB7XG4gICAgICAgICAgdG9wOjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBob3RvLWltYWdlLWNvbnRhaW5lciB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbToxMnJlbTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxNnJlbTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnBob3RvLWluZm9ybWF0aW9uIHtcbiAgICAgIHRleHQtYWxpZ246bGVmdDtcbiAgICAgIGNvbG9yOiR3aGl0ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OjE7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHRvcDoxMDAlO1xuICAgICAgcmlnaHQ6MDtcbiAgICAgIGxlZnQ6MDtcbiAgICAgIGJvdHRvbTowO1xuICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICB0cmFuc2l0aW9uOmFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBiYWNrZ3JvdW5kOnJnYmEoMCwwLDAsLjcpO1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIC52ZWhpY2xlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6ICRoZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6MS4yNXJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOi41cmVtO1xuICAgICAgfVxuICAgICAgLmRpdmlkZXIge1xuICAgICAgICBtYXJnaW4tbGVmdDouMjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDouMjVyZW07XG4gICAgICB9XG4gICAgICAuc3BlY3Mge1xuICAgICAgICBmb250LXNpemU6LjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cdC5ob3Zlci1saXN0IHtcbiAgICAgID4gZGl2IHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAucGhvdG8sIC52aWRlbyB7XG5cbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cblx0XHQudmlkZW86YWZ0ZXIge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdGNvbG9yOiAjZmVmZWZlO1xuXHRcdH1cbiAgICAgIC5nYWxsZXJ5LWl0ZW0tdmVoaWNsZSwgLmdhbGxlcnktaXRlbS13aGVlbCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuICAgICAgLmdhbGxlcnktaXRlbS12ZWhpY2xlIHtcbiAgICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgICAuYmctaW1hZ2Uge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOmNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTo3NSU7XG4gICAgICB9XG4gIH1cbiAgLm5hdmlnYXRpb24ge1xuICAgIHBhZGRpbmc6MnJlbSAwO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZm9udC1zaXplOiAuODVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLjEyNXJlbTtcbiAgICAgIHBhZGRpbmc6MS4yNXJlbSAycmVtO1xuICAgICAgJjpmb2N1cywmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiNnYWxsZXJ5LXZlaGljbGUge1xuICAucGFnZS1oZWFkZXIge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBwYWRkaW5nLXRvcDoxLjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctdG9wOjNyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgIH1cbiAgICBoMSxoMyB7XG4gICAgICBsaW5lLWhlaWdodDoxO1xuICAgIH1cbiAgICBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBmb250LXNpemU6IDEuMDc1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToycmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgfVxuICB9XG4gIC5zbGljay1wcmV2LC5zbGljay1uZXh0IHtcbiAgICB3aWR0aDo1MHB4O1xuICAgIGhlaWdodDo1MHB4O1xuICAgIHotaW5kZXg6MTtcbiAgICBjb2xvcjokZ3JheTM7XG4gICAgZm9udC1zaXplOjNyZW07XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDonJztcbiAgICB9XG4gIH1cbiAgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0Oi02JTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgcmlnaHQ6NXB4O1xuICAgICAgd2lkdGg6MjVweDtcbiAgICAgIGhlaWdodDoyNXB4O1xuICAgIH1cbiAgfVxuICAuc2xpY2stcHJldiB7XG4gICAgbGVmdDotNiU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgIGxlZnQ6NXB4O1xuICAgICAgd2lkdGg6MjVweDtcbiAgICAgIGhlaWdodDoyNXB4O1xuICAgIH1cbiAgfVxuICAuc2xpY2stc2xpZGUge1xuICAgIHBhZGRpbmc6MXB4O1xuICB9XG59XG5cbi5nYWxsZXJ5IHtcbiAgICAmLXRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgICYtbWFpbi1pbWcge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAmLXRodW1icy5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMHJlbTtcbiAgICAgICAgLnNsaWNrLWRvdHMge1xuICAgICAgICAgICAgYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICB9XG4gICAgJi1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbn1cblxuI2dhbGxlcnktdmVoaWNsZSB7XG4gICNnYWxsZXJ5LXRvcCB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICB9XG4gICAgLnNsaWNrLXRyYWNrIHtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgfVxuICB9XG4gICNnYWxsZXJ5LWRldGFpbHMge1xuICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICBwYWRkaW5nOjFyZW07XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDo1NHJlbTtcbiAgICB9XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1heC13aWR0aDo3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRncmF5QztcbiAgICAgIC5jb2x1bW5zIHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjA7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRncmF5QztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxlZnQge1xuICAgIH1cbiAgICAucmlnaHQge1xuICAgICAgcGFkZGluZzoxcmVtIC41cmVtO1xuICAgICAgPiBkaXYge1xuICAgICAgICBcbiAgICAgIH1cbiAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgLndoZWVsLXNpemVzIHtcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206LjVyZW07XG4gICAgICB9XG4gICAgICAud2hlZWwtZGVzY3JpcHRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjEuNXJlbTtcbiAgICAgIH1cbiAgICAgIHAge1xuICAgICAgICBmb250LXNpemU6MS4wNzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4zO1xuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzouMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBcbiAgfVxuICAjZ2FsbGVyeS1zcGVjcyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAubGVmdCB7XG4gICAgICBpbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJpZ2h0IHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LWZhbWlseTokaGVhZGluZy1mb250LWZhbWlseTtcbiAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIjY29udGFjdCwgI3RoYW5rcyB7XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgLmJhY2tncm91bmQtaW1hZ2Uge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDoxMjAwcHgpIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOjE2MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGg0LGg1IHtcbiAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICBsYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuICAub3B0aW9uLXR3byB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG4gIGhyIHtcbiAgICBtYXJnaW46Mi41cmVtIGF1dG87XG4gIH1cbn1cblxuI2NvbnRhY3QgcCxcbiN0aGFua3MgcCxcbiNjb250YWN0IGxpLFxuI3RoYW5rcyBsaSxcbiNnYWxsZXJ5IHAsXG4jZ2FsbGVyeSBsaSB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nLXRvcDogMHB4O1xufVxuXG4jY29udGFjdCBoMyxcbiN0aGFua3MgaDMsXG4jZ2FsbGVyeSBoMyB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG59XG5cblxuI2NvbnRhY3QgcC5yZWQge1xuICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBmb250LXNpemU6IDFyZW07XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuI2Zvcm0tcmlnaHQge1xuICBjb2xvcjokYmxhY2s7XG4gICAgbGkge1xuICAgICAgICBwYWRkaW5nLXRvcDogLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjI1cmVtO1xuICAgIH1cbiAgICAuZmEge1xuICAgICAgICBmb250LXNpemU6IDIuMjVyZW07XG4gICAgfVxuICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgIH1cbiAgICBhZGRyZXNzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIC5zb2NpYWwge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBtYXJnaW4tbGVmdDowO1xuICAgIGkge1xuICAgICAgZm9udC1zaXplOjIuMjVyZW07XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIG1hcmdpbi1yaWdodDoycmVtO1xuICAgIH1cbiAgfVxufVxuXG4jY29udGFjdCB7XG4gIC5sb2NhdGlvbiB7XG4gICAgY29sb3I6JGJsdWU7XG4gICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICB9XG59IiwiI3BhZ2Uge1xuICAucm93IHtcbiAgICBtYXgtd2lkdGg6NzVyZW07XG4gIH1cbiAgaDEge1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICBmb250LXNpemU6MnJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjNyZW07XG4gICAgICBcbiAgICB9XG4gIH1cbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICBoMSB7XG4gICAgICB0ZXh0LWFsaWduOmxlZnQ7XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgXG4gICAgfVxuICAgIC5iYWNrZ3JvdW5kLWltYWdlIHtcbiAgICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogdW5zZXQ7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6Y292ZXI7XG4gICAgfVxuICAgIC5wYWdlLXRpdGxlIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBoZWlnaHQ6MjAwcHg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6MjMwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgID4gLnJvdyB7XG4gICAgICBtYXgtd2lkdGg6NzVyZW07XG4gICAgICBib3JkZXItbGVmdDozcHggc29saWQgJGdyYXlDO1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIG1hcmdpbi1ib3R0b206MHJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgbWFyZ2luLWJvdHRvbToxLjc1cmVtO1xuICAgIH1cbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6MS42MHJlbTtcbiAgICB9XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOjEuMTI1cmVtO1xuICAgIH1cbiAgICBoNCB7XG4gICAgICBmb250LXNpemU6Mi4xNXJlbTtcbiAgICB9XG4gICAgaDUge1xuICAgICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICB9XG5cbiAgICBwLCB1bCB7XG4gICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MS43NXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjFyZW07XG4gICAgICAgIFxuICAgICAgfVxuICAgIH0gXG4gICAgdWwge1xuICAgICAgbWFyZ2luLWxlZnQ6MnJlbTtcbiAgICAgIGxpc3Qtc3R5bGU6IGRpc2M7XG4gICAgfVxuICB9XG59XG4vKlxuLnBhZ2UtaGVhZGVyIHtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgcGFkZGluZzowO1xuICBoMSB7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIG1hcmdpbi1ib3R0b206MDtcbiAgfVxuICBpbWcge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbn1cblxuKi8iLCIubmV3cy1hcnRpY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMXJlbTtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcbiAgICAudGltZXN0YW1wIHtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAjZmVmZWZlO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMzMzO1xuICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDIuNzVyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgfVxuICAgIC5uZXdzLXNpZGViYXIge1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmJmYmZiO1xuICAgICAgICBsaSBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNTA1MDUwO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIiNhYm91dCB7XG4gIGNvbG9yOiRibGFjaztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBmb250LXNpemU6NHJlbTtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgfVxuICAucGFnZS1jb250ZW50IHtcbiAgICAuYWJvdXQtY29udGVudCB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzozcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuYW5pbWF0ZWQge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxufSIsIiNkZWFsZXJzIHtcbiAgaDEge1xuICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgfVxuICBoMiB7XG4gICAgZm9udC1zaXplOjEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjA7XG4gIH1cbiAgaDMge1xuICAgIGZvbnQtZmFtaWx5OiRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIGxhYmVsIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxuICAmLW1pZGRsZSB7XG4gICAgbGluZS1oZWlnaHQ6MS41O1xuICB9XG4gIC5wYWdlLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICAucm93IHtcbiAgICAgIG1heC13aWR0aDo4MHJlbTtcbiAgICB9XG4gICAgLnJvdyAucm93IHtcbiAgICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgICBtYXJnaW4tcmlnaHQ6MDtcbiAgICB9XG4gIH1cbiAgLmlucHV0LWdyb3VwIHtcbiAgICBtYXgtd2lkdGg6MzAwcHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgfVxuICBociB7XG4gICAgbWFyZ2luLXRvcDo0cmVtO1xuICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgfVxuICAubGVmdCB7XG4gICAgYm9yZGVyLXJpZ2h0OjFweCBzb2xpZCAkZ3JheUM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6NHJlbTtcbiAgICB9XG4gIH1cbiAgLnJpZ2h0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgfVxuICB9XG4gICNkZWFsZXJzLW1pZGRsZSB7XG4gICAgaDIge1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBmb250LXNpemU6MS45Mzc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICB9XG4gICAgaDQge1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHk7XG4gICAgfVxuICB9XG59IiwiLy9kZWFsZXIgbG9jYXRvclxuLnZ1ZS1tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlXG59XG5cbi52dWUtbWFwLWNvbnRhaW5lciB7XG4gIGhlaWdodDogMTAwJVxufVxuXG46cm9vdCB7XG4gIC0tdnQtYy13aGl0ZTogI2ZmZmZmZjtcbiAgLS12dC1jLXdoaXRlLXNvZnQ6ICNmOGY4Zjg7XG4gIC0tdnQtYy13aGl0ZS1tdXRlOiAjZjJmMmYyO1xuICAtLXZ0LWMtYmxhY2s6ICMxODE4MTg7XG4gIC0tdnQtYy1ibGFjay1zb2Z0OiAjMjIyMjIyO1xuICAtLXZ0LWMtYmxhY2stbXV0ZTogIzI4MjgyODtcbiAgLS12dC1jLWluZGlnbzogIzJjM2U1MDtcbiAgLS12dC1jLWRpdmlkZXItbGlnaHQtMTogcmdiYSg2MCwgNjAsIDYwLCAuMjkpO1xuICAtLXZ0LWMtZGl2aWRlci1saWdodC0yOiByZ2JhKDYwLCA2MCwgNjAsIC4xMik7XG4gIC0tdnQtYy1kaXZpZGVyLWRhcmstMTogcmdiYSg4NCwgODQsIDg0LCAuNjUpO1xuICAtLXZ0LWMtZGl2aWRlci1kYXJrLTI6IHJnYmEoODQsIDg0LCA4NCwgLjQ4KTtcbiAgLS12dC1jLXRleHQtbGlnaHQtMTogdmFyKC0tdnQtYy1pbmRpZ28pO1xuICAtLXZ0LWMtdGV4dC1saWdodC0yOiByZ2JhKDYwLCA2MCwgNjAsIC42Nik7XG4gIC0tdnQtYy10ZXh0LWRhcmstMTogdmFyKC0tdnQtYy13aGl0ZSk7XG4gIC0tdnQtYy10ZXh0LWRhcmstMjogcmdiYSgyMzUsIDIzNSwgMjM1LCAuNjQpXG59XG5cbjpyb290IHtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS12dC1jLXdoaXRlKTtcbiAgLS1jb2xvci1iYWNrZ3JvdW5kLXNvZnQ6IHZhcigtLXZ0LWMtd2hpdGUtc29mdCk7XG4gIC0tY29sb3ItYmFja2dyb3VuZC1tdXRlOiB2YXIoLS12dC1jLXdoaXRlLW11dGUpO1xuICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWxpZ2h0LTIpO1xuICAtLWNvbG9yLWJvcmRlci1ob3ZlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWxpZ2h0LTEpO1xuICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLXZ0LWMtdGV4dC1saWdodC0xKTtcbiAgLS1jb2xvci10ZXh0OiB2YXIoLS12dC1jLXRleHQtbGlnaHQtMSk7XG4gIC0tc2VjdGlvbi1nYXA6IDE2MHB4XG59XG5cbkBtZWRpYSAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgOnJvb3Qge1xuICAgICAgLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS12dC1jLWJsYWNrKTtcbiAgICAgIC0tY29sb3ItYmFja2dyb3VuZC1zb2Z0OiB2YXIoLS12dC1jLWJsYWNrLXNvZnQpO1xuICAgICAgLS1jb2xvci1iYWNrZ3JvdW5kLW11dGU6IHZhcigtLXZ0LWMtYmxhY2stbXV0ZSk7XG4gICAgICAtLWNvbG9yLWJvcmRlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWRhcmstMik7XG4gICAgICAtLWNvbG9yLWJvcmRlci1ob3ZlcjogdmFyKC0tdnQtYy1kaXZpZGVyLWRhcmstMSk7XG4gICAgICAtLWNvbG9yLWhlYWRpbmc6IHZhcigtLXZ0LWMtdGV4dC1kYXJrLTEpO1xuICAgICAgLS1jb2xvci10ZXh0OiB2YXIoLS12dC1jLXRleHQtZGFyay0yKVxuICB9XG59XG4vKlxuKiwqOmJlZm9yZSwqOmFmdGVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZvbnQtd2VpZ2h0OiA0MDBcbn1cblxuYm9keSB7XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBjb2xvcjogdmFyKC0tY29sb3ItdGV4dCk7XG4gIC8vYmFja2dyb3VuZDogdmFyKC0tY29sb3ItYmFja2dyb3VuZCk7XG4gIHRyYW5zaXRpb246IGNvbG9yIC41cyxiYWNrZ3JvdW5kLWNvbG9yIC41cztcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgZm9udC1mYW1pbHk6IEludGVyLC1hcHBsZS1zeXN0ZW0sQmxpbmtNYWNTeXN0ZW1Gb250LFNlZ29lIFVJLFJvYm90byxPeHlnZW4sVWJ1bnR1LENhbnRhcmVsbCxGaXJhIFNhbnMsRHJvaWQgU2FucyxIZWx2ZXRpY2EgTmV1ZSxzYW5zLXNlcmlmO1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlXG59XG4qL1xuOnJvb3Qge1xuICAtLXdoaXRlOiAjZmZmZmZmO1xuICAtLWJsYWNrOiAjMDAwMDAwO1xuICAtLXdoaXRlRjQ6ICNmNGY0ZjQ7XG4gIC0td2hpdGVGNzogI2Y3ZjdmNztcbiAgLS1ncmF5QzogI2NjY2NjYztcbiAgLS1ncmF5NTogIzU1NTU1NTtcbiAgLS1ncmF5NjogIzY2NjY2NjtcbiAgLS1yZWQ6ICNjMTAwMzE7XG4gIC0tZ3JlZW46ICM0M2QwMzRcbn1cbi8qXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0td2hpdGUpO1xuICBjb2xvcjogdmFyKC0tYmxhY2spXG59XG4qL1xuI2ltYXBwLWRlYWxlci1sb2NhdG9yIHtcbiAgY29sb3I6IHZhcigtLWdyYXk1KVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgaDEge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2Vcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5kZWFsZXItbG9jYXRvciB7XG4gIG1heC13aWR0aDogOTByZW07XG4gIG1hcmdpbjogMCBhdXRvXG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgaGVpZ2h0OiA5NHZoO1xuICBwYWRkaW5nOiAxcmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6ZmxleC1lbmQ7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICBtYXgtaGVpZ2h0OiA0NjBweDtcbiAgICAgIHBhZGRpbmc6IDBcbiAgfVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQ+ZGl2IHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQ+ZGl2IHtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMXJlbVxuICB9XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudD5kaXY6Zmlyc3QtY2hpbGQge1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXlDKVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogNjRlbSkge1xuICAjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yLWNvbnRlbnQ+ZGl2OmZpcnN0LWNoaWxkIHtcbiAgICAgIHdpZHRoOjMwJVxuICB9XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudD5kaXY6bGFzdC1jaGlsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDQwMHB4XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiA2NGVtKSB7XG4gICNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3ItY29udGVudD5kaXY6bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDo3MCU7XG4gICAgICBoZWlnaHQ6IGF1dG9cbiAgfVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yIGk6YmVmb3JlLCNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3IgaTphZnRlciwjaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmRlYWxlci1sb2NhdG9yIGk6YmVmb3JlLCNpbWFwcC1kZWFsZXItbG9jYXRvciAuZGVhbGVyLWxvY2F0b3IgaTphZnRlciB7XG4gIGZvbnQtd2VpZ2h0OiA5MDBcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5sb2NhdG9yLWxlZnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZUY0KTtcbiAgcGFkZGluZy10b3A6IDFyZW07XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgcGFkZGluZy1yaWdodDogMXJlbVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0aW9uIHtcbiAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tZ3JheUMpO1xuICBwYWRkaW5nOiAxcmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS13aGl0ZSk7XG4gIG1hcmdpbi1ib3R0b206IDFyZW1cbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5sb2NhdGlvbj5kaXYge1xuICBtYXJnaW4tYm90dG9tOiAuNXJlbVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmxvY2F0aW9uIC5uYW1lIHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDgwMFxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLmlzT3BlbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLXdoaXRlRjcpO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgcGFkZGluZzogMTBweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXJcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC5pc09wZW4gaSB7XG4gIGNvbG9yOiB2YXIoLS1ncmVlbik7XG4gIG1hcmdpbi1yaWdodDogLjVyZW07XG4gIGZvbnQtc2l6ZTogLjVyZW1cbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC53LWljb24ge1xuICBkaXNwbGF5OiBmbGV4XG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAudy1pY29uIC5pY29uIHtcbiAgbWFyZ2luLXJpZ2h0OiAuNXJlbVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLnctaWNvbiBhIHtcbiAgY29sb3I6IHZhcigtLWdyYXk1KTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lXG59XG5cbiNpbWFwcC1kZWFsZXItbG9jYXRvciAudy1pY29uLndlYnNpdGUgYSB7XG4gIGNvbG9yOiB2YXIoLS1yZWQpO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVxufVxuXG4jaW1hcHAtZGVhbGVyLWxvY2F0b3IgLnZ1ZS1tYXAge1xuICB3aWR0aDogMTAwJSFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMTAwJSFpbXBvcnRhbnRcbn1cblxuI2ltYXBwLWRlYWxlci1sb2NhdG9yIC52dWUtbWFwLWNvbnRhaW5lciB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHZhcigtLWdyYXlDKVxufVxuXG5cbiNkZWFsZXJzLmRlYWxlci1sb2NhdG9yIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICB9XG4gIC5wYWdlLWhlYWRlciBwIHtcbiAgICBtYXgtd2lkdGg6bm9uZTtcbiAgfVxuICAucGhvbmUge1xuICAgIGNvbG9yOiRibGFjaztcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuICAjaW1hcHAtZGVhbGVyLWxvY2F0b3Ige1xuICAgIGhlaWdodDo1NXZoO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICBoZWlnaHQ6ODB2aDtcbiAgICB9XG4gICAgLmRlYWxlci1sb2NhdG9yLWhlYWRlciB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIC5sb2NhdG9yLWxlZnQge1xuICAgICAgZGlzcGxheTpub25lO1xuICAgIH1cbiAgICAuZGVhbGVyLWxvY2F0b3ItY29udGVudD5kaXY6bGFzdC1jaGlsZCB7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgaGVpZ2h0OjUwdmg7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBoZWlnaHQ6NzV2aDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvY2F0b3ItY3RhLWJ1dHRvbnMge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDoxcmVtO1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgICAgfVxuICAgICAgPiBhIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czoxMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzouNXJlbSAwO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgICAgcGFkZGluZzouNzVyZW0gMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgbWF4LXdpZHRoOjEyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiI2ZpdG1lbnQtZ3VpZGUge1xuICBjb2xvcjokYmxhY2s7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGgyIHtcbiAgICBmb250LXNpemU6M3JlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgZm9udC1zaXplOjRyZW07XG4gICAgfVxuICB9XG4gIHAge1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5wYWdlLWhlYWRlciB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgLmFib3V0LWNvbnRlbnQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICBwYWRkaW5nOjFyZW07XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6M3JlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFuaW1hdGVkIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cbiAgLmZpdG1lbnQtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgcGFkZGluZy1yaWdodDozcmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OjNyZW07XG4gICAgfVxuICAgIC5pbm5lci1jb250YWluZXIsLmhlYWQsLmNvbnRlbnQsI2FwcCB7XG4gICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgfVxuICAgIC5pbm5lci1jb250YWluZXIge1xuICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUM7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkLC5pbmZvIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RUQ7XG4gICAgICBwYWRkaW5nLXRvcDoxLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOjEuNjI1cmVtO1xuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgI2FwcCwgI2ZpdG1lbnQtdmVoaWNsZS1zZWxlY3Qge1xuICAgICAgICBtYXgtd2lkdGg6MzYwcHg7XG4gICAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICB9XG4gICAgICAuaW5mbyB7XG4gICAgICAgIHBhZGRpbmc6MS41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdCB7XG4gICAgICBwIHtcbiAgICAgICAgZm9udC1zaXplOi44MTI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIiNlcnJvci1wYWdlIHtcblxuXG5cbi8vIGNvbnRlbnRcbi5wYWdlLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi9pbWFnZXMvdXRpbGl0eS9lcnJvci1iZ1xcIFxcKDJcXCkucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciA1JTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNjAlO1xuICAgIHBhZGRpbmc6IDc1cHg7XG4gICAgbWFyZ2luLXRvcDogNzVweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgIGhlaWdodDogMzAwcHg7XG4gICAgfVxuICBcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsKSB7XG4gICAgICBoZWlnaHQ6IDQ0MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTByZW07XG4gICAgfVxuXG4gIFxuICAgIGgzIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAxMDAwO1xuICAgICAgY29sb3I6ICNlODJjMzk7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cbiAgXG4gICAgcCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTZyZW07XG4gICAgICBjb2xvcjogYmxhY2s7XG4gICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgfVxuICAgIH1cbiAgICAjcmV0dXJuLWhvbWUge1xuICAgICAgbWFyZ2luLXRvcDogOXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAxMXJlbTtcbiAgICB9XG4gIH1cbn0iLCIjZG93bmxvYWRzIHtcbiAgLnBhZ2UtaGVhZGVyIHtcbiAgICAuc3VidGl0bGUge1xuICAgICAgcCB7XG4gICAgICAgIG1heC13aWR0aDpub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53aGVlbC1jb250YWluZXIsLmxvZ28tY29udGFpbmVyIHtcbiAgICAuY29sdW1uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgcGFkZGluZzowIC4yNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICBwYWRkaW5nOjAgMXJlbTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBkb3dubG9hZHMgcGFnZVxuICAucGFnZS1jb250ZW50IHtcbiAgICAuZG93bmxvYWQtaXRlbSB7XG4gICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206NHJlbTtcbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBjb2xsZWN0aW9uIHBhZ2VcbiAgJi5kb3dubG9hZHMtY29sbGVjdGlvbiB7XG4gICAgLmNvbnRlbnQtaGVhZGVyIHtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgaDIge1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICB9XG4gICAgfVxuICAgIC5kb3dubG9hZHMtc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOjJyZW0gMCA0cmVtO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlLWluLW91dDtcbiAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6NTBweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgcGFkZGluZzouNXJlbSAxLjI1cmVtO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogLjg1cmVtO1xuICAgICAgbWF4LXdpZHRoOm5vbmU7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAucmV0dXJuIHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAvLyBicmFuZHNcbiAgICAuZG93bmxvYWRzLXNlY3Rpb24tYnJhbmRzIHtcbiAgICAgIC5jb250ZW50LWxpc3Qge1xuICAgICAgICAuYnJhbmQtaXRlbSB7XG4gICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAkZ3JheUU2O1xuICAgICAgICAgIHBhZGRpbmc6MXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGZvbnQtc2l6ZTouODc1cmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzoycmVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmxvZ28sLmV4Y2VycHQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuYnJlYWsge1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgIGhlaWdodDoxcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5RTY7XG4gICAgICAgICAgICBtYXJnaW46MXJlbSAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAvLyBhc3NldHNcbiAgICAuZG93bmxvYWRzLXNlY3Rpb24tYXNzZXRzIHtcbiAgICAgIC5jb250ZW50LWhlYWRlciB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC1oZWlnaHQ6MjAwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb250ZW50LWxpc3QtYXNzZXRzIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjJyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC53aGVlbC1uYW1lIHtcbiAgICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIH1cbiAgICAgICAgLndoZWVsLWZpbmlzaCB7XG4gICAgICAgICAgZm9udC1zaXplOi44MjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFja2FnaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0Y1RjVGNTtcbiAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIG1heC13aWR0aDogODAwcHg7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG5cbiAgLnBvcHVwX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gIH1cbiAgLmJ1dHRvbi1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICAucmV0dXJuVHh0IHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICB9XG59IiwiLmFjY2Vzc29yeS1jb250YWluZXIge1xuXHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSB1cCkge1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjY2NjO1xuXHR9XG5cdCZfX2xlZnQge1xuXHRcdGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNjY2M7XG5cdH1cbn1cblxuLmFjY2Vzc29yeS1wb3B1cCB7XG5cdG1heC13aWR0aDogNDI1cHg7XG5cdHBhZGRpbmc6IDAgMCAxMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdCYtLXdpZGUge1xuXHRcdG1heC13aWR0aDogODUwcHg7XG5cdH1cblx0Jl9faGVhZGVyIHtcblx0XHRwYWRkaW5nLXRvcDogMTBweDtcblx0XHRib3JkZXItYm90dG9tOiAzcHggc29saWQgI2NjYztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZjJmMmYyO1xuXHRcdGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHQmX19pdGVtIHtcblx0XHR3aWR0aDogOTAlO1xuXHRcdG1hcmdpbjogMCBhdXRvIDEwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHQmLS1ib3JkZXI6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgI2NjYztcblx0XHR9XG5cdFx0LmlucHV0IHtcblx0XHRcdG1hcmdpbjogMCAyMHB4O1xuXHRcdFx0Ji0tcmlnaHQge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5pbWcge1xuXHRcdFx0bWF4LXdpZHRoOiAxMDBweDtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDkwcHg7XG5cdFx0XHR9XG5cdFx0XHQmLS1scmcge1xuXHRcdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0LnRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMC44cmVtO1xuXHRcdH1cblx0fVxuXHQudGl0bGUtLXJpZ2h0IHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0fVxuXHQmX19saW5rIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRmb250LXNpemU6IDEwMCU7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHR9XG5cdH1cbn1cblxuLmFjY2Vzc29yeS1wb3B1cC0tcmlnaHQge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0LmlucHV0IHtcblx0XHRtYXJnaW46IDA7XG5cdH1cblx0LmNvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDAgMnJlbTtcblx0fVxuXHQuc3VidGV4dCB7XG5cdFx0Y29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdH1cbn0iLCIuZ2FsbGVyeS1xdW90ZS1wb3B1cCB7XG4gICZfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cbiAgJl9fdHh0IHtcbiAgICBmb250LXNpemU6IDAuOTVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cbiAgfVxuICAmX19ub3RlIHtcbiAgICBmb250LXNpemU6IDAuOHJlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICB9XG4gIGlucHV0Om5vdChbdHlwZT1cInN1Ym1pdFwiXSkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgY29sb3I6ICMwMDA7XG4gIH1cbn1cblxuLmZvcm0tbmFtZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICBpbnB1dCB7XG4gICAgd2lkdGg6IDE5LjVyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICMzMzM7XG4gICAgICBmb250LXNpemU6IDAuOXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLmdhbGxlcnktcHJvZHVjdC1pbmZvIHtcbiAgc3BhbiB7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxufVxuIiwiLmZpdG1lbnRDaGVjayB7XG4gICZfX3R4dCB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWFyZ2luLXRvcDogMS41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIH1cbiAgJl9fYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuICAgIHBhZGRpbmctbGVmdDogMnJlbTtcbiAgfVxufSIsIiNmYyB7XG4gICNmYy1jYXJ0IHtcbiAgICBoZWFkZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICB9XG4gIH1cbiAgXG4gIC5ub3RpY2Uge1xuICAgIHBhZGRpbmctbGVmdDoxNXB4O1xuICAgIHBhZGRpbmctcmlnaHQ6MTVweDtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgIH1cbiAgfVxufSIsIi8qIGNhcnQgc3VtbWFyeSAqL1xuLnNuaXBjYXJ0LWl0ZW0tY3VzdG9tLWZpZWxkc19fZmllbGQuc25pcGNhcnQtaXRlbS1jdXN0b20tZmllbGRzLS10ZXh0Ym94IHtcbiAgd2lkdGg6ODAlO1xufVxuLnNuaXBjYXJ0LWlucHV0X19pbnB1dC5zbmlwY2FydF9fZm9udC0tc2Vjb25kYXJ5LnNuaXBjYXJ0X19mb250LS1ib2xkIHtcbiAgYm9yZGVyOjA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206MDtcbn1cblxuLmltLWN1c3RvbS1zdWJ0aXRsZSB7XG4gIG1hcmdpbi10b3A6MnJlbTtcbn0iLCIuaW52ZW50b3J5LWxheW91dC1oZWFkZXIge1xuICBib3JkZXItdG9wOjA7XG4gIC50b3AtYmFyIHtcbiAgICAubmF2LW1lbnUtcmlnaHQge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKGxhcmdlKSB7XG4gICAgICAgIHdpZHRoOjc1JTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHVuc2V0O1xuICAgICAgICBjb2xvcjokd2hpdGU7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgZGlzcGxheTp0YWJsZS1jZWxsO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICAgIC8vJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAvLyAgYm9yZGVyLWxlZnQ6IDJweCBzb2xpZCAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAvL31cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLXRpdGxlIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgLmhlYWRlci1sb2dvIHtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICB3aWR0aDozMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5pbnZlbnRvcnktaGVhZCB7XG4gIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRncmF5O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgJi5maXhlZCB7XG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgd2lkdGg6MTAwJTtcbiAgICB0b3A6MDtcbiAgICB6LWluZGV4OjEwO1xuICAgICNsZWZ0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnVzZXIge1xuICBkaXNwbGF5OmZsZXg7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgXG4gIHdpZHRoOjEwMCU7XG4gIHBhZGRpbmctdG9wOjJyZW07XG4gIHBhZGRpbmctYm90dG9tOjJyZW07XG4gIGZvbnQtc2l6ZToxLjA1cmVtO1xuICBwYWRkaW5nLWxlZnQ6LjkzNzVyZW07XG4gIHBhZGRpbmctcmlnaHQ6LjkzNzVyZW07XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgZm9udC1zaXplOi44NzVyZW07XG4gICAgcGFkZGluZy10b3A6MXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgfVxuICAmLW5hbWUge1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXdlaWdodDo2MDA7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHktcmVndWxhcjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk3O1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICB9XG4gIH1cbiAgJi1jb2RlIHtcbiAgICBjb2xvcjokcmVkO1xuICB9XG4gICYtb3B0aW9ucyB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAganVzdGlmeS1jb250ZW50OmZsZXgtc3RhcnQ7XG4gICAgfVxuICAgID4gZGl2IHtcbiAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgIG1hcmdpbi1sZWZ0OjFyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6MXJlbTtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgZm9udC1mYW1pbHk6JGJvZHktZm9udC1mYW1pbHktcmVndWxhcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBmb250LXdlaWdodDo1MDA7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6JGdyYXk7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuMnMgZWFzZS1vdXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLmxvYWRpbmctc2NyZWVuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLC43KTtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIHRvcDowO1xuICByaWdodDowO1xuICBsZWZ0OjA7XG4gIGJvdHRvbTowO1xuICBjb250ZW50OicnO1xuICBkaXNwbGF5OmJsb2NrO1xuICB6LWluZGV4Ojk5OTk7XG4gIGkge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgd2lkdGg6IDQ1cHg7XG4gICAgaGVpZ2h0OiA0NXB4OyAgXG4gICAgZm9udC1zaXplOjNyZW07XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOnNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIC1tb3otYW5pbWF0aW9uOnNwaW4gMXMgbGluZWFyIGluZmluaXRlO1xuICAgIGFuaW1hdGlvbjpzcGluIDFzIGxpbmVhciBpbmZpbml0ZTtcbiAgfVxuICBALW1vei1rZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtbW96LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuICBALXdlYmtpdC1rZXlmcmFtZXMgc3BpbiB7IDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH0gfVxuICBAa2V5ZnJhbWVzIHNwaW4geyAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06cm90YXRlKDM2MGRlZyk7IH0gfVxufSIsIi5pbnZlbnRvcnktbGF5b3V0LWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6JGJsYWNrO1xuICAuZm9vdGVyLWJvdHRvbV9fY29weSB7XG4gICAgY29sb3I6JHdoaXRlO1xuICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgfVxufSIsIi8vIGludmVudG9yeSBpdGVtcyByZXN1bHQgbGlzdFxuI2ludmVudG9yeSB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xuICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseS1yZWd1bGFyO1xuICAuaW52ZW50b3J5IHtcbiAgICAmLWl0ZW0ge1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgcGFkZGluZy10b3A6MS41cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206MS41cmVtO1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAuc2xhc2hvdXQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246bGluZS10aHJvdWdoO1xuICAgICAgfVxuICAgIH1cbiAgICAmLXBhcnQtbnVtYmVyIHtcbiAgICAgIGNvbG9yOiRncmF5NTtcbiAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICB9XG4gICAgJi1zdG9jayB7XG4gICAgICBjb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICB9XG4gICAgICAmLWJ5LWxvY2F0aW9uIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBjb2xvcjokcmVkO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWRlYWxlciwgJi1tc3JwIHtcbiAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcbiAgICAgIGNvbG9yOiRtZWRpdW0tZ3JheTtcbiAgICAgIGZvbnQtc2l6ZTouODM3NXJlbTtcbiAgICAgIHdpZHRoOjUwJTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgIHdpZHRoOmF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYtbXNycCB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDoxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWRlYWxlciB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG4gICAgJi1zYWxlIHtcbiAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgJi1wcmljZSB7XG4gICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICB9XG4gICAgfVxuICAgICYtcHVyY2hhc2Uge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgbWFyZ2luLXRvcDouNXJlbTtcbiAgICAgIH1cbiAgICAgID4gYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICBmb250LXNpemU6LjlyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgcGFkZGluZzoxcmVtIDEuNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgLjJzIGVhc2Utb3V0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHBhZGRpbmc6LjVyZW0gMXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLmJhY2tvcmRlci1saW5rIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtZGl2aWRlciB7XG4gICAgICBoZWlnaHQ6MXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICB9XG4gIH1cbiAgLy8gbm8gbWF0Y2hlcyAvIHByb2R1Y3QgcmVzdWx0cyBjb3VudFxuICAubm8tbWF0Y2hlcywucmVzdWx0LWNvdW50LWVtcHR5IHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLy8gbGlzdCB2aWV3XG4gIC52aWV3LWxpc3Qge1xuICAgIC5pbnZlbnRvcnkge1xuICAgICAgJi1pdGVtIHtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIH1cbiAgICAgICYtdGh1bWJuYWlsIHtcbiAgICAgICAgd2lkdGg6MTIlO1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6NzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1pbmZvIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWxvY2F0aW9uIHtcbiAgICAgICAgd2lkdGg6NDAlO1xuICAgICAgfVxuICAgICAgJi1kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOjg4JTsgIFxuICAgICAgICB9XG4gICAgICAgICYtdG9wIHtcbiAgICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6MS4zNTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tbGVmdCB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSAgXG4gICAgfVxuICB9XG4gIC8vIGdhbGxlcnkgdmllXG4gIC52aWV3LWdhbGxlcnkge1xuICAgIC5pbnZlbnRvcnkge1xuICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6MjAwcHg7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi1tc3JwLCAmLWRlYWxlciB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICAgICYtbG9jYXRpb24ge1xuICAgICAgICB3aWR0aDozMyU7XG4gICAgICB9XG4gICAgICAmLXB1cmNoYXNlIHtcbiAgICAgICAgbWFyZ2luLXRvcDouNXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG5cbi8vLy8vIEludmVudG9yeSBQb3B1cCAtIFJlc3VsdHMgUGFnZSAvLy8vL1xuI3dhcmUtYm94LCAjd2FyZS1ib3gyLCAjd2FyZS1ib3gzIHtcbiAgcG9zaXRpb246Zml4ZWQ7XG4gIGRpc3BsYXk6bm9uZTtcbiAgb3BhY2l0eTowO1xuICB0b3A6MDtcbiAgcmlnaHQ6MDtcbiAgbGVmdDowO1xuICBib3R0b206MDtcbiAgei1pbmRleDoxMDtcbiAgYmFja2dyb3VuZC1jb2xvcjpyZ2JhKDAsMCwwLDAuNyk7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLml0ZW0tcG9wdXAge1xuICBmb250LXNpemU6MXJlbTtcbiAgZm9udC13ZWlnaHQ6NTAwO1xuICB3aWR0aDo2MDBweDtcbiAgcGFkZGluZzoyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiR3aGl0ZTtcbiAgLypAbWVkaWEgc2NyZWVuIGFuZCAobWF4LWhlaWdodDogMTEwMHB4KSB7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICB9Ki9cbiAgaDMge1xuICAgIGZvbnQtc2l6ZToxLjI1cmVtO1xuICB9XG4gIC5pdGVtLXBvcHVwLXRpdGxlIHtcbiAgICBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6MXB4O1xuICAgIH1cbiAgfVxuICBsYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB3aWR0aDo4MHB4O1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgfVxuICBpbnB1dCB7XG4gICAgd2lkdGg6NTBweDtcbiAgICAmW25hbWU9J3ZlaGljbGUnXSB7XG4gICAgICB3aWR0aDo3MCU7XG4gICAgfVxuICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICB9XG4gIH1cbiAgPiBkaXYge1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLmZpZWxkIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgd2lkdGg6YXV0bztcbiAgICAmLXZlaGljbGUge1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICB3aWR0aDphdXRvO1xuICAgIH1cbiAgICAmLnVwc2VsbCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuICAuYnV0dG9uIHtcbiAgICBwYWRkaW5nOjFyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOjA7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICB9XG4gIH1cbiAgLml0ZW0tcG9wdXAtY3RhIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDo4MHB4O1xuICAgICAgZGlzcGxheTpibG9jaztcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge31cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgLy8vLy8gdXBzZWxsIHNlY3Rpb24gLy8vLy9cbiAgLnVwc2VsbCB7XG4gICAgcGFkZGluZy1ib3R0b206MS41cmVtO1xuICAgIGxhYmVsIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTouNXJlbTtcbiAgICB9XG4gICAgaW5wdXQge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgZm9udC1zaXplOi44NXJlbTtcbiAgICAgIHRyIHRkIHtcbiAgICAgICAgcGFkZGluZzouMjVyZW0gLjc1cmVtOyAgXG4gICAgICB9XG4gICAgICBzcGFuIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI3dhcmUtYm94MiB7XG4gIC5pdGVtLXBvcHVwLW1zZyB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICB9XG4gICNtZXNzYWdlIHtcbiAgICBmb250LXdlaWdodDo1MDA7XG4gICAgZm9udC1zaXplOjFyZW07XG4gICAgLmZhLWNoZWNrLWNpcmNsZSwuZmEtbWludXMtY2lyY2xlLC5mYS10aW1lcy1jaXJjbGUsLmZhLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlIHtcbiAgICAgIGZvbnQtc2l6ZTozcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbToxcmVtO1xuICAgIH1cbiAgICAuZmEtY2hlY2stY2lyY2xlIHtcbiAgICAgIGNvbG9yOiRncmVlbjtcbiAgICB9XG4gICAgLmZhLW1pbnVzLWNpcmNsZSwuZmEtdGltZXMtY2lyY2xlLC5mYS1leGNsYW1hdGlvbi10cmlhbmdsZSB7XG4gICAgICBjb2xvcjokeWVsbG93O1xuICAgIH1cbiAgfVxuICAuaXRlbS1wb3B1cC1jdGEge1xuICAgIG1hcmdpbi1sZWZ0OjA7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgYS5idXR0b246bGluaywgYS5idXR0b246dmlzaXRlZCB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JheTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ2FydCBQb3B1cFxuI3dhcmUtYm94MyB7XG4gIC5jYXJ0LXJlc3VsdHMge1xuICAgIHRoLHRkIHtcbiAgICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIH1cbiAgfVxuICAuY2FydC10b3Age1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgaDEge1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgfVxuICB9XG4gIC8vIG1vYmlsZSBjYXJ0XG4gIC5tb2JpbGUtY2FydCB7XG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTtcbiAgICAgICAgcGFkZGluZzoxcmVtIC43NXJlbTtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIC5tb2JpbGUtc3VtbWFyeS10aXRsZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIH1cbiAgICAgICAgLm1vYmlsZS1zdW1tYXJ5LWljb24ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgICAubW9iaWxlLXN1bW1hcnktdG90YWwge1xuICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAuZmEtYW5nbGUtZG93bjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6ICdcXGYxMDYnO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnZlbnRvcnkge1xuICAgICAgJi1pdGVtIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgICAgfVxuICAgICAgJi10aHVtYm5haWwge1xuICAgICAgICB3aWR0aDoxMiU7XG4gICAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSBkb3duKSB7XG4gICAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1heC13aWR0aDo3MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLWluZm8ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtZGVzY3JpcHRpb24ge1xuICAgICAgICBmbG9hdDpsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDo4OCU7ICBcbiAgICAgICAgfVxuICAgICAgICAmLXRvcCB7XG4gICAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMzU7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgICB9XG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgID4gZGl2IHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDo1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tbGVmdCB7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLWJvdHRvbSB7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSAgXG4gICAgfVxuXG5cbiAgICAubW9iaWxlLWNoZWNrb3V0LWN0YSwgLm1vYmlsZS1jYXJ0LWN0YSB7XG4gICAgICBwYWRkaW5nOi43NXJlbTtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOi43NXJlbSAxcmVtO1xuICAgICAgICBmb250LXNpemU6MS4xNXJlbTtcbiAgICAgICAgJi5lZGl0LWNhcnQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6Ljc1cmVtO1xuICAgICAgICB9XG4gICAgICAgICYuY2hlY2tvdXQtYnV0dG9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmVlbjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDouNzVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1vYmlsZS1jaGVja291dC10b3RhbCwgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB9XG5cbiAgfVxuICAubW9iaWxlLWNhcnQtdGFibGUtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTowO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5O1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICB9XG4gIC5tb2JpbGUtY2FydCB7XG4gICAgYm9yZGVyLXRvcDoxcHggc29saWQgJGdyYXk7XG4gICAgLmludmVudG9yeS1pdGVtIHtcbiAgICAgIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSB7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICYtYm90dG9tIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tb2JpbGUtY2FydC1jdGEge1xuICAgICAgcGFkZGluZzoxLjI1cmVtIC43NXJlbTtcbiAgICB9XG4gICAgLm1vYmlsZS1jYXJ0LXRvdGFsIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuI2ludmVudG9yeSB7XG4gIC8vIHBhZ2luYXRpb25cbiAgLnBhZ2luYXRpb24tY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOjNyZW0gMDtcbiAgICAvL2JvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5NTtcbiAgICBtYXJnaW46M3JlbSAwO1xuICB9XG4gIC8vIHNjcm9sbCBuYXZpZ2F0aW9uIHBhZ2luYXRpb25cbiAgLm5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206M3JlbTtcbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDoycmVtO1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokcHJpbWFyeS1jb2xvcjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5NjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4jaW52ZW50b3J5IHtcbiNib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBvcmFuZ2U7XG4gIGJvcmRlcjogNHB4IHNvbGlkIHBpbms7XG4gIHRyYW5zaXRpb246XG4gICAgYmFja2dyb3VuZC1jb2xvciAxcyxcbiAgICBib3JkZXIgMXM7XG4gIHdpZHRoOiAzNTBweDtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIwcHg7XG59XG5cbi52ZXJ0aWNhbCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udDogMzJweCBcIkFyaWFsXCI7XG59XG5cbi5leHRyYSB7XG4gIHdpZHRoOiAzNTBweDtcbiAgaGVpZ2h0OiAzNTBweDtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgYm9yZGVyOiA0cHggc29saWQgYmx1ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAyMHB4O1xufVxufSIsIi5sb2dpbiB7XG4gIGxhYmVsIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG4gIGlucHV0IHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDo0MCU7XG4gICAgfVxuICB9XG4gIC5pbnYtbG9naW4sLmludi1tc2csI2xvZ2luX2Zvcm0sLmludi1saW5rcyB7XG4gICAgcGFkZGluZzowIDJyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgfVxuICB9XG4gIC5pbnYtbGlua3Mge1xuICAgIHVsIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjUwMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmludi1kaXNjbGFpbWVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBoMyB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgfVxuICB9XG4gICNsb2dpbl9mb3JtIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG4gIC5pbnYtbXNnIHtcbiAgICA+IHAge1xuICAgICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgICAgY29sb3I6JHJlZDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyB3ZWxjb21lIGh1YlxuI2ludmVudG9yeS5odWIge1xuICBwYWRkaW5nLXRvcDoycmVtO1xuICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgIHBhZGRpbmctdG9wOjVyZW07XG4gICAgcGFkZGluZy1ib3R0b206NXJlbTtcbiAgfVxuICAuaHViLWN0YSB7XG4gICAgbWF4LXdpZHRoOjcwcmVtO1xuICAgIG1hcmdpbjowIGF1dG87XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgbWFyZ2luLWJvdHRvbTo1cmVtOyAgIFxuICAgIH1cbiAgICAucm93ID4gLmNvbHVtbiB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTotMi41cmVtO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDotMXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBtYXgtd2lkdGg6NzUlO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBmb250LWZhbWlseTokYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgfVxuICAgIC50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOjRyZW07XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgIH1cbiAgICBhIHtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5vcmRlcnMge1xuICAucGFnZS1jb250ZW50LCAuaW52ZW50b3J5LWhlYWQge1xuICAgIC5hY2NvcmRpb24ge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICAgICNpbnZlbnRvcnktZmlsdGVyLXNlYXJjaCB7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICB9XG4gICAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgICAgYm9yZGVyOjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgXG4gICAgLnN1YmhlYWRlciB7XG4gICAgICBmb250LXdlaWdodDoxcmVtO1xuICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokaW52LWxpZ2h0LWdyYXk7XG4gICAgICAvL3BhZGRpbmctbGVmdDogLjkzNzVyZW07XG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IC45Mzc1cmVtO1xuICAgICAgcGFkZGluZzoycmVtO1xuICAgICAgbWFyZ2luOjA7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAvL3BhZGRpbmctbGVmdDouNjI1cmVtO1xuICAgICAgICAvL3BhZGRpbmctcmlnaHQ6LjYyNXJlbTtcbiAgICAgICAgcGFkZGluZzoxcmVtO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6MXJlbTtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgICBmb250LXdlaWdodDo2MDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAuc2VhcmNoLWZpbHRlciB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgJi5wby1udW1iZXIge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgICAgIC8qXG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgd2lkdGg6MzclO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICB3aWR0aDo1JTtcbiAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICAgIHdpZHRoOjIwJTtcbiAgICAgICAgICAgIH0qL1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICB9XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgICBwYWRkaW5nOi43cmVtIDEuNXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZGF0ZXMge1xuICAgICAgICA+IGxhYmVsIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcbiAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDoxcmVtO1xuICAgIH1cbiAgfVxuXG5cbiAgLy8gdGFibGVcbiAgLm9yZGVyLXF1ZXJ5IHtcbiAgICBwYWRkaW5nOjFyZW0gMnJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBjb2xvcjokcmVkO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgcGFkZGluZzoxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5vcmRlci10YWJsZSB7XG4gICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgLy9tYXgtaGVpZ2h0OjgwMHB4O1xuICAgICAgb3ZlcmZsb3cteTphdXRvO1xuICAgIH1cbiAgICB0YWJsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cbiAgICB0aGVhZCx0Ym9keSB7XG4gICAgICBib3JkZXI6MDtcbiAgICAgIGJvcmRlci1ib3R0b206MTBweCBzb2xpZCAkYmxhY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgIH1cbiAgICB0ciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXlDO1xuICAgIH1cbiAgICB0ZCB7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgIHBhZGRpbmc6Ljc1cmVtIDFyZW07XG4gICAgICAmLnRyYWNraW5nLW9yZGVyLWJ1dHRvbiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG5cblxuICAvLyBkaXNjbGFpbWVyIFxuICAuZGlzY2xhaW1lciB7XG4gICAgY29sb3I6JHJlZDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6MXJlbTtcbiAgICB9XG4gIH1cbn1cblxuI3dhcmUtYm94Mi5vcmRlci1kZXRhaWxzLCNpbnYtb3JkZXItcHJpbnQge1xuICBjb2xvcjokYmxhY2s7XG4gIC5pdGVtLXBvcHVwIHtcbiAgICBib3JkZXItcmFkaXVzOjVweDtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICAgIHdpZHRoOjkwMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6LjVyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0Oi41cmVtO1xuICAgIH1cbiAgfVxuICAuaGVhZGVyIHtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbi1ib3R0b206MnJlbTtcbiAgICB9XG4gICAgPiBkaXYge1xuICAgICAgd2lkdGg6MzUlO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtIGRvd24pIHtcbiAgICAgICAgd2lkdGg6NDUlO1xuICAgICAgICBsaW5lLWhlaWdodDoxLjQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5hZGRyZXNzIHtcbiAgICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OjEuMTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgZm9udC1zaXplOi44cmVtO1xuICAgICAgfVxuICAgICAgPiBkaXYge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm9yZGVyLWluZm8ge1xuICAgICAgZm9udC13ZWlnaHQ6NjAwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBmb250LXNpemU6LjlyZW1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4gIC5wcm9kdWN0LWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgIH1cbiAgfVxuICB0YWJsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICB0aGVhZCx0Ym9keSB7XG4gICAgICBib3JkZXI6MDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItYm90dG9tOjEwcHggc29saWQgJGJsYWNrO1xuICAgIH1cbiAgICB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIH1cbiAgfVxuXG5cbiAgLmN0YSB7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgPiBkaXYge1xuICAgICAgbWFyZ2luLWxlZnQ6MXJlbTtcbiAgICB9XG4gICAgLmJ1dHRvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgfVxuICB9XG59XG5cbi51c2VyLW9wdGlvbnMgPiBkaXYge1xuICAmLnVzZXItb3B0aW9ucy1pbnZlbnRvcnkge1xuICAgIGRpc3BsYXk6bm9uZTtcbiAgICBhLGkge1xuICAgICAgY29sb3I6JHJlZDtcbiAgICB9XG4gICAgYTpob3ZlciB7XG4gICAgICBjb2xvcjokYmxhY2s7XG4gICAgICBpIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4udXNlci1vcHRpb25zLWludmVudG9yeSB7XG4gIGRpc3BsYXk6bm9uZTtcbn1cblxuXG4vLyBwcmludFxuLnByaW50LWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6JHdoaXRlO1xufVxuI2ludi1vcmRlci1wcmludCB7XG4gIC5pdGVtLXBvcHVwIHtcbiAgICBtYXJnaW46MCBhdXRvO1xuICAgIHdpZHRoOjEwMCU7XG4gIH1cbiAgLm9yZGVyLWluZm8sdGFibGUge1xuICAgIGZvbnQtc2l6ZTouOXJlbTtcbiAgfVxufSIsIi5jYXJ0IHtcbiAgI2xvZ2luIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gIH1cbiAgLmNhcnQtdGl0bGUge1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gIH1cbiAgLnBhZ2UtY29udGVudCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAmLmNhcnQtdGFibGUtY29udGFpbmVyIHtcbiAgICAgIGZvcm0ge1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2FydC1saXN0aW5nIHtcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBib3JkZXI6MXB4IHNvbGlkICRkYXJrLWdyYXk7XG4gICAgICBib3JkZXItdG9wOjVweCBzb2xpZCAkcmVkO1xuICAgICAgLnZlaGljbGUtbWVzc2FnZSB7XG4gICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgY29sb3I6JGdyYXk1O1xuICAgICAgICBsaW5lLWhlaWdodDoyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBcbiAgdGgge1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6JGRhcmstZ3JheTtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gIH1cbiAgdGQge1xuICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgfVxuICBcbiAgJi1idXR0b25zLCAmLXRvdGFsIHtcbiAgICBwYWRkaW5nOjJyZW07XG4gIH1cbiAgXG4gIFxuICAmLWJ1dHRvbnMge1xuICAgIC5idXR0b24ge1xuICAgICAgcGFkZGluZzouNzVyZW0gMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm5ldy1zZWFyY2gge1xuICAgIC8vdGV4dC1hbGlnbjpsZWZ0O1xuICB9XG4gIC51cGRhdGUtbWVzc2FnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTouNXJlbTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgICBzcGFuIHtcbiAgICAgIGNvbG9yOiRncmVlbjtcbiAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICB9XG4gIH1cbiAgLnVwZGF0ZS1jaGVja291dCB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAuYnV0dG9uIHtcbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgfVxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjpibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmVkaXQtY2FydCB7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIFxuICBcbiAgJi1xdHkge1xuICAgIHdpZHRoOjYwcHg7XG4gICAgbWFyZ2luOjAgYXV0bztcbiAgfVxuICBcbiAgJi10b3RhbCB7XG4gICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgJi10aXRsZSB7XG4gICAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgIH1cbiAgfVxuICAuZGlzY2xhaW1lciB7XG4gICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gICAgYm9yZGVyLXRvcDo1cHggc29saWQgJGRhcmstZ3JheTtcbiAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIG1hcmdpbi10b3A6NXJlbTtcbiAgICB9XG4gIH1cbiAgLmludi1idG4tY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgfVxuICAuY2hlY2tvdXQtZXJyb3Ige1xuICAgIGNvbG9yOiRsaWdodC1yZWQ7XG4gICAgZm9udC1zaXplOi45cmVtO1xuICAgIGZvbnQtd2VpZ2h0OjYwMDtcbiAgfVxufVxuXG5cblxuLy8vLy8vIENoZWNrb3V0IEZvcm0gLy8vLy9cbi5wYWdlLWNvbnRlbnQge1xuICAuY2hlY2tvdXQtZm9ybSB7XG4gICAgd2lkdGg6MTAwJTtcbiAgICAuYnV0dG9ucyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChsYXJnZSkge1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNjaGVja291dCwgI2NhcnQge1xuICBoMSxoMiB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBcbiAgfVxuICAucGFnZS1jb250ZW50IHtcbiAgaDEge1xuICAgIGNvbG9yOiRyZWQ7XG4gICAgXG4gIH1cbn1cbiAgLmNoZWNrb3V0LXRpdGxlLC5jYXJ0LXRpdGxlIHsgIFxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgcGFkZGluZy1sZWZ0OjFyZW07XG4gICAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgfVxuICAgIGgxIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKHNtYWxsIG9ubHkpIHtcbiAgICAgICAgcGFkZGluZzowIC43NXJlbTtcbiAgICAgICAgZm9udC1zaXplOjJyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2hlY2tvdXQtZm9ybSB7XG4gICAgaDIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gY2hlY2tvdXQgdG9wXG4uY2hlY2tvdXQtdG9wIHtcbiAgZGlzcGxheTpmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4vLyBjaGVja291dCBsZWZ0XG4uY2hlY2tvdXQge1xuICAmLWZvcm0ge1xuICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgIGJvcmRlci1yaWdodC1jb2xvcjogJGdyYXk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGRhcmstZ3JheTtcbiAgICAgIHBhZGRpbmc6MnJlbTtcbiAgICB9XG4gICAgLmJ1dHRvbnMge1xuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIG1heC13aWR0aDoxNTBweDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0Oi41cmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6MDtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokYmxhY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmludmFsaWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjokbGlnaHQtcmVkO1xuICAgICAgY29sb3I6JHdoaXRlO1xuICAgIH1cbiAgfVxuICBsYWJlbCB7XG4gICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgIHdpZHRoOjEwMCU7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICAgIC8qZm9udC1zaXplOjFyZW07Ki9cbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgfVxuICAuZmllbGQge1xuICAgIGlucHV0LCBzZWxlY3Qge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgICAgbWF4LXdpZHRoOjM1MHB4O1xuICAgICAgfVxuICAgIH1cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBtYXgtd2lkdGg6NTAwcHg7XG4gICAgICBtaW4taGVpZ2h0OjE1MHB4O1xuICAgIH1cbiAgfVxuXG4gIC5jdXN0b21lci1hZGRyZXNzIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBsaW5lLWhlaWdodDoxLjI1O1xuICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICBmb250LXdlaWdodDo3MDA7XG4gIH1cbn1cblxuI2NoZWNrb3V0IC5zdW1tYXJ5IHtcbiAgcGFkZGluZzoycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgYm9yZGVyOjFweCBzb2xpZCAkZGFyay1ncmF5O1xuICBib3JkZXItbGVmdDowO1xuICBmb250LXNpemU6MXJlbTtcbiAgLmNhcnQtbGlzdGluZyB7XG4gICAgbWFyZ2luLXRvcDoyLjVyZW07XG4gIH1cbiAgdGFibGUge1xuICAgIGxpbmUtaGVpZ2h0OjEuMjU7XG4gIH1cbiAgdGgge1xuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIG1pbi13aWR0aDoxMDBweDtcbiAgICB9XG4gIH1cbn1cblxuI2NoZWNrb3V0IC5tb2JpbGUtY2hlY2tvdXQsICNjYXJ0IC5tb2JpbGUtY2FydCB7XG4gIC5hY2NvcmRpb24taXRlbSB7XG4gICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgJGdyYXk7XG4gICAgICBwYWRkaW5nOjFyZW0gLjc1cmVtO1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5tb2JpbGUtc3VtbWFyeS10aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgIH1cbiAgICAgIC5tb2JpbGUtc3VtbWFyeS1pY29uIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0Oi41cmVtO1xuICAgICAgfVxuICAgICAgLm1vYmlsZS1zdW1tYXJ5LXRvdGFsIHtcbiAgICAgICAgY29sb3I6JGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAuZmEtYW5nbGUtZG93bjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnXFxmMTA2JztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmludmVudG9yeSB7XG4gICAgJi1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JGludi1saWdodC1ncmF5O1xuICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyYXk7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgfVxuICAgICYtdGh1bWJuYWlsIHtcbiAgICAgIHdpZHRoOjEyJTtcbiAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOjcwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICYtaW5mbyB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIHBhZGRpbmctbGVmdDoxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAmLWRlc2NyaXB0aW9uIHtcbiAgICAgIGZsb2F0OmxlZnQ7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6ODglOyAgXG4gICAgICB9XG4gICAgICAmLXRvcCB7XG4gICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgbGluZS1oZWlnaHQ6MS4zNTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206LjVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OjcwMDtcbiAgICAgIH1cbiAgICAgICYtYm90dG9tIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgPiBkaXYge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6NTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaW52ZW50b3J5LWRlc2NyaXB0aW9uLWxlZnQge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgJi1ib3R0b20ge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmludmVudG9yeS1xdWFudGl0eSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLmNhcnQtcXR5IHtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDouNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmludmVudG9yeS12ZWhpY2xlIHtcbiAgICAgICAgY29sb3I6JGdyYXk1O1xuICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICB9XG4gICAgfSAgXG4gIH1cbiAgXG4gIFxuICAubW9iaWxlLWNoZWNrb3V0LWN0YSwgLm1vYmlsZS1jYXJ0LWN0YSB7XG4gICAgcGFkZGluZzouNzVyZW07XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLmJ1dHRvbiB7XG4gICAgICBwYWRkaW5nOi43NXJlbSAxcmVtO1xuICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICAmLmVkaXQtY2FydCB7XG4gICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmF5O1xuICAgICAgICAvL21hcmdpbi1sZWZ0Oi43NXJlbTtcbiAgICAgIH1cbiAgICAgICYuY2hlY2tvdXQtYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JlZW47XG4gICAgICAgIC8vbWFyZ2luLWxlZnQ6Ljc1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubW9iaWxlLWNoZWNrb3V0LXRvdGFsLCAubW9iaWxlLWNhcnQtdG90YWwge1xuICAgIHBhZGRpbmc6Ljc1cmVtO1xuICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6NzAwO1xuICB9XG4gIFxufVxuLyovLy8vLyBNb2JpbGUgLSBDYXJ0IC8vLy8vKi9cbiNjYXJ0IC5tb2JpbGUtY2FydC10YWJsZS1jb250YWluZXIge1xuICBwYWRkaW5nLWJvdHRvbTowO1xuICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JheTtcbn1cbiNjYXJ0IC5tb2JpbGUtY2FydCB7XG4gIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmF5O1xuICAuaW52ZW50b3J5LWl0ZW0ge1xuICAgIC5pbnZlbnRvcnktZGVzY3JpcHRpb24tYm90dG9tLWJvdHRvbSB7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgJi1ib3R0b20ge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOjEuMjVyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1vYmlsZS1jYXJ0LWN0YSB7XG4gICAgcGFkZGluZzoxLjI1cmVtIC43NXJlbTtcbiAgfVxuICAubW9iaWxlLWNhcnQtdG90YWwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuI2NhcnQgLm1vYmlsZS1jYXJ0IHtcbiAgLml0ZW0tdXBkYXRlIHtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6LjVyZW07XG4gIH1cbiAgLm1vYmlsZS11cGRhdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6JGJsYWNrO1xuICAgIGJvcmRlcjowO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6JGdyZWVuO1xuICAgIGZvbnQtd2VpZ2h0OjgwMDtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxufVxuXG4vKi8vLy8vIFJlbW92ZSBJdGVtIFBvcHVwIC8vLy8vKi9cbiN3YXJlLWJveDIuY2FydCB7XG4gIC5pdGVtLXBvcHVwLWN0YSB7XG4gICAgcGFkZGluZy1sZWZ0OjA7XG4gIH1cbn1cblxuXG4iLCIjaW52ZW50b3J5IHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgcGFkZGluZy10b3A6MnJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbToycmVtO1xuICB9XG59XG5cbi8vIFJlc3VsdHMgLyBmaWx0ZXJcbiNpbnZlbnRvcnksLmludmVudG9yeS1oZWFkIHtcbiAgLmZpbHRlciB7XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAmLXNlbGVjdGlvbiB7XG4gICAgICBib3JkZXItcmlnaHQ6MXB4IHNvbGlkICRncmF5O1xuICAgICAgaDUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgZm9udC1zaXplOjEuMTVyZW07XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTouODc1cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDowO1xuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOi43NXJlbTtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6MDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1hY3RpdmUge1xuICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OicnO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICB3aWR0aDo3NSU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGdyYXk7XG4gICAgICAgIGhlaWdodDoxcHg7XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOjJyZW07XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6JGJsdWU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjkwMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDouNXJlbTtcbiAgICAgICAgJiNjbGVhciB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOi41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLXNlbGVjdGVkIHtcbiAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgZGlzcGxheTppbmxpbmUtYmxvY2s7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgICAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6JHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWJ1dHRvbiB7XG4gICAgICBjb2xvcjokcmVkO1xuICAgICAgZm9udC13ZWlnaHQ6OTAwO1xuICAgICAgZm9udC1zaXplOjFyZW07XG4gICAgfVxuICAgICYtcGFydC1udW1iZXIge1xuICAgICAgbWF4LXdpZHRoOjgwJTtcbiAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmF5O1xuICAgICAgcGFkZGluZy1ib3R0b206MXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206MXJlbTtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgcGFkZGluZzouNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBmb250LXNpemU6MXJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1zaG9wYnkge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbToxcmVtO1xuICAgICAgfVxuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobWVkaXVtKSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206NXB4IHNvbGlkICRncmF5OyAgXG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbToycmVtO1xuICAgICAgICBtYXgtd2lkdGg6ODAlO1xuICAgICAgfVxuICAgICAgbGFiZWwsc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgfVxuICAgICAgbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6LjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQgKG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDoxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50IChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgZm9udC1zaXplOi45cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoNSB7XG4gICAgICAgIGNvbG9yOiRyZWQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuICAgICAgICAgIGZvbnQtc2l6ZToxLjE1cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6MXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNjbGVhclNLVSB7XG4gICAgZGlzcGxheTpub25lO1xuICB9XG59XG5cbi8vIGludmVudG9yeSBvcHRpb25zIGJhclxuI2ludmVudG9yeSB7XG4gIC5vcHRpb25zLWJhciB7XG4gICAgYm9yZGVyLWJvdHRvbTo1cHggc29saWQgJGdyYXk7XG4gICAgcGFkZGluZy1ib3R0b206MnJlbTtcbiAgICBjb2xvcjokYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIHNlbGVjdCxpbnB1dCB7XG4gICAgICBmb250LXNpemU6Ljc1cmVtO1xuICAgIH1cbiAgICA+IGRpdiB7XG4gICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci1yaWdodDoxcHggc29saWQgJGdyYXk7XG4gICAgICB9XG4gICAgfSBcbiAgICAmLXZpZXcge1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XG4gICAgICAgIGNvbG9yOiRpbnYtbGlnaHQtZ3JheTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgfVxuICAgICAgfSAgIFxuICAgICAgYnV0dG9uLmFjdGl2ZS12aWV3IHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLWluc3RvY2sge1xuICAgICAgaW5wdXQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICB9XG4gICAgfVxuICAgICYtc29ydCB7XG4gICAgICBzZWxlY3Qge1xuICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0Oi41cmVtO1xuICAgICAgfVxuICAgIH1cbiAgICAucmVzdWx0LWNvdW50LCAucmVzdWx0LWNvdW50LWVtcHR5IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6LjI1cmVtO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLy8gbW9iaWxlIFxuI2ludmVudG9yeSwuaW52ZW50b3J5LWhlYWQge1xuICBAaW5jbHVkZSBicmVha3BvaW50IChtZWRpdW0gZG93bikge1xuICAgIC5maWx0ZXIge1xuICAgICAgJi1zZWxlY3Rpb24ge1xuICAgICAgICBib3JkZXI6MDtcbiAgICAgICAgcGFkZGluZzouNzVyZW07XG4gICAgICAgIGhlaWdodDo1MHZoO1xuICAgICAgICBvdmVyZmxvdy14OnNjcm9sbDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgIGJvcmRlcjoxcHggc29saWQgJGdyYXk7XG4gICAgfVxuICB9XG4gIC5hY2NvcmRpb24ge1xuICAgICYtaXRlbSB7XG4gICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiRwcmltYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYtdGl0bGUge1xuICAgICAgZm9udC1mYW1pbHk6JGhlYWRpbmctZm9udC1mYW1pbHk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6NTAwO1xuICAgICAgYm9yZGVyOjA7XG4gICAgfVxuICB9XG59IiwiLmludi50aGFua3Mge1xuLyogIC5wYWdlLWNvbnRlbnQge1xuICAgIHBhZGRpbmctdG9wOjFyZW07XG4gIH0qL1xuICBoMyB7XG4gICAgY29sb3I6JGdyZWVuO1xuICAgIGZvbnQtc2l6ZTo0cmVtO1xuICB9XG4gIC5idXR0b25zID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjokcmVkO1xuICAgIGNvbG9yOiR3aGl0ZTtcbiAgICBwYWRkaW5nOjFyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZToxcmVtO1xuICAgIGxldHRlci1zcGFjaW5nOjA7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDo0MDA7XG4gIH1cbiAgLnRoYW5rcy10ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6MXJlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OjFyZW07XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCAobGFyZ2UpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6M3JlbTtcbiAgICAgIHBhZGRpbmctbGVmdDozcmVtO1xuICAgIH1cbiAgfVxufSJdfQ== */
