@charset "UTF-8";
/**
 * Foundation for Sites
 * Version 6.9.0
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@import url("https://fonts.googleapis.com/css2?family=League+Spartan:wght@400;500;600;700;800&family=Libre+Franklin&display=swap");
@media print, screen and (min-width: 48em) {
  .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;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

[type=checkbox],
[type=radio] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

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

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

.foundation-mq {
  font-family: "small=0em&medium=48em&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;
}

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

pre {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
}

.is-visible {
  display: block !important;
}

.is-hidden {
  display: none !important;
}

[type=text], [type=password], [type=date], [type=datetime], [type=datetime-local], [type=month], [type=week], [type=email], [type=number], [type=search], [type=tel], [type=time], [type=url], [type=color],
textarea {
  -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: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
.input-group > :first-child, .input-group > :first-child.input-group-button > * {
  border-radius: 0 0 0 0;
}
.input-group > :last-child, .input-group > :last-child.input-group-button > * {
  border-radius: 0 0 0 0;
}

.input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label, .input-group-button, .input-group-field, .input-group-label {
  margin: 0;
  white-space: nowrap;
}

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #cacaca;
  background: #e6e6e6;
  color: #0a0a0a;
  text-align: center;
  white-space: nowrap;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.input-group-label:first-child {
  border-right: 0;
}
.input-group-label:last-child {
  border-left: 0;
}

.input-group-field {
  border-radius: 0;
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
  min-width: 0;
}

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

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

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

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

select {
  height: 2.4375rem;
  margin: 0 0 1rem;
  padding: 0.5rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 1px solid #cacaca;
  border-radius: 0;
  background-color: #fefefe;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #0a0a0a;
  -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: 48em) {
  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: 48em) {
  .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;
    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: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.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: 48em) {
  .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: 48em) {
  .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: 48em) {
  .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: 48em) {
  .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;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.button-group::before, .button-group::after {
  display: none;
}
.button-group::before, .button-group::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.button-group::after {
  clear: both;
}
.button-group .button {
  margin: 0;
  margin-right: 1px;
  margin-bottom: 1px;
  font-size: 0.9rem;
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.button-group .button:last-child {
  margin-right: 0;
}
.button-group.tiny .button {
  font-size: 0.6rem;
}
.button-group.small .button {
  font-size: 0.75rem;
}
.button-group.large .button {
  font-size: 1.25rem;
}
.button-group.expanded .button {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.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-group.stacked-for-small, .button-group.stacked-for-medium {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.button-group.stacked .button, .button-group.stacked-for-small .button, .button-group.stacked-for-medium .button {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
}
.button-group.stacked .button:last-child, .button-group.stacked-for-small .button:last-child, .button-group.stacked-for-medium .button:last-child {
  margin-bottom: 0;
}
.button-group.stacked.expanded .button, .button-group.stacked-for-small.expanded .button, .button-group.stacked-for-medium.expanded .button {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
@media print, screen and (min-width: 48em) {
  .button-group.stacked-for-small .button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 64em) {
  .button-group.stacked-for-medium .button {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
@media print, screen and (max-width: 47.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%);
      -ms-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%);
      -ms-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);
      -ms-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%);
      -ms-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%);
      -ms-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: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.breadcrumbs::after {
  clear: both;
}
.breadcrumbs li {
  float: left;
  font-size: 0.6875rem;
  color: #0a0a0a;
  cursor: default;
  text-transform: uppercase;
}
.breadcrumbs li:not(:last-child)::after {
  position: relative;
  margin: 0 0.75rem;
  opacity: 1;
  content: "/";
  color: #cacaca;
}
.breadcrumbs a {
  color: #1779ba;
}
.breadcrumbs a:hover {
  text-decoration: underline;
}
.breadcrumbs .disabled {
  color: #cacaca;
  cursor: not-allowed;
}

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

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

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

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

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

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

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

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

.pagination {
  margin-left: 0;
  margin-bottom: 1rem;
}
.pagination::before, .pagination::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.pagination::after {
  clear: both;
}
.pagination li {
  margin-right: 0.0625rem;
  border-radius: 0;
  font-size: 0.875rem;
  display: none;
}
.pagination li:last-child, .pagination li:first-child {
  display: inline-block;
}
@media print, screen and (min-width: 48em) {
  .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%);
      -ms-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%);
      -ms-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%);
      -ms-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%);
      -ms-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: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1rem;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
}
.media-object img {
  max-width: none;
}
@media print, screen and (max-width: 47.99875em) {
  .media-object.stack-for-small {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}

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

.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%);
      -ms-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: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.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: 4px solid #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;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
[data-whatinput=mouse] .menu li {
  outline: 0;
}
.menu a,
.menu .button {
  line-height: 1;
  text-decoration: none;
  display: block;
  padding: 0.7rem 1rem;
}
.menu input,
.menu select,
.menu a,
.menu button {
  margin-bottom: 0;
}
.menu input {
  display: inline-block;
}
.menu, .menu.horizontal {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
}
.menu.vertical {
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.menu.vertical.icon-top li a img,
.menu.vertical.icon-top li a i,
.menu.vertical.icon-top li a svg, .menu.vertical.icon-bottom li a img,
.menu.vertical.icon-bottom li a i,
.menu.vertical.icon-bottom li a svg {
  text-align: left;
}
.menu.expanded li {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}
.menu.expanded.icon-top li a img,
.menu.expanded.icon-top li a i,
.menu.expanded.icon-top li a svg, .menu.expanded.icon-bottom li a img,
.menu.expanded.icon-bottom li a i,
.menu.expanded.icon-bottom li a svg {
  text-align: left;
}
.menu.simple {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.menu.simple li + li {
  margin-left: 1rem;
}
.menu.simple a {
  padding: 0;
}
@media print, screen and (min-width: 48em) {
  .menu.medium-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .menu.medium-vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.medium-expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.medium-simple li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
}
@media print, screen and (min-width: 64em) {
  .menu.large-horizontal {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .menu.large-vertical {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .menu.large-expanded li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
  .menu.large-simple li {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
  }
}
.menu.nested {
  margin-right: 0;
  margin-left: 1rem;
}
.menu.icons a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-top a, .menu.icon-right a, .menu.icon-bottom a, .menu.icon-left a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.menu.icon-left li a, .menu.nested.icon-left li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}
.menu.icon-left li a img,
.menu.icon-left li a i,
.menu.icon-left li a svg, .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;
}
.menu.icon-right li a, .menu.nested.icon-right li a {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row nowrap;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
}
.menu.icon-right li a img,
.menu.icon-right li a i,
.menu.icon-right li a svg, .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;
}
.menu.icon-top li a, .menu.nested.icon-top li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.menu.icon-top li a img,
.menu.icon-top li a i,
.menu.icon-top li a svg, .menu.nested.icon-top li a img,
.menu.nested.icon-top li a i,
.menu.nested.icon-top li a svg {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu.icon-bottom li a, .menu.nested.icon-bottom li a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
}
.menu.icon-bottom li a img,
.menu.icon-bottom li a i,
.menu.icon-bottom li a svg, .menu.nested.icon-bottom li a img,
.menu.nested.icon-bottom li a i,
.menu.nested.icon-bottom li a svg {
  -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
          align-self: stretch;
  margin-bottom: 0.25rem;
  text-align: center;
}
.menu .is-active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu .active > a {
  background: #1779ba;
  color: #fefefe;
}
.menu.align-left {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu.align-right li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.menu.align-right li .submenu li {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu.align-right.vertical li {
  display: block;
  text-align: right;
}
.menu.align-right.vertical li .submenu li {
  text-align: right;
}
.menu.align-right.icon-top li a img,
.menu.align-right.icon-top li a i,
.menu.align-right.icon-top li a svg, .menu.align-right.icon-bottom li a img,
.menu.align-right.icon-bottom li a i,
.menu.align-right.icon-bottom li a svg {
  text-align: right;
}
.menu.align-right .nested {
  margin-right: 1rem;
  margin-left: 0;
}
.menu.align-center li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.menu.align-center li .submenu li {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}
.menu .menu-text {
  padding: 0.7rem 1rem;
  font-weight: bold;
  line-height: 1;
  color: inherit;
}

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

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

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

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

.accordion-menu li {
  width: 100%;
}
.accordion-menu a {
  padding: 0.7rem 1rem;
}
.accordion-menu .is-accordion-submenu a {
  padding: 0.7rem 1rem;
}
.accordion-menu .nested.is-accordion-submenu {
  margin-right: 0;
  margin-left: 1rem;
}
.accordion-menu.align-right .nested.is-accordion-submenu {
  margin-right: 1rem;
  margin-left: 0;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a {
  position: relative;
}
.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle) > a::after {
  display: block;
  width: 0;
  height: 0;
  border-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);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

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

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

.submenu-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
.submenu-toggle::after {
  display: block;
  width: 0;
  height: 0;
  border-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);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
  -webkit-transform-origin: 50% 50%;
      -ms-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}

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

.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%);
      -ms-transform: translateX(-100%);
          transform: translateX(-100%);
}
.drilldown .is-drilldown-submenu.is-closing {
  -webkit-transform: translateX(100%);
      -ms-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 {
  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: 48em) {
  .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);
      -ms-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);
      -ms-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);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left {
  -webkit-transform: translateX(-250px);
      -ms-transform: translateX(-250px);
          transform: translateX(-250px);
}
.off-canvas-content .off-canvas.position-left.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-left.has-transition-push {
  -webkit-transform: translateX(250px);
      -ms-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);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}
.off-canvas-content .off-canvas.position-right {
  -webkit-transform: translateX(250px);
      -ms-transform: translateX(250px);
          transform: translateX(250px);
}
.off-canvas-content .off-canvas.position-right.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

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

.position-top {
  top: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}
.off-canvas-content .off-canvas.position-top {
  -webkit-transform: translateY(-250px);
      -ms-transform: translateY(-250px);
          transform: translateY(-250px);
}
.off-canvas-content .off-canvas.position-top.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

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

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

.position-bottom {
  bottom: 0;
  left: 0;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  height: 250px;
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}
.off-canvas-content .off-canvas.position-bottom {
  -webkit-transform: translateY(250px);
      -ms-transform: translateY(250px);
          transform: translateY(250px);
}
.off-canvas-content .off-canvas.position-bottom.is-transition-overlap.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

.off-canvas-content.is-open-bottom.has-transition-push {
  -webkit-transform: translateY(-250px);
      -ms-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;
      -ms-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);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.off-canvas-content .off-canvas.is-open {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}

@media print, screen and (min-width: 48em) {
  .position-left.reveal-for-medium {
    -webkit-transform: none;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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;
        -ms-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: 48em) {
  .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;
        -ms-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;
        -ms-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: 48em) {
  .reveal {
    min-height: 0;
  }
}
.reveal .column, .reveal .columns {
  min-width: 0;
}
.reveal > :last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 48em) {
  .reveal {
    width: 600px;
    max-width: 75rem;
  }
}
.reveal.collapse {
  padding: 0;
}
@media print, screen and (min-width: 48em) {
  .reveal.tiny {
    width: 30%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 48em) {
  .reveal.small {
    width: 50%;
    max-width: 75rem;
  }
}
@media print, screen and (min-width: 48em) {
  .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: 47.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;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.title-bar .menu-icon {
  margin-left: 0.25rem;
  margin-right: 0.25rem;
}

.title-bar-left,
.title-bar-right {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0px;
      -ms-flex: 1 1 0px;
          flex: 1 1 0px;
}

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

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

.top-bar {
  padding: 0.5rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.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 {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.top-bar .top-bar-left,
.top-bar .top-bar-right {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 100%;
      -ms-flex: 0 0 100%;
          flex: 0 0 100%;
  max-width: 100%;
}

@media print, screen and (min-width: 48em) {
  .top-bar {
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
  .top-bar .top-bar-left {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin-right: auto;
  }
  .top-bar .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    margin-left: auto;
  }
}
@media print, screen and (max-width: 63.99875em) {
  .top-bar.stacked-for-medium {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top-bar.stacked-for-medium .top-bar-left,
  .top-bar.stacked-for-medium .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}
@media print, screen and (max-width: 74.99875em) {
  .top-bar.stacked-for-large {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
  .top-bar.stacked-for-large .top-bar-left,
  .top-bar.stacked-for-large .top-bar-right {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%;
    max-width: 100%;
  }
}

.top-bar-title {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0.5rem 1rem 0.5rem 0;
}

.top-bar-left,
.top-bar-right {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-center {
  display: block;
  margin-right: auto;
  margin-left: auto;
}

.clearfix::before, .clearfix::after {
  display: table;
  content: " ";
  -webkit-flex-basis: 0;
      -ms-flex-preferred-size: 0;
          flex-basis: 0;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
.clearfix::after {
  clear: both;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.invisible {
  visibility: hidden;
}

.visible {
  visibility: visible;
}

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

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

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

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

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

@media screen and (max-width: 47.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%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.alignfull {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  max-width: 100vw;
}

body,
html {
  position: relative;
  overflow-x: hidden;
  min-height: 100vh;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  scroll-behavior: smooth;
}
@media print, screen and (min-width: 48em) {
  body.menu-expanded,
  html.menu-expanded {
    overflow: hidden;
    height: 100vh;
  }
}
@media print, screen and (max-width: 47.99875em) {
  body.menu-expanded .header,
  html.menu-expanded .header {
    overflow: hidden;
    height: 100vh;
    overflow-y: auto;
  }
}
body.menu-expanded .header .main-menu,
html.menu-expanded .header .main-menu {
  -webkit-transform: translateX(0);
      -ms-transform: translateX(0);
          transform: translateX(0);
  display: block;
}

.button {
  height: 3.1875rem;
  line-height: 3.1875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.1875rem;
  background: none;
  color: #173766;
  border-radius: 2rem;
  border: 2.5px solid #E56D06;
}
@media print, screen and (min-width: 48em) {
  .button {
    height: 3.875rem;
    line-height: 3.875rem;
    padding: 0 2.8125rem;
    border-radius: 1.9375rem;
  }
}
.button:hover, .button:focus {
  color: #fff;
  background: #173766;
  border-color: #173766;
}
.button.dark {
  color: #fff;
  background: none;
}
.button.dark:hover, .button.dark:focus {
  color: #173766;
  background: #fff;
}

#wpadminbar {
  position: fixed;
}

.wp-block-buttons .wp-block-button {
  margin: 0 0 1.875rem 0;
  display: block;
  width: 100%;
}
@media print, screen and (min-width: 48em) {
  .wp-block-buttons .wp-block-button {
    display: inline-block;
    width: auto;
  }
}
.wp-block-buttons .wp-block-button .wp-element-button {
  height: 3.1875rem;
  line-height: 3.1875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.1875rem;
  background: none;
  color: #173766;
  border-radius: 2rem;
  border: 2.5px solid #E56D06;
}
@media print, screen and (min-width: 48em) {
  .wp-block-buttons .wp-block-button .wp-element-button {
    height: 3.875rem;
    line-height: 3.875rem;
    padding: 0 2.8125rem;
    border-radius: 1.9375rem;
  }
}
.wp-block-buttons .wp-block-button .wp-element-button:hover, .wp-block-buttons .wp-block-button .wp-element-button:focus {
  color: #fff;
  background: #173766;
  border-color: #173766;
}

.inner-page-content {
  padding: 0 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .inner-page-content {
    padding: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .inner-page-content .alignfull {
    margin-left: calc(-50vw + 67.25%);
    width: 100vw;
  }
}
.inner-page-content > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.inner-page-content > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 1.5625rem;
}
.inner-page-content > ul li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}

.wp-block-heading {
  color: #173766;
}

.reveal-overlay {
  background-color: rgba(0, 0, 0, 0.5) !important;
  background-blend-mode: multiply;
}

.is-reveal-open header, .is-reveal-open #main, .is-reveal-open footer {
  -webkit-filter: blur(5px);
          filter: blur(5px);
}

@media print, screen and (max-width: 47.99875em) {
  #main > .row > .columns.large-12 {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem;
  }
}
#main .no-padding {
  padding-top: 0;
  padding-bottom: 0;
}

h1 {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 2.625rem;
  line-height: 3.125rem;
}
@media print, screen and (min-width: 48em) {
  h1 {
    font-size: 3.4375rem;
    line-height: 3.75rem;
  }
}

h2 {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 2.4375rem;
  line-height: 3.125rem;
}
@media print, screen and (min-width: 48em) {
  h2 {
    font-size: 2.875rem;
    line-height: 3.4375rem;
  }
}

h3 {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 2.0625rem;
  line-height: 2.5rem;
}
@media print, screen and (min-width: 48em) {
  h3 {
    font-size: 2.375rem;
    line-height: 3.125rem;
  }
}

h4 {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.8125rem;
  line-height: 2.3125rem;
}

h5 {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.6875rem;
}
@media print, screen and (min-width: 48em) {
  h5 {
    font-size: 1.5rem;
    line-height: 1.875rem;
  }
}

h6 {
  font-family: "League Spartan", sans-serif;
  font-weight: 600;
  font-size: 1.3125rem;
  line-height: 1.875rem;
}

p {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 2rem;
  color: #18202C;
}
p.has-medium-font-size {
  font-size: 1.3125rem;
  line-height: 1.9375rem;
}
@media print, screen and (min-width: 48em) {
  p.has-medium-font-size {
    font-size: 1.5rem;
    line-height: 2.375rem;
  }
}

ul li, ol li {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.0625rem;
  line-height: 1.6875rem;
  color: #2D3344;
}
@media print, screen and (min-width: 48em) {
  ul li, ol li {
    font-size: 1.1875rem;
    line-height: 2rem;
  }
}

@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.eot?s0r28q1");
  src: url("../fonts/icomoon.eot?s0r28q1#iefix") format("embedded-opentype"), url("../fonts/icomoon.woff2?s0r28q1") format("woff2"), url("../fonts/icomoon.ttf?s0r28q1") format("truetype"), url("../fonts/icomoon.woff?s0r28q1") format("woff"), url("../fonts/icomoon.svg?s0r28q1#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^=icon-], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "icomoon" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-play3:before {
  content: "\ea1c";
}

.icon-close:before {
  content: "\e900";
}

.icon-download:before {
  content: "\e901";
}

.icon-expand:before {
  content: "\e902";
}

.icon-long-arrow-back:before {
  content: "\e903";
}

.icon-arrow:before {
  content: "\e904";
}

.icon-play:before {
  content: "\e905";
}

.icon-small-arrow-down:before {
  content: "\e906";
}

.icon-wave:before {
  content: "\e907";
}

.icon-long-arrow:before {
  content: "\e909";
}

.icon-minus:before {
  content: "\e90a";
}

.icon-plus:before {
  content: "\e90b";
}

.icon-link:before {
  content: "\e90c";
}

.icon-pdf:before {
  content: "\e90d";
}

.icon-quote:before {
  content: "\e90e";
}

.icon-print:before {
  content: "\e90f";
}

.icon-search:before {
  content: "\e910";
}

.icon-linkedin:before {
  content: "\e911";
}

.icon-youtube:before {
  content: "\e912";
}

.icon-facebook:before {
  content: "\e913";
}

.icon-twitter:before {
  content: "\e908";
}

.icon-menu:before {
  content: "\e915";
}

@media print {
  [data-aos^=fade][data-aos^=fade] {
    opacity: 1 !important;
    -webkit-transform: none !important;
        -ms-transform: none !important;
            transform: none !important;
  }
  body {
    display: block !important;
  }
  header.header {
    top: 0 !important;
  }
  .header .header-inner {
    padding: 0 !important;
  }
  .header,
  .case-banner img,
  .case-banner .case-banner-wrapper,
  .header .header-inner {
    position: relative !important;
  }
  .case-study-container .alignfull {
    margin: 0 !important;
  }
  .banner-details h1,
  .banner-details h4 {
    position: relative;
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
    page-break-inside: avoid;
  }
  #main {
    padding-top: 0 !important;
  }
  .header-right-section,
  .print-wrapper,
  #main > .row > .medium-4,
  footer.footer,
  .show-for-sr {
    display: none !important;
  }
  #main > .row > .medium-8 {
    width: 100% !important;
  }
}
.breadcrumbs > span,
.yoast-breadcrumbs > span {
  color: #333C42;
}
.breadcrumbs > span > span,
.yoast-breadcrumbs > span > span {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  color: #333C42;
  padding: 0 0.625rem 0 0.625rem;
}
.breadcrumbs > span > span a,
.yoast-breadcrumbs > span > span a {
  color: #333C42;
}
.breadcrumbs > span > span.breadcrumb_last,
.yoast-breadcrumbs > span > span.breadcrumb_last {
  padding: 0 0.625rem 0 0.625rem;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 700;
}
.breadcrumbs > span > span:first-child,
.yoast-breadcrumbs > span > span:first-child {
  padding-left: 0;
}

body.single-career .page-title-wrapper, body.single-post .page-title-wrapper {
  padding: 2.5rem 1.5625rem 0 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  body.single-career .page-title-wrapper, body.single-post .page-title-wrapper {
    max-width: 75.3125rem;
    margin: 0 auto;
    padding: 0;
  }
}
body.single-career .page-title-wrapper .the-title, body.single-post .page-title-wrapper .the-title {
  margin: 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  body.single-career .page-title-wrapper .the-title, body.single-post .page-title-wrapper .the-title {
    margin: 3.75rem 0 5rem 0;
    max-width: 50rem;
  }
}
body.single-career .page-title-wrapper .the-title h3, body.single-career .page-title-wrapper .the-title h5, body.single-post .page-title-wrapper .the-title h3, body.single-post .page-title-wrapper .the-title h5 {
  color: #173766;
}
body.single-career .career-details, body.single-post .career-details {
  padding: 0 1.5625rem 5rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  body.single-career .career-details, body.single-post .career-details {
    max-width: 75.3125rem;
    margin: 0 auto 3.125rem auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
}
body.single-career .career-details .career-details-tabs, body.single-post .career-details .career-details-tabs {
  margin: 0 0 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  body.single-career .career-details .career-details-tabs, body.single-post .career-details .career-details-tabs {
    width: 17.25rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 6.25rem 0 0;
  }
}
body.single-career .career-details .career-details-tabs .tabs, body.single-post .career-details .career-details-tabs .tabs {
  border: none;
  background: none;
}
body.single-career .career-details .career-details-tabs .tabs .tabs-title, body.single-post .career-details .career-details-tabs .tabs .tabs-title {
  background: #CCF0F7;
  border-radius: 0.625rem;
  margin-bottom: 0.3125rem;
  padding: 0.9375rem 1.25rem;
}
body.single-career .career-details .career-details-tabs .tabs .tabs-title a, body.single-post .career-details .career-details-tabs .tabs .tabs-title a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25rem;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  color: #173766;
  padding: 0;
  display: inline;
  border-bottom: 2px solid transparent;
}
body.single-career .career-details .career-details-tabs .tabs .tabs-title.is-active, body.single-career .career-details .career-details-tabs .tabs .tabs-title:hover, body.single-post .career-details .career-details-tabs .tabs .tabs-title.is-active, body.single-post .career-details .career-details-tabs .tabs .tabs-title:hover {
  background: #B2E4ED;
}
body.single-career .career-details .career-details-tabs .tabs .tabs-title.is-active a, body.single-career .career-details .career-details-tabs .tabs .tabs-title:hover a, body.single-post .career-details .career-details-tabs .tabs .tabs-title.is-active a, body.single-post .career-details .career-details-tabs .tabs .tabs-title:hover a {
  border-color: #173766;
  background: none;
}
@media print, screen and (min-width: 48em) {
  body.single-career .career-details .career-details-content, body.single-post .career-details .career-details-content {
    width: 49.375rem;
  }
}
body.single-career .career-details .career-details-content .tabs-content, body.single-post .career-details .career-details-content .tabs-content {
  border: none;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel, body.single-post .career-details .career-details-content .tabs-content .tabs-panel {
  padding: 0;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .wysiwyg a, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .wysiwyg a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .wysiwyg a:hover, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .wysiwyg a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item {
  border-bottom: 1px solid #173766;
  padding: 1.25rem 0;
}
@media print, screen and (min-width: 48em) {
  body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 0.625rem;
       -moz-column-gap: 0.625rem;
            column-gap: 0.625rem;
  }
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item:first-child, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item:first-child {
  border-top: 1px solid #173766;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  color: #18202C;
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span.key, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span.key {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  display: block;
}
@media print, screen and (min-width: 48em) {
  body.single-career .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span.key, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .position-details .sub-item span.key {
    width: 10.625rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    display: inline-block;
  }
}
body.single-career .career-details .career-details-content .tabs-content .tabs-panel .accordion-wrapper.theme-1, body.single-post .career-details .career-details-content .tabs-content .tabs-panel .accordion-wrapper.theme-1 {
  padding: 0;
}

.back-wrapper {
  margin-top: 2.5rem;
}
@media print, screen and (min-width: 48em) {
  .back-wrapper {
    margin-top: 4.375rem;
  }
}
.back-wrapper a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  color: #173766;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-left: 0.625rem;
}
.back-wrapper a i {
  color: #E56D06;
  position: relative;
  right: 0.3125rem;
  top: -0.0625rem;
  font-size: 0.625rem;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.back-wrapper a:hover i {
  right: 0.9375rem;
}

.accordion-wrapper.theme-1 .accordion {
  background: none;
  border-top: 4.5px solid #173766;
}
.accordion-wrapper.theme-1 .accordion .accordion-item {
  border-bottom: 1px solid #173766;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-title {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.75rem;
  border: none;
  text-decoration: none;
  padding: 1.25rem 1.875rem 1.25rem 0;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-title:hover, .accordion-wrapper.theme-1 .accordion .accordion-item .accordion-title:focus {
  background: none;
  text-decoration: none;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-title:before {
  font-size: 1rem;
  content: "\e90b";
  font-family: "icomoon", sans-serif;
  color: #173766;
  font-weight: 400;
  top: 1.5625rem;
  right: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  background: #CCF0F7;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content {
  border: none;
  background: none;
  padding: 0 0 1.875rem 0;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content p {
  margin-bottom: 1.25rem;
  color: #18202C;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
.accordion-wrapper.theme-1 .accordion .accordion-item .accordion-content > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.accordion-wrapper.theme-1 .accordion .accordion-item.is-active .accordion-title {
  background: none;
}
.accordion-wrapper.theme-1 .accordion .accordion-item.is-active .accordion-title:before {
  content: "\e90a";
  font-size: 0.09375rem;
}
.accordion-wrapper.theme-2 .accordion {
  background: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item {
  border-radius: 0.6875rem;
  background: #FFFFFF;
  margin-bottom: 0.625rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-title {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  line-height: 1.75rem;
  border: none;
  text-decoration: none;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 1.6875rem 2.5rem 1.6875rem 4.5rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-title span {
  margin-left: auto;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  color: #18202C;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-title:hover, .accordion-wrapper.theme-2 .accordion .accordion-item .accordion-title:focus {
  background: none;
  text-decoration: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-title:before {
  font-size: 1rem;
  content: "\e90b";
  font-family: "icomoon", sans-serif;
  color: #173766;
  font-weight: 400;
  top: 2rem;
  left: 0.8125rem;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  background: #CCF0F7;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content {
  border: none;
  background: none;
  padding: 0.625rem 2.5rem 1.875rem 4.5rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content p {
  margin-bottom: 1.25rem;
  color: #18202C;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table {
  background: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table thead {
  background: none;
  border: none;
  border-bottom: 2px solid #707070;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table thead tr {
  background: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table thead tr th {
  padding: 0 0 2.8125rem 0;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.1875rem;
  color: #18202C;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table thead tr th:last-child {
  text-align: right;
  font-size: 1.3125rem;
  color: #173766;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody {
  background: none;
  border: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr {
  background: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr td {
  color: #18202C;
  padding: 0.625rem 0;
  border-bottom: 1px solid #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 0.9375rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr td:last-child {
  text-align: right;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr td a {
  color: #18202C;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
  padding: 0;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr td a:after {
  content: "+";
  font-size: 1.25rem;
  margin-left: 0.625rem;
}
.accordion-wrapper.theme-2 .accordion .accordion-item .accordion-content .table table tbody tr td a:hover {
  border-bottom: 1px solid #18202C;
}
.accordion-wrapper.theme-2 .accordion .accordion-item.is-active .accordion-title {
  background: none;
}
.accordion-wrapper.theme-2 .accordion .accordion-item.is-active .accordion-title:before {
  content: "\e90a";
  font-size: 0.09375rem;
}

body.page-template-page-landing {
  background: #EAF9FC;
}
body.page-template-page-landing header {
  background: #EAF9FC;
}
body.page-template-page-details .details-page-container {
  margin-bottom: 2.5rem;
}
body.page-template-page-details .details-page-container h4 {
  color: #173766;
}
body.page-template-page-details .details-page-container > h4 {
  margin: 0 0 2.5rem 0;
}
body.page-template-page-details .details-page-container > h3, body.page-template-page-details .details-page-container h4, body.page-template-page-details .details-page-container h5, body.page-template-page-details .details-page-container h6 {
  color: #173766;
}
body.page-template-page-details .details-page-container > p {
  color: #18202C;
}
body.page-template-page-details .details-page-container > p a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
body.page-template-page-details .details-page-container > p a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
body.page-template-page-details .details-page-container > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
body.page-template-page-details .details-page-container > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
body.page-template-page-details .details-page-container > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
body.page-template-page-details .details-page-container > ul > li > a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
body.page-template-page-details .details-page-container > ul > li > a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
body.page-template-page-details .details-page-container > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
body.page-template-page-details .details-page-container > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
body.page-template-page-details .details-page-container > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
body.page-template-page-details .details-page-container > ul > li > ul li a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
body.page-template-page-details .details-page-container > ul > li > ul li a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}

.select2-container {
  width: 100% !important;
}
.select2-container .selection .select2-selection {
  height: 3.375rem;
  border-radius: 1.6875rem;
  background: none;
  border: 2px solid #00A4C4;
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 1.5625rem;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.1875rem;
}
.select2-container .selection .select2-selection .select2-selection__arrow {
  right: 1.5625rem;
  top: 0.75rem;
}
.select2-container .selection .select2-selection .select2-selection__arrow:after {
  content: "\e906";
  font-family: "icomoon";
  font-size: 0.625rem;
  font-weight: 400;
  color: #00A4C4;
  display: inline-block;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.select2-container .selection .select2-selection .select2-selection__arrow b {
  border: none;
}
.select2-container .selection .select2-selection[aria-expanded=true] .select2-selection__arrow:after {
  -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotate(-180deg);
}
.select2-container .select2-dropdown {
  border-radius: 0.4375rem;
  border: none;
  overflow: hidden;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  top: 0.1875rem;
}
.select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option {
  padding: 0.375rem 0.9375rem;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 600;
  font-size: 1rem;
  background: #fff;
}
.select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option:hover, .select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option:focus {
  background: #EBEBEB;
  color: #000;
}
.select2-container .select2-dropdown .select2-results .select2-results__options .select2-results__option.select2-results__option--highlighted {
  color: #000;
}

.news-container {
  padding: 0 1.25rem 3.125rem 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .news-container {
    padding: 0 0 3.125rem 0;
    max-width: 50rem;
    margin: 0 -1rem;
  }
}

.wp-block-columns {
  margin: 0 0 3.125rem 0;
}
@media print, screen and (min-width: 48em) {
  .wp-block-columns {
    margin: 0 -1.25rem 3.125rem -1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .wp-block-columns .wp-block-column:first-child {
    padding-right: 3.75rem;
  }
}
@media print, screen and (min-width: 48em) {
  .wp-block-columns .wp-block-column:nth-of-type(2) {
    border-left: 1px solid #CED7E1;
    padding-left: 1.875rem;
  }
}
.wp-block-columns .wp-block-column > h4 {
  margin: 0 0 2.5rem 0;
}
.wp-block-columns .wp-block-column > h3, .wp-block-columns .wp-block-column h4, .wp-block-columns .wp-block-column h5, .wp-block-columns .wp-block-column h6 {
  color: #173766;
}
.wp-block-columns .wp-block-column > p {
  color: #18202C;
}
.wp-block-columns .wp-block-column > p a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.wp-block-columns .wp-block-column > p a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.wp-block-columns .wp-block-column > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.wp-block-columns .wp-block-column > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
.wp-block-columns .wp-block-column > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.wp-block-columns .wp-block-column > ul > li > a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.wp-block-columns .wp-block-column > ul > li > a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.wp-block-columns .wp-block-column > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
.wp-block-columns .wp-block-column > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
.wp-block-columns .wp-block-column > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.wp-block-columns .wp-block-column > ul > li > ul li a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.wp-block-columns .wp-block-column > ul > li > ul li a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.wp-block-columns .wp-block-column > .twitter-block,
.wp-block-columns .wp-block-column > .accordion-wrapper,
.wp-block-columns .wp-block-column > .files-block {
  padding-left: 0;
  padding-right: 0;
}

.wp-block-quote {
  padding: 1.875rem 2.5rem 1.25rem 2.5rem;
  border-radius: 2.1875rem;
  background: #EAF9FC;
  border: none;
  margin: 1.875rem 0;
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .wp-block-quote {
    margin: 3.75rem 0;
  }
}
.wp-block-quote:before {
  content: "\e90e";
  font-family: "icomoon", sans-serif;
  color: #173766;
  font-size: 2.1875rem;
  margin-bottom: 1.25rem;
  display: block;
}
@media print, screen and (min-width: 48em) {
  .wp-block-quote:before {
    font-size: 2.5rem;
  }
}
.wp-block-quote p {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.4375rem;
  line-height: 1.6875rem;
}
@media print, screen and (min-width: 48em) {
  .wp-block-quote p {
    font-size: 1.8125rem;
    line-height: 2.3125rem;
  }
}
.wp-block-quote cite {
  color: #000;
  margin-bottom: 1.25rem;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.0625rem;
}

@media print {
  .wp-block-quote {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
    margin: 0.625rem 0;
  }
}
.location-map {
  padding: 2.5rem 0;
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .location-map {
    padding: 2.5rem 0 4.375rem 0;
  }
}
.location-map .map-search {
  background: #EAF9FC;
  padding: 2.1875rem 1.875rem 3.125rem 1.875rem;
  margin: 0 0 3.125rem 0;
  border-radius: 1.75rem;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search {
    margin: 0 0 3.125rem 0;
    padding: 1.875rem;
  }
}
.location-map .map-search .map-search-inner {
  border-radius: 1.0625rem;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 5.25rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    background: #fefefe;
  }
}
.location-map .map-search .map-search-inner .cities-section {
  width: 100%;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .cities-section {
    width: 27.1875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.location-map .map-search .map-search-inner .cities-section .select2-container {
  width: 100%;
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .cities-section .select2-container {
    width: 27.1875rem !important;
  }
}
.location-map .map-search .map-search-inner .cities-section .select2-container .select2-selection--single {
  padding-left: 3.125rem;
  font-size: 1.1875rem;
  width: 100%;
  border: none;
  font-weight: 400;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .cities-section .select2-container .select2-selection--single {
    width: 27.1875rem !important;
  }
}
.location-map .map-search .map-search-inner .cities-section .select2-container .select2-selection__arrow {
  left: 1.25rem;
  right: auto;
  top: 50%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.location-map .map-search .map-search-inner .cities-section .select2-container .select2-selection__arrow:after {
  color: #E56D06;
}
.location-map .map-search .map-search-inner .or-section {
  height: 3.4375rem;
  line-height: 3.4375rem;
  width: 100%;
  text-align: center;
  text-transform: uppercase;
  font-size: 0.9375rem;
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .or-section {
    width: 4.6875rem;
    height: 2.1875rem;
    line-height: 2.1875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    border-left: 0.0625rem solid #173766;
    border-right: 0.0625rem solid #173766;
  }
}
.location-map .map-search .map-search-inner .search-section {
  position: relative;
  width: 100%;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .search-section {
    margin-bottom: 0;
  }
}
.location-map .map-search .map-search-inner .search-section i {
  position: absolute;
  left: 1.25rem;
  top: 1.25rem;
  font-size: 1rem;
  color: #18202C;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .search-section i {
    left: 1.875rem;
  }
}
.location-map .map-search .map-search-inner .search-section input {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding-left: 3.125rem;
  height: 3.75rem;
  line-height: 3.75rem;
  margin: 0;
  font-size: 1.1875rem;
  color: #18202C;
  border-radius: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .search-section input {
    border-radius: 0;
    padding-left: 4.375rem;
  }
}
.location-map .map-search .map-search-inner .search-section input::-webkit-input-placeholder {
  opacity: 0.9;
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 3.75rem;
  white-space: pre-line;
  position: relative;
}
.location-map .map-search .map-search-inner .search-section input::-moz-placeholder {
  opacity: 0.9;
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 3.75rem;
  white-space: pre-line;
  position: relative;
}
.location-map .map-search .map-search-inner .search-section input:-ms-input-placeholder {
  opacity: 0.9;
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 3.75rem;
  white-space: pre-line;
  position: relative;
}
.location-map .map-search .map-search-inner .search-section input::-ms-input-placeholder {
  opacity: 0.9;
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 3.75rem;
  white-space: pre-line;
  position: relative;
}
.location-map .map-search .map-search-inner .search-section input::placeholder {
  opacity: 0.9;
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 3.75rem;
  white-space: pre-line;
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .submit-section {
    margin-left: auto;
    margin-right: 1.25rem;
  }
}
.location-map .map-search .map-search-inner .submit-section input {
  height: 3.1875rem;
  line-height: 3.1875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.1875rem;
  background: none;
  color: #173766;
  border-radius: 2rem;
  border: 2.5px solid #E56D06;
}
@media print, screen and (min-width: 48em) {
  .location-map .map-search .map-search-inner .submit-section input {
    height: 3.875rem;
    line-height: 3.875rem;
    padding: 0 2.8125rem;
    border-radius: 1.9375rem;
  }
}
.location-map .map-search .map-search-inner .submit-section input:hover, .location-map .map-search .map-search-inner .submit-section input:focus {
  color: #fff;
  background: #173766;
  border-color: #173766;
}
.location-map #map {
  height: 21.875rem;
  width: 100%;
}
@media print, screen and (min-width: 48em) {
  .location-map #map {
    height: 43.4375rem;
    margin-bottom: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .location-map .locations {
    height: 43.4375rem;
    margin-bottom: 0;
    overflow-y: auto;
  }
}
.location-map .locations ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.location-map .locations ul li {
  display: block;
  border-bottom: 0.125rem solid #00A4C4;
  cursor: pointer;
}
.location-map .locations ul li:hover, .location-map .locations ul li.active {
  background: #EAF9FC;
}
.location-map .locations ul li .inner {
  padding: 2.1875rem 1.875rem;
}
.location-map .locations ul li h6 {
  color: #173766;
  font-size: 1.5rem;
}
.location-map .locations ul li .location-details {
  font-size: 1.1875rem;
  line-height: 1.75rem;
  color: #18202C;
  margin-bottom: 0.9375rem;
}
.location-map .locations ul li .location-hours {
  font-size: 1.1875rem;
  line-height: 1.75rem;
  color: #18202C;
}
.location-map .locations ul li .location-hours .hours-title {
  display: block;
  font-size: 1rem;
  text-transform: uppercase;
  color: #173766;
  font-weight: 700;
  margin-top: 1.25rem;
}
.location-map .locations ul li a {
  color: #173766;
}
.location-map .locations ul li a:hover, .location-map .locations ul li a:active {
  color: #18202C;
}

@media print, screen and (min-width: 48em) {
  .case-study-container .alignfull {
    margin-left: calc(-50vw + 76%);
    width: 100vw;
  }
}
.case-study-container .wp-block-image {
  margin: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .case-study-container .wp-block-image {
    margin: 2.5rem 0;
  }
}
.case-study-container .wp-block-image img {
  border-radius: 1.875rem;
}
.case-study-container .wp-block-quote {
  margin: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .case-study-container .wp-block-quote {
    margin: 3.75rem 0;
  }
}
.case-study-container .stats-block {
  padding: 0;
}

@media print, screen and (min-width: 48em) {
  .print-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.print-wrapper .print-case-study {
  padding: 0 2.5rem 0 1.875rem;
  height: 3.8125rem;
  line-height: 3.8125rem;
  border-radius: 2.25rem;
  margin: 1.875rem 1.5625rem 3.75rem 1.5625rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 48em) {
  .print-wrapper .print-case-study {
    height: 4.4375rem;
    line-height: 4.4375rem;
    margin: 50.625rem 0 0 0;
  }
}
.print-wrapper .print-case-study i {
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 100%;
  background: #E56D06;
  color: #FFFFFF;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 0.9375rem;
  font-size: 1.3125rem;
}

@media print {
  .wp-block-image {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
    display: block;
  }
}
.help-menu .help-menu-toggle {
  height: 3.625rem;
  line-height: 3.625rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  border: 2.5px solid #00A4C4;
  border-radius: 1.8125rem;
  padding: 0 1.875rem 0 2.1875rem;
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  letter-spacing: 0.015625rem;
  text-transform: uppercase;
  position: relative;
}
.help-menu .help-menu-toggle:after {
  content: "\e906";
  font-family: "icomoon", sans-serif;
  position: absolute;
  right: 1.875rem;
  font-size: 0.625rem;
  color: #00A4C4;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
.help-menu .help-menu-toggle.hover:after {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.help-menu .dropdown-pane {
  width: 23.5rem;
  border-radius: 2.1875rem;
  margin-top: 0.75rem;
  border: 1px solid #00A4C4;
  padding: 0;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.95);
  top: 6.875rem !important;
  max-height: 18.75rem;
  overflow-y: auto;
}
@media print, screen and (min-width: 48em) {
  .help-menu .dropdown-pane {
    max-height: 31.25rem;
  }
}
.help-menu .dropdown-pane ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.help-menu .dropdown-pane ul li {
  padding: 0.9375rem 2.1875rem;
}
.help-menu .dropdown-pane ul li a {
  padding: 0;
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25rem;
  letter-spacing: 0.015625rem;
  text-transform: uppercase;
  border-bottom: 2px solid transparent;
}
.help-menu .dropdown-pane ul li:hover {
  background: #CCF0F7;
}
.help-menu .dropdown-pane ul li:hover a {
  border-color: #173766;
}

.search-intro {
  padding: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .search-intro {
    padding: 0;
  }
}
.search-intro .search-title {
  margin: 2.5rem 0;
}
.search-intro .search-title h3 {
  color: #173766;
  position: relative;
}
.search-intro .search-title h3:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}

.search-results-wrapper {
  padding: 0 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .search-results-wrapper {
    padding: 0;
  }
}
.search-results-wrapper .post-details {
  padding: 0.9375rem 0;
  border-bottom: 1px solid #ddd;
}
@media print, screen and (min-width: 48em) {
  .search-results-wrapper .post-details {
    padding: 1.25rem 0;
  }
}
.search-results-wrapper .post-details h6 a {
  color: #173766;
}
.search-results-wrapper .post-details p {
  color: #333;
}

.search-results .pagination {
  margin: 2.5rem 1.875rem 5rem 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .search-results .pagination {
    margin: 2.5rem 0 5rem 0;
  }
}
.search-results .pagination .page-numbers {
  display: none;
}
.search-results .pagination .page-numbers.next {
  height: 3.1875rem;
  line-height: 3.1875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.1875rem;
  background: none;
  color: #173766;
  border-radius: 2rem;
  border: 2.5px solid #E56D06;
}
@media print, screen and (min-width: 48em) {
  .search-results .pagination .page-numbers.next {
    height: 3.875rem;
    line-height: 3.875rem;
    padding: 0 2.8125rem;
    border-radius: 1.9375rem;
  }
}
.search-results .pagination .page-numbers.next:hover, .search-results .pagination .page-numbers.next:focus {
  color: #fff;
  background: #173766;
  border-color: #173766;
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: #fff;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
}
@media print, screen and (min-width: 48em) {
  .header {
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}
.header .header-inner {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  z-index: 100;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0.9375rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner {
    padding: 2.5rem 0 2.8125rem 0;
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.header .header-inner .logo a img {
  height: 3.5625rem;
  width: auto;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner .logo a img {
    height: 6.0225rem;
  }
}
.header .header-inner .header-right-section {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner .header-right-section .languages {
    margin-right: 1.25rem;
  }
}
.header .header-inner .header-right-section .languages a,
.header .header-inner .header-right-section .top-menu a {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25rem;
  letter-spacing: 0.015625rem;
  text-transform: uppercase;
  border-bottom: 2px solid transparent;
  margin-left: 0.9375rem;
}
.header .header-inner .header-right-section .languages a.active, .header .header-inner .header-right-section .languages a:hover, .header .header-inner .header-right-section .languages a:focus,
.header .header-inner .header-right-section .top-menu a.active,
.header .header-inner .header-right-section .top-menu a:hover,
.header .header-inner .header-right-section .top-menu a:focus {
  border-color: #00A4C4;
}
.header .header-inner .header-right-section .help-menu {
  width: 23.5rem;
  margin-right: 3.125rem;
  display: none;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner .header-right-section .help-menu {
    display: block;
  }
}
.header .header-inner .header-right-section .hamburger-menu {
  margin-left: 2.8125rem;
  display: block;
  width: 2.0625rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin-right: 0;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner .header-right-section .hamburger-menu {
    margin-left: auto;
  }
}
.header .header-inner .header-right-section .hamburger-menu a {
  display: block;
  color: #173766;
}
.header .header-inner .header-right-section .hamburger-menu a i {
  font-size: 1.875rem;
}
.header .header-inner .header-right-section .donate-link {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .header .header-inner .header-right-section .donate-link {
    display: block;
  }
}
.header .header-inner .header-right-section .donate-link .button {
  margin: 0 2.1875rem 0 2.5rem;
}
.header .header-inner .header-right-section .top-menu {
  margin-right: 0.625rem;
}
@media print, screen and (max-width: 47.99875em) {
  .header .header-inner .header-right-section .top-menu {
    display: none;
  }
}
.header .header-inner .header-right-section .top-menu ul {
  margin: 0;
  padding: 0;
}
.header .header-inner .header-right-section .top-menu ul li {
  list-style: none;
  margin-right: 0.625rem;
}
.header .main-menu {
  width: 100%;
  padding: 2.1875rem;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  display: none;
  z-index: 1001;
  position: fixed;
  -webkit-transform: translateX(100%);
      -ms-transform: translateX(100%);
          transform: translateX(100%);
  background: url("../img/menu-bg.jpg") no-repeat center center;
  background-size: cover;
  right: 0;
  bottom: 0;
  top: 0;
  overflow-y: auto;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu {
    padding: 2.8125rem 6.25rem;
    display: block;
  }
}
.header .main-menu .main-menu-inner {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  min-height: 100vh;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
    min-height: auto;
    display: block;
  }
}
.header .main-menu .main-menu-inner .search {
  width: calc(100% - 60px);
  margin-bottom: 3.125rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .search {
    width: 30.6875rem;
    margin-bottom: 4.375rem;
  }
}
.header .main-menu .main-menu-inner .search form {
  position: relative;
  width: 100%;
}
.header .main-menu .main-menu-inner .search form input {
  height: 2.91875rem;
  border-radius: 1.875rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  padding: 0 1.875rem 0 3.125rem;
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  background: #CCF0F7;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .search form input {
    border: 2.5px solid #00A4C4;
    background: none;
    height: 3.75rem;
  }
}
.header .main-menu .main-menu-inner .search form input::-webkit-input-placeholder {
  color: #173766;
}
.header .main-menu .main-menu-inner .search form input::-moz-placeholder {
  color: #173766;
}
.header .main-menu .main-menu-inner .search form input:-ms-input-placeholder {
  color: #173766;
}
.header .main-menu .main-menu-inner .search form input::-ms-input-placeholder {
  color: #173766;
}
.header .main-menu .main-menu-inner .search form input::placeholder {
  color: #173766;
}
.header .main-menu .main-menu-inner .search form button {
  position: absolute;
  top: 0.875rem;
  left: 0.875rem;
  font-size: 1.25rem;
  color: #173766;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .search form button {
    top: 1.25rem;
    left: 1.25rem;
  }
}
.header .main-menu .main-menu-inner .close-menu {
  position: absolute;
  right: 0;
  top: 0;
}
.header .main-menu .main-menu-inner .close-menu a {
  width: 2.875rem;
  height: 2.875rem;
  background: #fff;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #173766;
  font-size: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .close-menu a {
    width: 3.6875rem;
    height: 3.6875rem;
  }
}
.header .main-menu .main-menu-inner .close-menu a:hover {
  background: rgba(255, 255, 255, 0.33);
}
.header .main-menu .main-menu-inner .help-menu {
  margin-bottom: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .help-menu {
    display: none;
  }
}
.header .main-menu .main-menu-inner .help-menu .dropdown-pane {
  position: static;
  top: 0 !important;
  width: 100%;
}
.header .main-menu .main-menu-inner .the-menu {
  margin-bottom: 2.5rem;
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu {
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item {
  border-bottom: 1px solid #92DBE8;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item {
    display: inline-block;
    width: auto;
    border-bottom: none;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item > a {
  display: block;
  padding: 1.5625rem 0;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.375rem;
  color: #173766;
  letter-spacing: 0.0125rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item > a {
    display: inline-block;
    font-size: 2.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.opacity > a {
    opacity: 0.43;
  }
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item[aria-expanded=true] > a {
    opacity: 1;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent {
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent {
    position: static;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent > a:after {
  border: none;
  content: "\e90b";
  font-family: "icomoon", sans-serif;
  color: #E56D06;
  font-weight: 400;
  right: 1.25rem;
  display: inline-block;
  font-size: 1.125rem;
  top: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent > a:after {
    font-size: 1.5rem;
    right: -2.1875rem;
    top: 2.5rem;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent[aria-expanded=true] > a:after {
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  content: "\e90a";
  font-size: 0.125rem;
  top: 2.375rem;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent[aria-expanded=true] > a:after {
    font-size: 0.15625rem;
    top: 3rem;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent .is-accordion-submenu {
  margin: 0;
  padding: 0.9375rem 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent .is-accordion-submenu {
    position: absolute;
    left: 40rem;
    top: 0;
    right: 0;
    width: 100%;
  }
}
.header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent .is-accordion-submenu > li a {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  margin: 0.625rem 0;
  font-size: 1.0625rem;
  color: #173766;
  padding: 0;
  display: inline-block;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent .is-accordion-submenu > li a {
    font-family: "League Spartan", sans-serif;
    font-weight: 600;
    font-size: 1.5625rem;
    margin: 1.125rem 0;
    border-bottom: 2px solid transparent;
  }
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .the-menu .accordion-menu > .menu-item.is-accordion-submenu-parent .is-accordion-submenu > li a:hover {
    border-color: #E56D06;
  }
}
.header .main-menu .main-menu-inner .header-menu-links {
  margin-top: auto;
}
.header .main-menu .main-menu-inner .header-menu-links ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .header-menu-links ul {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
  }
}
.header .main-menu .main-menu-inner .header-menu-links ul li {
  margin: 0 1.5rem 1.5625rem 0;
}
@media print, screen and (min-width: 48em) {
  .header .main-menu .main-menu-inner .header-menu-links ul li {
    margin: 0 0 0.625rem 0;
  }
}
.header .main-menu .main-menu-inner .header-menu-links ul li a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.9375rem;
  letter-spacing: 0.01875rem;
  color: #173766;
  border-bottom: 3px solid transparent;
}
.header .main-menu .main-menu-inner .header-menu-links ul li a:hover {
  border-color: #E56D06;
}

.footer {
  background: #173766;
  padding: 2.8125rem 2.1875rem;
  margin-top: auto;
}
@media print, screen and (min-width: 48em) {
  .footer {
    padding: 4.0625rem 0 3.125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 1.875rem;
  }
}
.footer .footer-inner .logo-social .footer-logo {
  margin: 0 0 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .footer-logo {
    margin: 0;
  }
}
.footer .footer-inner .logo-social .footer-logo img {
  width: 18.8125rem;
  height: auto;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .footer-logo img {
    width: 23.875rem;
  }
}
.footer .footer-inner .logo-social .menu-social {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .menu-social {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.footer .footer-inner .logo-social .menu-social .footer-links,
.footer .footer-inner .logo-social .menu-social .social {
  margin: 0 0 3.125rem 0;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .menu-social .footer-links,
  .footer .footer-inner .logo-social .menu-social .social {
    margin: 0;
  }
}
.footer .footer-inner .logo-social .menu-social .footer-links ul,
.footer .footer-inner .logo-social .menu-social .social ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer .footer-inner .logo-social .menu-social .footer-links ul li a,
.footer .footer-inner .logo-social .menu-social .social ul li a {
  color: #fff;
}
.footer .footer-inner .logo-social .menu-social .social {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .menu-social .social {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
}
.footer .footer-inner .logo-social .menu-social .footer-links {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .menu-social .footer-links {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}
.footer .footer-inner .logo-social .menu-social .footer-links ul {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.footer .footer-inner .logo-social .menu-social .footer-links ul li a {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  color: #fff;
}
.footer .footer-inner .logo-social .menu-social .footer-links ul li a:after {
  content: "|";
  margin: 0 1.375rem;
}
.footer .footer-inner .logo-social .menu-social .footer-links ul li a:hover {
  text-decoration: underline;
}
.footer .footer-inner .logo-social .menu-social .footer-links ul li:last-child a:after {
  content: "";
}
.footer .footer-inner .logo-social .menu-social .social ul li a {
  margin: 0 1.5625rem 0 0;
  font-size: 1.375rem;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .logo-social .menu-social .social ul li a {
    margin: 0 0 0 1.5625rem;
  }
}
.footer .footer-inner .footer-menu {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .footer-menu {
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.footer .footer-inner .footer-menu p {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  color: #fff;
  margin: 0 0 0.9375rem 0;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .footer-menu p {
    margin: 0;
  }
}
.footer .footer-inner .footer-menu p a {
  color: #fff;
}
.footer .footer-inner .footer-menu p a:hover {
  text-decoration: underline;
}
.footer .footer-inner .footer-menu .menu {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.footer .footer-inner .footer-menu .menu li {
  margin: 0 0 0.9375rem 0;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .footer-menu .menu li {
    margin: 0;
  }
}
.footer .footer-inner .footer-menu .menu li a {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  font-size: 0.875rem;
  color: #fff;
  padding: 0;
}
.footer .footer-inner .footer-menu .menu li a:after {
  content: "|";
  margin: 0 1.375rem;
}
.footer .footer-inner .footer-menu .menu li a:hover {
  text-decoration: underline;
}
@media print, screen and (min-width: 48em) {
  .footer .footer-inner .footer-menu .menu li:first-child a:before {
    content: "|";
    margin: 0 1.375rem;
  }
}

/* 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);
  -ms-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

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

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

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

/* Slider */
.slick-loading .slick-list {
  background: #fff;
}

/* 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: 1.75rem;
  width: 1.75rem;
  line-height: 1.75rem;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none;
  text-align: center;
}
.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;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: 1.5625rem;
  z-index: 55;
  position: relative;
}
[dir=rtl] .slick-prev {
  left: auto;
  right: -25px;
}
.slick-prev:before {
  content: "\e903";
  font-family: "icomoon";
  font-size: 1.875rem;
  position: absolute;
  display: block;
}
[dir=rtl] .slick-prev:before {
  content: "→";
}

.slick-next {
  right: 1.5625rem;
}
[dir=rtl] .slick-next {
  left: -25px;
  right: auto;
}
.slick-next:before {
  content: "\e903";
  font-family: "icomoon";
  font-size: 1.875rem;
  display: block;
  position: absolute;
}
[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;
}

.select2-container {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle;
}
.select2-container .select2-selection--single {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select2-container .select2-selection--single .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}
.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px;
}
.select2-container .select2-selection--multiple {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}
.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline;
  list-style: none;
  padding: 0;
}
.select2-container .select2-selection--multiple .select2-selection__clear {
  background-color: transparent;
  border: none;
  font-size: 1em;
}
.select2-container .select2-search--inline .select2-search__field {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  margin-left: 5px;
  padding: 0;
  max-width: 100%;
  resize: none;
  height: 18px;
  vertical-align: bottom;
  font-family: sans-serif;
  overflow: hidden;
  word-break: keep-all;
}
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-dropdown {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051;
}

.select2-results {
  display: block;
}

.select2-results__options {
  list-style: none;
  margin: 0;
  padding: 0;
}

.select2-results__option {
  padding: 6px;
  -moz-user-select: none;
   -ms-user-select: none;
       user-select: none;
  -webkit-user-select: none;
}

.select2-results__option--selectable {
  cursor: pointer;
}

.select2-container--open .select2-dropdown {
  left: 0;
}

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-search--dropdown {
  display: block;
  padding: 4px;
}
.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}
.select2-search--dropdown.select2-search--hide {
  display: none;
}

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
  filter: alpha(opacity=0);
}

.select2-hidden-accessible {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  -webkit-clip-path: inset(50%) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  white-space: nowrap !important;
}

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}
.select2-container--default .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
  padding-right: 0px;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
  left: 1px;
  right: auto;
}
.select2-container--default.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
  display: none;
}
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--default .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  padding-bottom: 5px;
  padding-right: 5px;
  position: relative;
}
.select2-container--default .select2-selection--multiple.select2-selection--clearable {
  padding-right: 25px;
}
.select2-container--default .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  font-weight: bold;
  height: 20px;
  margin-right: 10px;
  margin-top: 5px;
  position: absolute;
  right: 0;
  padding: 1px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
  padding-left: 20px;
  position: relative;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
  white-space: nowrap;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-right: 1px solid #aaa;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #999;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
  position: absolute;
  left: 0;
  top: 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover, .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:focus {
  background-color: #f1f1f1;
  color: #333;
  outline: none;
}
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  border-left: 1px solid #aaa;
  border-right: none;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__clear {
  float: left;
  margin-left: 10px;
  margin-right: auto;
}
.select2-container--default.select2-container--focus .select2-selection--multiple {
  border: solid black 1px;
  outline: 0;
}
.select2-container--default.select2-container--disabled .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
  display: none;
}
.select2-container--default.select2-container--open.select2-container--above .select2-selection--single, .select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
}
.select2-container--default .select2-search--inline .select2-search__field {
  background: transparent;
  border: none;
  outline: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-appearance: textfield;
}
.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}
.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
  padding-left: 0;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}
.select2-container--default .select2-results__option--group {
  padding: 0;
}
.select2-container--default .select2-results__option--disabled {
  color: #999;
}
.select2-container--default .select2-results__option--selected {
  background-color: #ddd;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #5897fb;
  color: white;
}
.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--classic .select2-selection--single {
  background-color: rgb(246.5, 246.5, 246.5);
  border: 1px solid #aaa;
  border-radius: 4px;
  outline: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), to(#eeeeee));
  background-image: linear-gradient(to bottom, white 50%, #eeeeee 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}
.select2-container--classic .select2-selection--single:focus {
  border: 1px solid #5897fb;
}
.select2-container--classic .select2-selection--single .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}
.select2-container--classic .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: bold;
  height: 26px;
  margin-right: 20px;
}
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
.select2-container--classic .select2-selection--single .select2-selection__arrow {
  background-color: #ddd;
  border: none;
  border-left: 1px solid #aaa;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eeeeee), to(#cccccc));
  background-image: linear-gradient(to bottom, #eeeeee 50%, #cccccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFCCCCCC", GradientType=0);
}
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
  border-color: #888 transparent transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0 4px;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
  float: left;
}
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
  border: none;
  border-right: 1px solid #aaa;
  border-radius: 0;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  left: 1px;
  right: auto;
}
.select2-container--classic.select2-container--open .select2-selection--single {
  border: 1px solid #5897fb;
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
  background: transparent;
  border: none;
}
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent #888 transparent;
  border-width: 0 4px 5px 4px;
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, from(white), color-stop(50%, #eeeeee));
  background-image: linear-gradient(to bottom, white 0%, #eeeeee 50%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFFFFFFF", endColorstr="#FFEEEEEE", GradientType=0);
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eeeeee), to(white));
  background-image: linear-gradient(to bottom, #eeeeee 50%, white 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#FFEEEEEE", endColorstr="#FFFFFFFF", GradientType=0);
}
.select2-container--classic .select2-selection--multiple {
  background-color: white;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
  outline: 0;
  padding-bottom: 5px;
  padding-right: 5px;
}
.select2-container--classic .select2-selection--multiple:focus {
  border: 1px solid #5897fb;
}
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
  display: none;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  display: inline-block;
  margin-left: 5px;
  margin-top: 5px;
  padding: 0;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__display {
  cursor: default;
  padding-left: 2px;
  padding-right: 5px;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
  background-color: transparent;
  border: none;
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
  color: #888;
  cursor: pointer;
  font-size: 1em;
  font-weight: bold;
  padding: 0 4px;
}
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #555;
  outline: none;
}
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.select2-container--classic.select2-container--open .select2-selection--multiple {
  border: 1px solid #5897fb;
}
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
.select2-container--classic .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0;
}
.select2-container--classic .select2-search--inline .select2-search__field {
  outline: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}
.select2-container--classic .select2-dropdown {
  background-color: white;
  border: 1px solid transparent;
}
.select2-container--classic .select2-dropdown--above {
  border-bottom: none;
}
.select2-container--classic .select2-dropdown--below {
  border-top: none;
}
.select2-container--classic .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}
.select2-container--classic .select2-results__option--group {
  padding: 0;
}
.select2-container--classic .select2-results__option--disabled {
  color: grey;
}
.select2-container--classic .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #3875d7;
  color: white;
}
.select2-container--classic .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}
.select2-container--classic.select2-container--open .select2-dropdown {
  border-color: #5897fb;
}

.intro-banner .intro-banner-wrapper {
  position: relative;
  padding: 19.375rem 2.1875rem 4.375rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper {
    padding: 5.625rem 0 7.8125rem 0;
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.intro-banner .intro-banner-wrapper .help-menu {
  position: absolute;
  top: 1.25rem;
  left: 2.1875rem;
  right: 2.1875rem;
  z-index: 55;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .help-menu {
    display: none;
  }
}
.intro-banner .intro-banner-wrapper .help-menu .help-menu-toggle {
  background: #fff;
}
.intro-banner .intro-banner-wrapper .help-menu .dropdown-pane {
  width: 100%;
  top: 3.75rem !important;
}
.intro-banner .intro-banner-wrapper .intro-banner-image {
  width: 29.75rem;
  height: 29.75rem;
  border-radius: 100%;
  position: absolute;
  top: -13.125rem;
  right: -5.375rem;
  overflow: hidden;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-image {
    width: 59.875rem;
    height: 59.875rem;
    top: 0;
    right: -23.125rem;
  }
}
.intro-banner .intro-banner-wrapper .intro-banner-image img {
  width: 29.75rem;
  height: 29.75rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-image img {
    width: 59.875rem;
    height: 59.875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-details {
    width: 41.25rem;
  }
}
.intro-banner .intro-banner-wrapper .intro-banner-details .banner-details {
  margin-bottom: 1.875rem;
}
.intro-banner .intro-banner-wrapper .intro-banner-details .banner-details h4 {
  color: #26364E;
}
.intro-banner .intro-banner-wrapper .intro-banner-details .banner-details p {
  font-family: "League Spartan", sans-serif;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.8125rem;
  color: #26364E;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-details .banner-details p {
    font-family: "League Spartan", sans-serif;
    font-weight: 400;
    font-size: 1.5rem;
    line-height: 2.375rem;
  }
}
.intro-banner .intro-banner-wrapper .intro-banner-details h1 {
  font-family: "League Spartan", sans-serif;
  font-weight: 800;
  font-size: 2.875rem;
  line-height: 3.25rem;
  color: #173766;
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-details h1 {
    font-family: "League Spartan", sans-serif;
    font-weight: 700;
    font-size: 5.9375rem;
    line-height: 5.9375rem;
  }
}
.intro-banner .intro-banner-wrapper .intro-banner-details h1 br {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .intro-banner .intro-banner-wrapper .intro-banner-details h1 br {
    display: block;
  }
}

.services-block {
  padding: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .services-block {
    padding: 7.8125rem 0 4.375rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.services-block .services-block-inner .block-title {
  margin-bottom: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .block-title {
    margin-bottom: 3.75rem;
  }
}
.services-block .services-block-inner .block-title h1 {
  color: #173766;
}
.services-block .services-block-inner .block-title h1:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}
.services-block .services-block-inner .services {
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -0.75rem 3.75rem -0.75rem;
  }
}
.services-block .services-block-inner .services .flip-card {
  background-color: transparent;
  width: 100%;
  display: block;
  margin: 0.8125rem 0;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card {
    width: 17.6875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    height: 16rem;
    margin: 0.8125rem 0.75rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front, .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back {
  padding: 1.25rem 1.5625rem 1.25rem 1.25rem;
  border-radius: 1.875rem;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front, .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back {
    position: absolute;
    width: 100%;
    height: 100%;
    padding: 1.875rem;
    border-radius: 2.1875rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front {
  background: #EAF9FC;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front {
    display: block;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front span {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front span {
    display: block;
    position: absolute;
    bottom: 1.5625rem;
    right: 1.5625rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front span i {
  color: #E56D06;
  font-size: 1.125rem;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon {
  width: 4.4375rem;
  height: 4.4375rem;
  background: #B2E4ED;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 1.25rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon {
    width: 6.1875rem;
    height: 6.1875rem;
    margin-bottom: 1.25rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon img {
  height: 2.1875rem;
  width: auto;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon img {
    height: 3.125rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon.training img {
  height: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front .service-icon.training img {
    height: 2.1875rem;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front h5 {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-front h5 {
    font-family: "League Spartan", sans-serif;
    font-weight: 600;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back {
  background-color: #CCF0F7;
  opacity: 0;
  z-index: -1;
  display: none;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back {
    display: block;
  }
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back .service-description p {
  color: #18202C;
  font-size: 1.125rem;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back span {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  color: #173766;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back span i {
  color: #E56D06;
  font-size: 0.75rem;
  margin-left: 0.3125rem;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back span:hover strong {
  border-bottom: 2px solid #173766;
}
.services-block .services-block-inner .services .flip-card .flip-card-inner .flip-card-back span:hover i {
  margin-left: 0.5rem;
}
.services-block .services-block-inner .services .flip-card:hover .flip-card-front {
  opacity: 1;
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card:hover .flip-card-front {
    opacity: 0;
    z-index: -1;
  }
}
@media print, screen and (min-width: 48em) {
  .services-block .services-block-inner .services .flip-card:hover .flip-card-back {
    opacity: 1;
    z-index: 1;
  }
}

.join-ocwa {
  padding: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa {
    padding: 4.375rem 0 3.125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.join-ocwa .block-inner .block-intro-content {
  margin-bottom: 6.25rem;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.join-ocwa .block-inner .block-intro-content .block-image {
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content .block-image {
    width: 37rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-bottom: 0;
  }
}
.join-ocwa .block-inner .block-intro-content .block-image img {
  height: 15.875rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content .block-image img {
    height: 40.625rem;
  }
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content .block-text {
    width: 31.25rem;
  }
}
.join-ocwa .block-inner .block-intro-content .block-text h1 {
  color: #173766;
}
.join-ocwa .block-inner .block-intro-content .block-text h1:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}
.join-ocwa .block-inner .block-intro-content .block-text .block-description {
  margin-bottom: 2.8125rem;
}
.join-ocwa .block-inner .block-intro-content .block-text .block-description h4 {
  color: #26364E;
}
.join-ocwa .block-inner .block-intro-content .block-text .block-description h4 br {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content .block-text .block-description h4 br {
    display: block;
  }
}
.join-ocwa .block-inner .block-intro-content .block-text .block-description h2 {
  color: #173766;
}
.join-ocwa .block-inner .block-intro-content .block-text .block-description h2 br {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .join-ocwa .block-inner .block-intro-content .block-text .block-description h2 br {
    display: block;
  }
}

.page-intro {
  padding: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .page-intro {
    padding: 1.25rem 0 4.0625rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.page-intro .block-inner .breadcrumbs {
  margin-bottom: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .breadcrumbs {
    margin-bottom: 2.8125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.page-intro .block-inner .block-intro-content .block-image {
  margin: 0 0 1.25rem 0;
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content .block-image {
    width: 37rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0;
  }
}
.page-intro .block-inner .block-intro-content .block-image img {
  height: 12.625rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content .block-image img {
    height: 32.125rem;
  }
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content .block-text {
    width: 31.25rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 32.125rem;
    position: relative;
  }
}
.page-intro .block-inner .block-intro-content .block-text h1 {
  color: #173766;
  margin-bottom: 2.5rem;
}
.page-intro .block-inner .block-intro-content .block-text h1.with-wave:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}
.page-intro .block-inner .block-intro-content .block-text .block-description {
  margin: 4.25rem 0 2.8125rem 0;
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content .block-text .block-description {
    margin: 0 0 2.8125rem 0;
  }
}
.page-intro .block-inner .block-intro-content .block-text .block-description h2, .page-intro .block-inner .block-intro-content .block-text .block-description h6 {
  color: #173766;
}
.page-intro .block-inner .block-intro-content .block-text .block-description h6 {
  letter-spacing: 0.0125rem;
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content.no-image {
    display: block;
  }
}
@media print, screen and (min-width: 48em) {
  .page-intro .block-inner .block-intro-content.no-image .block-text {
    width: 100%;
    display: block;
    min-height: 0.625rem;
  }
}

.members-archive {
  padding: 3.125rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .members-archive {
    padding: 3.75rem 0 0 0;
  }
}
.members-archive .block-title {
  margin-bottom: 3.125rem;
  text-align: center;
}
.members-archive .block-title h3 {
  color: #173766;
}
@media print, screen and (min-width: 48em) {
  .members-archive .members .members-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -0.625rem;
  }
}
.members-archive .members .members-wrapper .member {
  margin: 0 0 1.875rem 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
@media print, screen and (min-width: 48em) {
  .members-archive .members .members-wrapper .member {
    width: 24.3125rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 0 6.25rem 0;
  }
}
.members-archive .members .members-wrapper .member .image {
  height: 10.375rem;
  width: 10.375rem;
  overflow: hidden;
  border-radius: 100%;
}
@media print, screen and (min-width: 48em) {
  .members-archive .members .members-wrapper .member .image {
    height: 18rem;
    width: 18rem;
  }
}
.members-archive .members .members-wrapper .member .image img {
  height: 10.375rem;
  width: 10.375rem;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 100%;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
  -o-object-position: top center;
     object-position: top center;
}
@media print, screen and (min-width: 48em) {
  .members-archive .members .members-wrapper .member .image img {
    height: 18rem;
    width: 18rem;
  }
}
.members-archive .members .members-wrapper .member .info {
  padding: 1.5625rem;
  text-align: center;
}
.members-archive .members .members-wrapper .member .info h5 {
  color: #173766;
}
.members-archive .members .members-wrapper .member .info p {
  color: #18202C;
  margin-bottom: 0.625rem;
}
.members-archive .members .members-wrapper .member .info span {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  color: #173766;
}
.members-archive .members .members-wrapper .member .info span i {
  color: #E56D06;
  font-size: 0.75rem;
  margin-left: 0.3125rem;
}
.members-archive .members .members-wrapper .member:hover .image img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}
.members-archive .members .members-wrapper .member:hover .info span strong {
  border-bottom: 2px solid #173766;
}
.members-archive .members .members-wrapper .no-results {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 600;
  font-size: 1.25rem;
  color: #333C42;
}

.reveal-overlay {
  background-color: rgba(235, 235, 235, 0.95);
}

.member-modal {
  border-radius: 1.25rem;
  width: calc(100% - 30px);
  left: 15px;
  right: 15px;
  top: 5rem !important;
  background: #E9F6F8;
  border: none;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
}
@media print, screen and (min-width: 48em) {
  .member-modal {
    width: 75.3125rem;
  }
}
.member-modal .close-button {
  width: 2.875rem;
  height: 2.875rem;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.125rem;
  background: #fff;
  color: #173766;
  top: 1.5625rem;
  right: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .member-modal .close-button {
    width: 3.6875rem;
    height: 3.6875rem;
  }
}
.member-modal .close-button:hover {
  background: rgba(255, 255, 255, 0.33);
}
.member-modal .member-modal-inner {
  padding: 3.4375rem 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner {
    padding: 3.4375rem 4.375rem 2.5rem 2.1875rem;
  }
}
.member-modal .member-modal-inner .member-name {
  border-bottom: 2px solid #009FC2;
  margin: 0 0 1.5625rem 0;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-name {
    margin: 0 6.25rem 1.875rem 0;
  }
}
.member-modal .member-modal-inner .member-name h4 {
  color: #173766;
}
.member-modal .member-modal-inner .member-details {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-details {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.member-modal .member-modal-inner .member-details .member-title {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-details .member-title {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    width: 22.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.member-modal .member-modal-inner .member-details .member-title .member-occupation,
.member-modal .member-modal-inner .member-details .member-title .member-education,
.member-modal .member-modal-inner .member-details .member-title .member-interests,
.member-modal .member-modal-inner .member-details .member-title .member-about-job {
  margin-bottom: 1.25rem;
}
.member-modal .member-modal-inner .member-details .member-title .member-occupation p,
.member-modal .member-modal-inner .member-details .member-title .member-education p,
.member-modal .member-modal-inner .member-details .member-title .member-interests p,
.member-modal .member-modal-inner .member-details .member-title .member-about-job p {
  margin-bottom: 0;
}
.member-modal .member-modal-inner .member-details .member-bio {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-details .member-bio {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin: 0 2.1875rem 0 3.125rem;
    width: 22.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.member-modal .member-modal-inner .member-details .member-bio p {
  color: #18202C;
}
.member-modal .member-modal-inner .member-details .member-photo {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  margin: 0 0 1.5625rem 0;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-details .member-photo {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 18.75rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: -5rem 0 0 0;
  }
}
.member-modal .member-modal-inner .member-details .member-photo img {
  width: 100%;
  height: 10.6875rem;
  border-radius: 1.5625rem;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 48em) {
  .member-modal .member-modal-inner .member-details .member-photo img {
    border-radius: 100%;
    width: 18.75rem;
    height: 18.75rem;
  }
}
.member-modal .member-modal-inner .member-details .member-title {
  margin-bottom: 1.875rem;
}
.member-modal .member-modal-inner .member-details .member-title .member-year,
.member-modal .member-modal-inner .member-details .member-title .member-province,
.member-modal .member-modal-inner .member-details .member-title .member-high-school,
.member-modal .member-modal-inner .member-details .member-title .member-university,
.member-modal .member-modal-inner .member-details .member-title .member-pronoun,
.member-modal .member-modal-inner .member-details .member-title .member-position,
.member-modal .member-modal-inner .member-details .member-title .member-email,
.member-modal .member-modal-inner .member-details .member-title .member-phone {
  color: #333C42;
  font-family: "Libre Franklin", sans-serif;
  font-weight: 400;
  font-size: 1.125rem;
  line-height: 1.25rem;
  margin-bottom: 0.625rem;
}
.member-modal .member-modal-inner .member-details .member-title .member-year a,
.member-modal .member-modal-inner .member-details .member-title .member-province a,
.member-modal .member-modal-inner .member-details .member-title .member-high-school a,
.member-modal .member-modal-inner .member-details .member-title .member-university a,
.member-modal .member-modal-inner .member-details .member-title .member-pronoun a,
.member-modal .member-modal-inner .member-details .member-title .member-position a,
.member-modal .member-modal-inner .member-details .member-title .member-email a,
.member-modal .member-modal-inner .member-details .member-title .member-phone a {
  color: #333C42;
}
.member-modal .member-modal-inner .member-details .member-title .member-year a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-province a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-high-school a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-university a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-pronoun a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-position a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-email a:hover,
.member-modal .member-modal-inner .member-details .member-title .member-phone a:hover {
  color: #00B6A0;
}
.member-modal .member-modal-inner .member-details .member-title .member-year:empty,
.member-modal .member-modal-inner .member-details .member-title .member-province:empty,
.member-modal .member-modal-inner .member-details .member-title .member-high-school:empty,
.member-modal .member-modal-inner .member-details .member-title .member-university:empty,
.member-modal .member-modal-inner .member-details .member-title .member-pronoun:empty,
.member-modal .member-modal-inner .member-details .member-title .member-position:empty,
.member-modal .member-modal-inner .member-details .member-title .member-email:empty,
.member-modal .member-modal-inner .member-details .member-title .member-phone:empty {
  display: none;
}
.member-modal#leadership-modal .member-modal-inner .member-name .member-occupation p {
  font-family: "Libre Franklin", sans-serif;
  font-weight: 600;
}
@media print, screen and (min-width: 48em) {
  .member-modal#leadership-modal .member-modal-inner .member-details .member-bio {
    width: 46.875rem;
    margin: 0 2.1875rem 0 0;
  }
}

.info-boxes {
  padding: 5rem 1.5625rem 2.5rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .info-boxes {
    padding: 5rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .info-boxes .info-boxes-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.info-boxes .info-boxes-wrapper .info-box {
  padding: 2.5rem 1.875rem;
  border-radius: 2.1875rem;
  background: #173766;
  margin: 0 0 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  .info-boxes .info-boxes-wrapper .info-box {
    width: 36.625rem;
    border-radius: 3.4375rem;
    padding: 4.0625rem 3.75rem;
    margin: 0;
  }
}
.info-boxes .info-boxes-wrapper .info-box .info-box-inner h3 {
  color: #fff;
}
.info-boxes .info-boxes-wrapper .info-box .info-box-inner .description {
  margin: 1.25rem 0 0 0;
}
.info-boxes .info-boxes-wrapper .info-box .info-box-inner .description p {
  color: #fff;
}
.info-boxes .info-boxes-wrapper .info-box .info-box-inner .description p a {
  color: #fff;
  border-bottom: 2px solid #fff;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.info-boxes .info-boxes-wrapper .info-box .info-box-inner .description p a:hover {
  color: #173766;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.info-boxes .info-boxes-wrapper .info-box .button {
  margin: 1.875rem 0 0 0;
}

.twitter-block {
  padding: 0 1.5625rem 3.125rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .twitter-block {
    padding: 0 0 3.75rem 0;
  }
}
.twitter-block .block-wrapper .twitter-wrapper {
  margin: 0 0 3.125rem 0;
}
@media print, screen and (min-width: 48em) {
  .twitter-block .block-wrapper .twitter-wrapper {
    margin: 0;
  }
}
.twitter-block .block-wrapper .twitter-wrapper .twitter-icon {
  margin: 3.125rem 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .twitter-block .block-wrapper .twitter-wrapper .twitter-icon {
    margin: 0 0 1.875rem 0;
  }
}
.twitter-block .block-wrapper .twitter-wrapper .twitter-icon i {
  font-size: 1.5rem;
  color: #173766;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-name {
  margin-bottom: 1.25rem;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-name span {
  color: #18202C;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 2rem;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-name span.name {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.125rem;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-text {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  line-height: 2rem;
  color: #18202C;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-text a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .tweet .tweet-text a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots {
  width: auto;
  bottom: -2.5rem;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li {
  height: 1rem;
  width: 1rem;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li:first-child {
  margin-left: 0;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button {
  display: block;
  height: 1rem;
  width: 1rem;
  padding: 0;
  border-radius: 100%;
  border: 1px solid #173766;
  background: #fff;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button:hover, .twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button:focus {
  outline: none;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button:hover:before, .twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button:focus:before {
  display: none;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li button:before {
  display: none;
}
.twitter-block .block-wrapper .twitter-wrapper .tweets .slick-dots li.slick-active button {
  background: #173766;
  opacity: 1;
}

.job-opportunities {
  background: rgba(222, 241, 245, 0.52);
  padding: 2.5rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities {
    padding: 5rem 0 3.125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.job-opportunities .block-inner .block-title h3 {
  color: #173766;
  margin-bottom: 2.5rem;
}
.job-opportunities .block-inner .opportunities {
  margin-bottom: 3.125rem;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .opportunities {
    margin-bottom: 6.25rem;
  }
}
.job-opportunities .block-inner .opportunities .career-item {
  border-bottom: 0.75px solid #173766;
  padding: 1.875rem 0;
  color: #000;
  display: block;
  opacity: 1;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .opportunities .career-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
  }
}
.job-opportunities .block-inner .opportunities .career-item:first-child {
  border-top: 0.75px solid #173766;
}
.job-opportunities .block-inner .opportunities .career-item span {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.125rem;
  display: none;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .opportunities .career-item span {
    width: 12.5rem;
    display: block;
  }
}
.job-opportunities .block-inner .opportunities .career-item span.title {
  display: block;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.1875rem;
  margin-bottom: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .opportunities .career-item span.title {
    width: 37.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin-bottom: 0;
  }
}
.job-opportunities .block-inner .opportunities .career-item span.view-more {
  display: block;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .opportunities .career-item span.view-more {
    text-align: right;
    margin-left: auto;
    margin-right: 0.3125rem;
    width: auto;
  }
}
.job-opportunities .block-inner .opportunities .career-item span.view-more .cta-with-arrow {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.job-opportunities .block-inner .opportunities .career-item span.view-more .cta-with-arrow strong {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  color: #173766;
  border-bottom: 2px solid transparent;
  line-height: 1;
}
.job-opportunities .block-inner .opportunities .career-item span.view-more .cta-with-arrow i {
  color: #E56D06;
  position: relative;
  top: -0.125rem;
  left: 0.3125rem;
  font-size: 0.625rem;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.job-opportunities .block-inner .opportunities .career-item:hover span.title {
  text-decoration: underline;
}
.job-opportunities .block-inner .opportunities .career-item:hover span.view-more strong {
  border-color: #173766;
}
.job-opportunities .block-inner .opportunities .career-item:hover span.view-more i {
  left: 0.625rem;
}
@media print, screen and (min-width: 48em) {
  .job-opportunities .block-inner .load-more-opportunities {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.contact-block {
  padding: 4.375rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .contact-block {
    padding: 5rem 0;
  }
}
.contact-block .block-wrapper {
  background: #173766;
  border-radius: 1.5625rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper {
    margin: 0 auto;
    max-width: 75.3125rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    border-radius: 2.1875rem;
  }
}
.contact-block .block-wrapper .block-details {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  padding: 2.1875rem 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .block-details {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    padding: 3.75rem 3.125rem;
  }
}
.contact-block .block-wrapper .block-details h3 {
  color: #fff;
  margin-bottom: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .block-details .contact-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .block-details .contact-content .block-content {
    width: 20.9375rem;
    margin-right: 1.875rem;
  }
}
.contact-block .block-wrapper .block-details .contact-content .block-content p {
  color: #fff;
}
.contact-block .block-wrapper .block-details .contact-content .block-content p a {
  color: #fff;
  border-bottom: 2px solid #fff;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.contact-block .block-wrapper .block-details .contact-content .block-content p a:hover {
  color: #173766;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.contact-block .block-wrapper .block-details .contact-content .block-content .button {
  margin-top: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .block-details .contact-content .contact-information {
    width: 23.4375rem;
  }
}
.contact-block .block-wrapper .block-details .contact-content .contact-information p {
  color: #fff;
}
.contact-block .block-wrapper .block-details .contact-content .contact-information p a {
  color: #fff;
  border-bottom: 2px solid #fff;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.contact-block .block-wrapper .block-details .contact-content .contact-information p a:hover {
  color: #173766;
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.contact-block .block-wrapper .block-details .contact-content .contact-information .button {
  margin-top: 1.875rem;
}
.contact-block .block-wrapper .image {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .image {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    width: 23.875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.contact-block .block-wrapper .image img {
  width: 100%;
  height: 14.0625rem;
  -o-object-position: top;
     object-position: top;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.5625rem 1.5625rem 0 0;
}
@media print, screen and (min-width: 48em) {
  .contact-block .block-wrapper .image img {
    height: 100%;
    border-radius: 0 1.5625rem 1.5625rem 0;
  }
}

.values-block {
  padding: 2.5rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .values-block {
    padding: 5rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .values-block .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 48em) {
  .values-block .block-inner .items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -0.625rem;
  }
}
.values-block .block-inner .items .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 0 0 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  .values-block .block-inner .items .item {
    width: 24.1875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 0.625rem 3.4375rem 0.625rem;
  }
}
.values-block .block-inner .items .item .image {
  margin-bottom: 1.5625rem;
}
.values-block .block-inner .items .item .image img {
  width: 9.3125rem;
  height: 9.3125rem;
  border-radius: 100%;
}
.values-block .block-inner .items .item .title h4 {
  color: #173766;
  margin-bottom: 1.5625rem;
}
.values-block .block-inner .items .item .description {
  text-align: center;
}
.values-block .block-inner .items .item .description p {
  color: #18202C;
}

.page-banner {
  padding: 1.5625rem;
  background: #EAF9FC;
}
@media print, screen and (min-width: 48em) {
  .page-banner {
    padding: 0 0 3.75rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    border-radius: 1.875rem;
    overflow: hidden;
    min-height: 33.4375rem;
  }
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner:after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgb(24, 32, 44);
    background: -webkit-gradient(linear, left top, right top, from(rgba(24, 32, 44, 0.8)), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(90deg, rgba(24, 32, 44, 0.8) 0%, rgba(255, 255, 255, 0) 100%);
    z-index: 3;
    mix-blend-mode: multiply;
  }
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-image {
    position: absolute;
    inset: 0;
    z-index: 2;
  }
}
.page-banner .block-inner .block-image img {
  height: 18.65625rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-image img {
    height: 100%;
  }
}
.page-banner .block-inner .block-intro-content {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content {
    position: absolute;
    left: 4.0625rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 4;
  }
}
.page-banner .block-inner .block-intro-content .block-text {
  width: 26.875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content .block-text {
    min-height: 32.125rem;
    position: relative;
  }
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content .block-text .breadcrumbs {
    position: absolute;
    top: 0;
  }
}
.page-banner .block-inner .block-intro-content .block-text h1 {
  color: #173766;
  margin: 3.125rem 0 0 0;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content .block-text h1 {
    color: #fff;
    margin: 0;
  }
}
.page-banner .block-inner .block-intro-content .block-text h1.with-wave:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content .block-text .block-description {
    margin: 0 0 2.8125rem 0;
  }
}
.page-banner .block-inner .block-intro-content .block-text .block-description h2, .page-banner .block-inner .block-intro-content .block-text .block-description h6 {
  color: #173766;
}
@media print, screen and (min-width: 48em) {
  .page-banner .block-inner .block-intro-content .block-text .block-description h2, .page-banner .block-inner .block-intro-content .block-text .block-description h6 {
    color: #fff;
  }
}
.page-banner .block-inner .block-intro-content .block-text .block-description h6 {
  letter-spacing: 0.0125rem;
}
.page-banner .breadcrumbs-wrapper {
  max-width: 75.3125rem;
  margin: 2.8125rem auto 0 auto;
}

.landing-content {
  padding: 1.875rem 1.5625rem 2.5rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .landing-content {
    padding: 5rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -0.75rem;
  }
}
.landing-content .block-inner .items .flip-card {
  background-color: transparent;
  width: 100%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  margin: 0 0 1.25rem 0;
  display: block;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card {
    width: 23.875rem;
    height: 27.125rem;
    margin: 0.8125rem 0.8125rem;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner {
  position: relative;
  width: 100%;
  height: 100%;
  -webkit-transition: -webkit-transform 0.8s;
  transition: -webkit-transform 0.8s;
  transition: transform 0.8s;
  transition: transform 0.8s, -webkit-transform 0.8s;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front, .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back {
  width: 100%;
  height: 100%;
  border-radius: 1.25rem;
  overflow: hidden;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front, .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back {
    position: absolute;
    border-radius: 2.0625rem;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front {
  background: #EAF9FC;
  border-radius: 2.1875rem;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-image img {
  height: 9.25rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-image img {
    height: 15.5rem;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title {
  background: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.25rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title {
    height: 11.5625rem;
    padding: 0 1.5625rem;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title h4 {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.6875rem;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title h4 {
    font-family: "League Spartan", sans-serif;
    font-weight: 600;
    font-size: 1.8125rem;
    line-height: 2.3125rem;
    max-width: 17.5rem;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title span {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title span {
    display: block;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-front .item-title span i {
  color: #E56D06;
  font-size: 1.125rem;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back {
  background-color: #fff;
  padding: 3.125rem 1.875rem;
  display: none;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  opacity: 0;
  z-index: -1;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back .item-title h4 {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 600;
  max-width: 17.5rem;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back .item-description p {
  color: #18202C;
  font-size: 1.125rem;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back span {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  color: #173766;
  margin-top: auto;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back span i {
  color: #E56D06;
  font-size: 0.75rem;
  margin-left: 0.3125rem;
}
.landing-content .block-inner .items .flip-card .flip-card-inner .flip-card-back span:hover strong {
  border-bottom: 2px solid #173766;
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card:hover .flip-card-front {
    opacity: 0;
    z-index: -1;
  }
}
@media print, screen and (min-width: 48em) {
  .landing-content .block-inner .items .flip-card:hover .flip-card-back {
    opacity: 1;
    z-index: 1;
  }
}

.text-intro {
  padding: 2.5rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .text-intro {
    padding: 1.25rem 0 4.0625rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .text-intro .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.text-intro .block-inner .breadcrumbs {
  margin-bottom: 3.125rem;
}
@media print, screen and (min-width: 48em) {
  .text-intro .block-inner .block-intro-content {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media print, screen and (min-width: 48em) {
  .text-intro .block-inner .block-intro-content .block-description {
    width: 43.125rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.text-intro .block-inner .block-intro-content .block-description a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.text-intro .block-inner .block-intro-content .block-description a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.text-intro .block-inner .block-intro-content .block-description h2, .text-intro .block-inner .block-intro-content .block-description h6 {
  color: #173766;
}
.text-intro .block-inner .block-intro-content .block-description p {
  color: #18202C;
}
.text-intro .block-inner .block-intro-content .block-description h6 {
  letter-spacing: 0.0125rem;
}
@media print, screen and (min-width: 48em) {
  .text-intro .block-inner .block-intro-content .block-text {
    width: 31.25rem;
  }
}
.text-intro .block-inner .block-intro-content .block-text h1 {
  color: #173766;
}
.text-intro .block-inner .block-intro-content .block-text h1.with-wave:after {
  content: "\e907";
  font-family: "icomoon", sans-serif;
  display: block;
  font-size: 0.6875rem;
  color: #E56D06;
}

.open-data {
  padding: 2.1875rem 1.875rem;
  background: #EAF9FC;
  position: relative;
}
@media print, screen and (min-width: 48em) {
  .open-data {
    padding: 3.125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.open-data .open-data-wrapper .tabs-container {
  padding-bottom: 3.75rem;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.open-data .open-data-wrapper .tabs-container .tabs {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  background: none;
  border: none;
  margin: 0 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container .tabs {
    width: 17.1875rem;
    margin: 0 1.875rem 0 0;
  }
}
.open-data .open-data-wrapper .tabs-container .tabs .tabs-title {
  height: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #CCF0F7;
  border-radius: 0.625rem;
  margin-bottom: 0.3125rem;
  padding: 0 1.25rem;
}
.open-data .open-data-wrapper .tabs-container .tabs .tabs-title a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  color: #173766;
  padding: 0;
  border-bottom: 2px solid transparent;
}
.open-data .open-data-wrapper .tabs-container .tabs .tabs-title.is-active, .open-data .open-data-wrapper .tabs-container .tabs .tabs-title:hover {
  background: #B2E4ED;
}
.open-data .open-data-wrapper .tabs-container .tabs .tabs-title.is-active a, .open-data .open-data-wrapper .tabs-container .tabs .tabs-title:hover a {
  border-color: #173766;
  background: none;
}
.open-data .open-data-wrapper .tabs-container .tabs-content {
  background: none;
  border: none;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container .tabs-content {
    margin-right: 6.25rem;
  }
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel {
  padding: 0;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg {
  margin-bottom: 2.5rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg h4 {
  color: #173766;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > h4 {
  margin: 0 0 2.5rem 0;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > h3, .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg h4, .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg h5, .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg h6 {
  color: #173766;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > p {
  color: #18202C;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > p a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > p a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > ul li a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .wysiwyg > ul > li > ul li a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .filters-form .filters-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .filters-form .filters-wrapper .filter {
  margin: 0 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .filters-form .filters-wrapper .filter {
    width: 17.5rem;
    margin: 0 2.8125rem 3.125rem 0;
  }
}
.open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .filters-form .filters-wrapper .filter label {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.3125rem;
  color: #173766;
  margin-bottom: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .tabs-container .tabs-content .tabs-panel .filters-form .submit-form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.open-data .open-data-wrapper .search-results {
  padding-top: 3.75rem;
  border-top: 1px solid #173766;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.open-data .open-data-wrapper .search-results .accordion-wrapper {
  width: 100%;
}
@media print, screen and (min-width: 48em) {
  .open-data .open-data-wrapper .search-results .accordion-wrapper {
    width: 56.25rem;
  }
}
.open-data .open-data-wrapper .search-results .accordion-wrapper .accordion {
  background: none;
}
.open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item {
  border-radius: 0.6875rem;
  background: #FFFFFF;
  margin-bottom: 0.625rem;
}
@media print, screen and (max-width: 47.99875em) {
  .open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item .accordion-title {
    display: block;
    padding: 5rem 0.9375rem 1.6875rem 0.9375rem;
  }
}
@media print, screen and (max-width: 47.99875em) {
  .open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item .accordion-title span {
    display: block;
  }
}
.open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item .accordion-title:hover, .open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item .accordion-title:focus {
  background: none;
  text-decoration: none;
}
@media print, screen and (max-width: 47.99875em) {
  .open-data .open-data-wrapper .search-results .accordion-wrapper .accordion .accordion-item .accordion-content {
    padding: 0.9375rem;
  }
}
.open-data .open-data-wrapper .search-results.no-search .accordion-wrapper {
  display: none;
}
.open-data.loading:before {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  right: 0;
  left: 0;
  background: #fefefe;
  opacity: 0.7;
  content: "";
  z-index: 5;
}
.open-data.loading:after {
  content: " ";
  display: block;
  width: 4rem;
  height: 4rem;
  border-radius: 50%;
  border: 6px solid #173766;
  border-color: #173766 transparent #173766 transparent;
  -webkit-animation: lds-dual-ring 1.2s linear infinite;
          animation: lds-dual-ring 1.2s linear infinite;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 10;
}
.open-data .no-results {
  display: none;
}
.open-data.no-results .no-results {
  display: block;
}

#open-data-modal {
  border-radius: 1.25rem;
  left: 20px;
  right: 20px;
  width: calc(100% - 40px);
  top: 5rem !important;
  background: #FFFFFF;
  border: none;
  -webkit-box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
          box-shadow: 0 0.1875rem 0.375rem rgba(0, 0, 0, 0.16);
  padding: 4.375rem 1.875rem 1.875rem 1.875rem;
}
@media print, screen and (min-width: 48em) {
  #open-data-modal {
    padding: 4.375rem 3.4375rem;
    width: 59.3125rem;
  }
}
#open-data-modal .modal-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 2px solid #009FC2;
  padding-bottom: 1.25rem;
  margin-bottom: 2.5rem;
}
#open-data-modal .modal-title h4 {
  color: #173766;
  margin: 0;
}
#open-data-modal .modal-title .close-button {
  width: 2.875rem;
  height: 2.875rem;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1.125rem;
  background: #EAF9FC;
  color: #173766;
  top: 0.9375rem;
  right: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  #open-data-modal .modal-title .close-button {
    width: 3.6875rem;
    height: 3.6875rem;
    top: 2.1875rem;
    right: 3.4375rem;
  }
}
#open-data-modal .modal-title .close-button:hover {
  background: rgba(255, 255, 255, 0.33);
}
#open-data-modal .modal-table h6 {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  margin-bottom: 1.25rem;
  display: inline-block;
}
#open-data-modal .modal-table form {
  display: inline-block;
}
#open-data-modal .modal-table button.button {
  height: 1.875rem;
  line-height: 1.875rem;
  margin-left: 0.625rem;
  padding: 0 1rem;
}
#open-data-modal .modal-table table tbody {
  border: none;
  background: none;
  border-top: 1px solid #173766;
}
#open-data-modal .modal-table table tbody tr {
  background: none;
}
#open-data-modal .modal-table table tbody tr td {
  border-bottom: 1px solid #173766;
  padding: 0.75rem 0;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 0.9375rem;
  color: #18202C;
}

@-webkit-keyframes lds-dual-ring {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes lds-dual-ring {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.publications-block {
  padding: 2.5rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .publications-block {
    padding: 0 0 3.75rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .publications-block .block-inner {
    margin: 0 auto;
    width: 76.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .publications-block .block-inner .publications-wrapper {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
}
@media print, screen and (min-width: 48em) {
  .publications-block .block-inner .publications-wrapper .taxonomy-filters {
    width: 17.1875rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0 1.875rem 0 0;
  }
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs {
  background: none;
  border: none;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li {
  height: 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  background: #CCF0F7;
  border-radius: 0.625rem;
  margin-bottom: 0.3125rem;
  padding: 0 1.25rem;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.25rem;
  display: inline;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  color: #173766;
  padding: 0;
  border-bottom: 2px solid transparent;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li.is-active, .publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li:hover {
  background: #B2E4ED;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li.is-active a, .publications-block .block-inner .publications-wrapper .taxonomy-filters .tabs li:hover a {
  border-color: #173766;
  background: none;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion {
  background: none;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item {
  border-bottom: 1px solid #92DBE8;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-title {
  color: #173766;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.3125rem;
  line-height: 1.75rem;
  border: none;
  text-decoration: none;
  padding: 1.25rem 1.875rem 1.25rem 0;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-title:hover, .publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-title:focus {
  background: none;
  text-decoration: none;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-title:before {
  font-size: 1rem;
  content: "\e90b";
  font-family: "icomoon", sans-serif;
  color: #E56D06;
  font-weight: 400;
  top: 1.5625rem;
  right: 0;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-content {
  border: none;
  background: none;
  padding: 0 0 1.875rem 0;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item .accordion-content p {
  margin-bottom: 1.25rem;
  color: #18202C;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item.is-active .accordion-title {
  background: none;
}
.publications-block .block-inner .publications-wrapper .taxonomy-filters .accordion .accordion-item.is-active .accordion-title:before {
  content: "\e90a";
  font-size: 0.09375rem;
}
.publications-block .block-inner .publications-wrapper .publications .tabs-content {
  background: none;
  border: none;
  padding: 0;
}
.publications-block .block-inner .publications-wrapper .publications .tabs-content .tabs-panel {
  padding: 0;
}
.publications-block .block-inner .publications-wrapper .publications .load-more-publications {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 3.75rem;
}
.publications-block .publications-items {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: 0 -0.625rem;
  }
}
.publications-block .publications-items .publication-item {
  width: 8.75rem;
  margin: 0 0 2.5rem 0;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item {
    width: 17.9375rem;
    margin: 0 0.625rem 4.0625rem 0.625rem;
  }
}
.publications-block .publications-items .publication-item .publication-image {
  overflow: hidden;
  height: 12rem;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item .publication-image {
    height: 22.5rem;
  }
}
.publications-block .publications-items .publication-item .publication-image img {
  height: 12rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item .publication-image img {
    height: 22.5rem;
  }
}
.publications-block .publications-items .publication-item .publication-details {
  padding: 0.9375rem 0;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item .publication-details {
    padding: 1.375rem;
    background: #CCF0F7;
    border-radius: 0 0 1.25rem 1.25rem;
  }
}
.publications-block .publications-items .publication-item .publication-details .title {
  margin-bottom: 1.5625rem;
}
.publications-block .publications-items .publication-item .publication-details .title h6 {
  color: #173766;
}
.publications-block .publications-items .publication-item .publication-details .download {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.publications-block .publications-items .publication-item .publication-details .download span {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 0.8125rem;
  color: #173766;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  line-height: 1;
  border-bottom: 2px solid transparent;
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item .publication-details .download span {
    font-size: 1rem;
  }
}
.publications-block .publications-items .publication-item .publication-details .download i {
  font-size: 0.625rem;
  font-weight: 400;
  color: #E56D06;
  margin-left: 0.625rem;
}
.publications-block .publications-items .publication-item:hover .publication-image img {
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
}
@media print, screen and (min-width: 48em) {
  .publications-block .publications-items .publication-item:hover .publication-details {
    background: #B2E4ED;
  }
}
.publications-block .publications-items .publication-item:hover .publication-details .download span {
  border-color: #173766;
}

.locations-contacts {
  padding: 1.5625rem 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .locations-contacts {
    padding: 4.375rem 0;
    position: relative;
  }
}
@media print, screen and (min-width: 48em) {
  .locations-contacts .block-title {
    margin-bottom: 2.5rem;
  }
}
.locations-contacts .block-title h3 {
  color: #173766;
}
@media print, screen and (min-width: 48em) {
  .locations-contacts .accordion-wrapper {
    width: 42.875rem;
  }
}
.locations-contacts .accordion-wrapper .accordion .accordion-item:last-child {
  border-bottom: none;
}
@media print, screen and (min-width: 48em) {
  .locations-contacts .accordion-wrapper .accordion .accordion-item .accordion-content .locations {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    margin: 0 -2%;
  }
}
.locations-contacts .accordion-wrapper .accordion .accordion-item .accordion-content .locations .location {
  margin: 0 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .locations-contacts .accordion-wrapper .accordion .accordion-item .accordion-content .locations .location {
    width: 46%;
    margin: 0 2% 1.875rem 2%;
  }
}
.locations-contacts .accordion-wrapper .accordion .accordion-item .accordion-content .locations .location p a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.locations-contacts .accordion-wrapper .accordion .accordion-item .accordion-content .locations .location p a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.locations-contacts .print-block {
  width: 5.125rem;
  height: 5.125rem;
  border-radius: 100%;
  background: #E56D06;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 2.5rem;
  color: #fff;
}
@media print, screen and (min-width: 48em) {
  .locations-contacts .print-block {
    position: absolute;
    right: 5.375rem;
    top: 13.125rem;
  }
}

@media print {
  .accordion-content {
    display: block !important;
  }
}
.form-block {
  position: relative;
  z-index: 1;
  padding: 2.5rem 2.1875rem;
  background: #EAF9FC;
}
@media print, screen and (min-width: 48em) {
  .form-block {
    padding: 3.75rem 0 3.4375rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .form-block .block-inner {
    max-width: 75.3125rem !important;
    margin: 0 auto !important;
  }
}
.form-block .form-wrapper {
  position: relative;
  z-index: 3;
}
@media print, screen and (min-width: 48em) {
  .form-block .form-wrapper {
    max-width: 56.25rem;
  }
}
.form-block .form-wrapper .block-details {
  max-width: 37.5rem;
  margin-bottom: 2.5rem;
}
.form-block .form-wrapper .block-details h3 {
  color: #173766;
  margin-bottom: 1.875rem;
}
.form-block .form-wrapper .block-details p {
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper .gform_validation_errors {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 1.875rem;
  padding: 1rem;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield {
  margin-bottom: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield {
    margin-bottom: 2.5rem;
  }
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .validation_message {
  background: none;
  border: none;
  padding-left: 0;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield legend {
  line-height: 1.8;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gfield_label,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gform-field-label {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1.5rem;
  color: #173766;
  margin-bottom: 0 !important;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gfield_label .gfield_required .gfield_required_text,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gform-field-label .gfield_required .gfield_required_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;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gfield_label .gfield_required:after,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .gform-field-label .gfield_required:after {
  content: "*";
  font-size: 1.25rem;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text],
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email],
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number],
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel],
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea {
  height: 4.375rem;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0 0.9375rem;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  border: none;
  background: #fff;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-webkit-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-webkit-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number]::-webkit-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel]::-webkit-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea::-webkit-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-moz-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-moz-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number]::-moz-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel]::-moz-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea::-moz-placeholder {
  opacity: 1;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]:-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]:-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number]:-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel]:-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea:-ms-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number]::-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel]::-ms-input-placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea::-ms-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=number]::placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=tel]::placeholder,
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea::placeholder {
  opacity: 1;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield select {
  height: 4.375rem;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0 0.9375rem;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  border: none;
  background-position: 99% center;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield textarea {
  padding: 1.5625rem;
  height: 13.5rem;
  resize: none;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-radio .gchoice, .form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-checkbox .gchoice {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 0.625rem;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-radio .gchoice label, .form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-checkbox .gchoice label {
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  color: #18202C;
}
.form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-radio .gchoice input, .form-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield.gfield--type-checkbox .gchoice input {
  margin-bottom: 0;
  accent-color: #00A4C4;
  width: 1.25rem;
  height: 1.25rem;
}
.form-block .form-wrapper .gform_wrapper form .gform_footer {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.form-block .form-wrapper .gform_wrapper form .gform_footer input {
  height: 3.875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.8125rem;
  background: none;
  color: #173766;
  border-radius: 1.9375rem;
  border: 2.5px solid #E56D06;
}
.form-block .form-wrapper .gform_wrapper form .gform_footer input:hover, .form-block .form-wrapper .gform_wrapper form .gform_footer input:focus {
  color: #fff;
  background: #173766;
  border-color: #173766;
}

.newsletter-block {
  position: relative;
  z-index: 1;
  padding: 2.5rem 2.1875rem;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block {
    padding: 6.25rem 0;
  }
}
.newsletter-block:after {
  content: "";
  position: absolute;
  inset: 0;
  right: auto;
  width: 100%;
  background: rgb(23, 55, 102);
  background: -webkit-gradient(linear, left top, right top, color-stop(40%, rgba(23, 55, 102, 0.7)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(90deg, rgba(23, 55, 102, 0.7) 40%, rgba(255, 255, 255, 0) 100%);
  mix-blend-mode: multiply;
  z-index: 2;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .block-inner {
    max-width: 75.3125rem !important;
    margin: 0 auto !important;
  }
}
.newsletter-block .form-wrapper {
  position: relative;
  z-index: 3;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .form-wrapper {
    max-width: 56.25rem;
  }
}
.newsletter-block .form-wrapper .block-details {
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .form-wrapper .block-details {
    max-width: 37.5rem;
    margin-bottom: 2.5rem;
  }
}
.newsletter-block .form-wrapper .block-details h3 {
  color: #fff;
  margin-bottom: 1.875rem;
}
.newsletter-block .form-wrapper .block-details p {
  color: #fff;
}
.newsletter-block .form-wrapper .gform_confirmation_wrapper {
  color: #fff;
  font-family: "League Spartan", sans-serif;
  font-weight: 600;
  font-size: 1.3125rem;
  line-height: 1.875rem;
}
.newsletter-block .form-wrapper .gform_wrapper .gform_validation_errors {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 1.875rem;
  padding: 1rem;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .form-wrapper .gform_wrapper form {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .form-wrapper .gform_wrapper form .gform-body {
    width: 43.4375rem;
    margin-right: 3.75rem;
  }
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield .validation_message {
  background: none;
  border: none;
  padding-left: 0;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  color: #fff;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text],
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email] {
  height: 3.75rem;
  border-radius: 2.1875rem;
  -webkit-box-shadow: none;
          box-shadow: none;
  padding: 0 1.875rem;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  font-size: 1.1875rem;
  border: none;
  background: #fff;
  width: 100%;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-webkit-input-placeholder,
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-webkit-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-moz-placeholder,
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-moz-placeholder {
  opacity: 1;
  color: #18202C;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]:-ms-input-placeholder,
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]:-ms-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::-ms-input-placeholder,
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::-ms-input-placeholder {
  opacity: 1;
  color: #18202C;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=text]::placeholder,
.newsletter-block .form-wrapper .gform_wrapper form .gform-body .gform_fields .gfield input[type=email]::placeholder {
  opacity: 1;
  color: #18202C;
}
@media print, screen and (min-width: 48em) {
  .newsletter-block .form-wrapper .gform_wrapper form .gform_footer {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    margin: 0;
    padding: 0;
  }
}
.newsletter-block .form-wrapper .gform_wrapper form .gform_footer input {
  height: 3.875rem;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  padding: 0 2.8125rem;
  color: #fff;
  background: none;
  border-radius: 1.9375rem;
  border: 2.5px solid #E56D06;
}
.newsletter-block .form-wrapper .gform_wrapper form .gform_footer input:hover, .newsletter-block .form-wrapper .gform_wrapper form .gform_footer input:focus {
  color: #173766;
  background: #fff;
  border-color: #fff;
}

.services-grid {
  padding: 3.75rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .services-grid {
    padding: 5.625rem 0 4.375rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.services-grid .services-block-inner .block-title {
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner .block-title {
    margin-bottom: 3.125rem;
  }
}
.services-grid .services-block-inner .block-title h2 {
  color: #173766;
  border-bottom: 8px solid #B2E4ED;
  padding-bottom: 0.625rem;
  margin: 0;
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner .services {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 3.75rem;
  }
}
.services-grid .services-block-inner .services .service {
  background: #EAF9FC;
  padding: 1.5625rem;
  margin: 0.8125rem 0;
  border-radius: 2.1875rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner .services .service {
    width: 24rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.services-grid .services-block-inner .services .service .service-icon {
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  width: 3.5rem;
  height: 3.5rem;
  background: #B2E4ED;
  border-radius: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner .services .service .service-icon {
    width: 4.625rem;
    height: 4.625rem;
  }
}
.services-grid .services-block-inner .services .service .service-icon img {
  height: 1.625rem;
  width: auto;
}
@media print, screen and (min-width: 48em) {
  .services-grid .services-block-inner .services .service .service-icon img {
    height: 2.5rem;
  }
}
.services-grid .services-block-inner .services .service .service-icon.training img {
  height: 1.875rem;
}
.services-grid .services-block-inner .services .service .service-title {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.services-grid .services-block-inner .services .service .service-title h5 {
  color: #173766;
  margin-top: 0.625rem;
}
.services-grid .services-block-inner .services .service .service-title span strong {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  color: #173766;
}
.services-grid .services-block-inner .services .service .service-title span i {
  color: #E56D06;
  font-size: 0.75rem;
  margin-left: 0.3125rem;
  -webkit-transition: all 0.1s linear;
  transition: all 0.1s linear;
}
.services-grid .services-block-inner .services .service:hover {
  background: #CCF0F7;
}
.services-grid .services-block-inner .services .service:hover .service-icon {
  background: #fff;
}
.services-grid .services-block-inner .services .service:hover .service-title span strong {
  border-bottom: 2px solid #173766;
}
.services-grid .services-block-inner .services .service:hover .service-title span i {
  margin-left: 0.5rem;
}

@media print, screen and (min-width: 48em) {
  .sidebar-block {
    padding-left: 2.5rem;
  }
}
.sidebar-block .sidebar-item {
  border-top: 8px solid #B2E4ED;
  margin-bottom: 3.75rem;
}
.sidebar-block .sidebar-item .sidebar-title {
  padding: 1.875rem 0;
}
.sidebar-block .sidebar-item .sidebar-title h5 {
  margin: 0;
}
.sidebar-block .sidebar-item .wysiwyg a {
  color: #18202C;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.sidebar-block .sidebar-item .wysiwyg a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.sidebar-block .sidebar-item .wysiwyg ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sidebar-block .sidebar-item .wysiwyg ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 1.5625rem;
}
.sidebar-block .sidebar-item .wysiwyg ul li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.sidebar-block .sidebar-item .file a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.sidebar-block .sidebar-item .file a span {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: #173766;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  line-height: 1;
  border-bottom: 2px solid transparent;
}
.sidebar-block .sidebar-item .file a i {
  font-size: 0.625rem;
  font-weight: 400;
  color: #E56D06;
  margin-left: 0.625rem;
  position: relative;
  top: -0.1875rem;
}
.sidebar-block .sidebar-item .file a:hover span {
  border-color: #173766;
}
.sidebar-block .sidebar-item .file a:hover i {
  top: 0;
}
.sidebar-block .sidebar-item .number {
  margin-bottom: 4.375rem;
}
.sidebar-block .sidebar-item .number .the-number {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 4.6875rem;
  line-height: 4.1875rem;
  color: #004990;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.accordion-wrapper {
  padding: 1.875rem 0.3125rem;
}
@media print, screen and (min-width: 48em) {
  .accordion-wrapper {
    padding: 3.125rem 0;
  }
}
.accordion-wrapper .block-title {
  margin-bottom: 0.625rem;
}
@media print, screen and (min-width: 48em) {
  .accordion-wrapper .block-title {
    margin-bottom: 1.875rem;
  }
}
.accordion-wrapper .block-title h4 {
  color: #173766;
}

.files-block {
  padding: 0 0.9375rem;
}
@media print, screen and (min-width: 48em) {
  .files-block {
    padding: 0;
  }
}
.files-block .block-title {
  margin-bottom: 1.875rem;
}
.files-block .block-title h4 {
  color: #173766;
}
.files-block .files {
  margin: 0 0 2.8125rem 0;
}
.files-block .files ul {
  list-style: none;
  margin: 0;
  border-top: 1px solid #B4BECE;
}
.files-block .files ul li {
  padding: 1.25rem 0;
  border-bottom: 1px solid #B4BECE;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width: 48em) {
  .files-block .files ul li {
    display: block;
  }
}
.files-block .files ul li a {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  font-size: 1rem;
  color: #173766;
  border-bottom: 2px solid transparent;
  text-transform: uppercase;
  letter-spacing: 0.02125rem;
  line-height: 1;
  padding-right: 1.25rem;
}
@media print, screen and (min-width: 48em) {
  .files-block .files ul li a {
    padding-right: 0;
  }
}
.files-block .files ul li i {
  font-size: 1.5rem;
  margin-right: 1.125rem;
  color: #173766;
  position: relative;
  top: 0.25rem;
  width: 0.9375rem;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}
.files-block .files ul li span {
  color: #E56D06;
  margin-left: auto;
  font-size: 0.875rem;
  position: relative;
  top: 0;
  font-weight: 400;
  display: inline-block;
}
@media print, screen and (min-width: 48em) {
  .files-block .files ul li span {
    margin-left: 1.25rem;
  }
}
@media print, screen and (min-width: 48em) {
  .files-block .files ul li:hover a {
    border-color: #173766;
  }
}
@media print, screen and (min-width: 48em) {
  .files-block .files ul li:hover span {
    top: 0.125rem;
  }
}
.files-block .files ul li.link span {
  -webkit-transform: rotate(225deg);
      -ms-transform: rotate(225deg);
          transform: rotate(225deg);
}
.files-block .files ul li.link:hover span {
  top: -0.1875rem;
}

.video-block {
  padding: 2.1875rem 0;
}
@media print, screen and (min-width: 48em) {
  .video-block {
    padding: 2.5rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .video-block .row {
    width: 75rem;
    margin: 0 auto !important;
  }
}
.video-block .video-wrapper a {
  height: 14.8125rem;
  width: 100%;
  position: relative;
  border-radius: 2.1875rem;
  overflow: hidden;
  z-index: 1;
  display: block;
}
@media print, screen and (min-width: 48em) {
  .video-block .video-wrapper a {
    height: 27.3125rem;
  }
}
.video-block .video-wrapper a:after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(11, 32, 64, 0.46);
  background-blend-mode: multiply;
  z-index: 3;
}
.video-block .video-wrapper a img {
  position: absolute;
  inset: 0;
  height: 14.8125rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 2.1875rem;
  z-index: 2;
}
@media print, screen and (min-width: 48em) {
  .video-block .video-wrapper a img {
    height: 27.3125rem;
  }
}
.video-block .video-wrapper a i {
  left: 50%;
  top: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: 4;
  color: #fff;
  font-size: 4.375rem;
}
.video-block .video-wrapper a:hover i {
  background: #E56D06;
  border-radius: 100%;
}
.video-block .block-text {
  margin-top: 1.5625rem;
}

#video-modal {
  background: none;
  border: none;
  top: 5rem !important;
}
@media print, screen and (min-width: 48em) {
  #video-modal {
    width: 75.375rem;
  }
}
#video-modal .close-button {
  width: 3.6875rem;
  height: 3.6875rem;
  border-radius: 100%;
  background: #fff;
  color: #173766;
  font-size: 1.25rem;
}
#video-modal .close-button:hover {
  background: #C4C4C4;
}
#video-modal .fullwidth-video,
#video-modal .responsive-embed {
  margin-top: 6.25rem;
}
#video-modal .fullwidth-video video,
#video-modal .fullwidth-video iframe,
#video-modal .responsive-embed video,
#video-modal .responsive-embed iframe {
  width: 100%;
  border-radius: 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  #video-modal .fullwidth-video video,
  #video-modal .fullwidth-video iframe,
  #video-modal .responsive-embed video,
  #video-modal .responsive-embed iframe {
    height: 41rem;
    border-radius: 2.1875rem;
  }
}

.case-banner {
  position: relative;
  height: auto;
}
@media print, screen and (min-width: 48em) {
  .case-banner {
    height: 45.625rem;
  }
}
.case-banner:after {
  content: "";
  position: absolute;
  inset: 0;
  top: 0;
  height: 6rem;
  right: 0;
  width: 100%;
  z-index: 3;
  background: rgb(0, 0, 0);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.73)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.73) 0%, rgba(255, 255, 255, 0) 100%);
  background-blend-mode: multiply;
}
@media print, screen and (min-width: 48em) {
  .case-banner:after {
    background: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.73)), to(rgba(255, 255, 255, 0)));
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.73) 0%, rgba(255, 255, 255, 0) 100%);
    width: 80%;
    right: auto;
    height: 45.625rem;
  }
}
.case-banner img {
  height: 17.125rem;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media print, screen and (min-width: 48em) {
  .case-banner img {
    position: absolute;
    inset: 0;
    z-index: 2;
    height: 45.625rem;
  }
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 4;
    width: 100%;
    padding: 0;
  }
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details {
    max-width: 75.3125rem !important;
    margin: 0 auto !important;
    padding: 2.1875rem 0 0 0;
  }
}
.case-banner .case-banner-wrapper .case-banner-details .breadcrumbs {
  position: absolute;
  top: 1.875rem;
  left: 2.1875rem;
  right: 2.1875rem;
  z-index: 4;
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details .breadcrumbs {
    margin-bottom: 6.25rem;
    position: static;
  }
}
.case-banner .case-banner-wrapper .case-banner-details .breadcrumbs > span {
  color: #fff;
}
.case-banner .case-banner-wrapper .case-banner-details .breadcrumbs > span > span {
  color: #fff;
}
.case-banner .case-banner-wrapper .case-banner-details .breadcrumbs > span > span a {
  color: #fff;
}
.case-banner .case-banner-wrapper .case-banner-details .featured-text {
  margin-bottom: 2.1875rem;
  background: #92DBE8;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0.625rem 2.1875rem;
  border-radius: 0;
  position: relative;
  font-family: "League Spartan", sans-serif;
  font-weight: 400;
  color: #173766;
  text-transform: uppercase;
  letter-spacing: 0.0125rem;
  line-height: 1.3;
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details .featured-text {
    margin-bottom: 4.6875rem;
    height: 3.625rem;
    line-height: 3.875rem;
    display: inline-block;
    padding: 0 3.125rem 0 0;
    border-radius: 0 1.8125rem 1.8125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details .featured-text:before {
    content: "";
    height: 3.625rem;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -125rem;
    background: #92DBE8;
    width: 125rem;
  }
}
.case-banner .case-banner-wrapper .case-banner-details .banner-details h1, .case-banner .case-banner-wrapper .case-banner-details .banner-details h4 {
  color: #173766;
  margin: 2.1875rem 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details .banner-details h1, .case-banner .case-banner-wrapper .case-banner-details .banner-details h4 {
    color: #fff;
    margin: 0 0 2.1875rem 0;
  }
}
.case-banner .case-banner-wrapper .case-banner-details .banner-details h1 br, .case-banner .case-banner-wrapper .case-banner-details .banner-details h4 br {
  display: none;
}
@media print, screen and (min-width: 48em) {
  .case-banner .case-banner-wrapper .case-banner-details .banner-details h1 br, .case-banner .case-banner-wrapper .case-banner-details .banner-details h4 br {
    display: block;
  }
}

@media print {
  .case-banner {
    height: auto;
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
  }
  .case-banner:after {
    display: none;
  }
  .case-banner img {
    position: static;
    height: 25rem;
  }
  .case-banner .case-banner-wrapper {
    position: static;
  }
  .case-banner .case-banner-wrapper .case-banner-details .breadcrumbs {
    display: none;
  }
}
.section-block {
  padding: 2.1875rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .section-block {
    padding: 5rem 0 0 0;
  }
}
.section-block .block-title {
  border-top: 4px solid #E56D06;
}
.section-block .block-title h6 {
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.015625rem;
  padding: 1.5625rem 0 2.5rem 0;
  color: #173766;
  font-weight: 700;
}
.section-block .block-content > h3, .section-block .block-content > h4, .section-block .block-content > h5, .section-block .block-content > h6 {
  color: #173766;
  margin-bottom: 1.25rem;
}
.section-block .block-content > ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.section-block .block-content > ul > li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.9375rem;
}
.section-block .block-content > ul > li:before {
  content: "●";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.section-block .block-content > ul > li > a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.section-block .block-content > ul > li > a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}
.section-block .block-content > ul > li > ul {
  list-style: none;
  padding: 0;
  margin: 0.9375rem 0 0 1.25rem;
}
.section-block .block-content > ul > li > ul li {
  padding-left: 0.9375rem;
  position: relative;
  margin-bottom: 0.625rem;
}
.section-block .block-content > ul > li > ul li:before {
  content: "○";
  color: #E56D06;
  position: absolute;
  left: 0;
  font-size: 0.875rem;
}
.section-block .block-content > ul > li > ul li a {
  color: #173766;
  border-bottom: 2px solid #173766;
  position: relative;
  background-size: auto 200%;
  -webkit-transition: background 0.3s ease-in-out;
  transition: background 0.3s ease-in-out;
}
.section-block .block-content > ul > li > ul li a:hover {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(50%, white), color-stop(50%, #B2E4ED));
  background-image: linear-gradient(white 50%, #B2E4ED 50%);
  background-position-y: 100%;
  border-color: transparent;
}

@media print {
  .section-block {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
    page-break-inside: avoid;
  }
}
.stats-block {
  padding: 2.1875rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .stats-block {
    padding: 4.0625rem 0 6.25rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .stats-block.reduced-padding {
    padding: 4.0625rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .stats-block .numbers {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 -0.9375rem;
  }
}
.stats-block .numbers .number {
  width: 100%;
  margin: 0 0 1.25rem 0;
  border-radius: 0 0 1.875rem 0;
}
@media print, screen and (min-width: 48em) {
  .stats-block .numbers .number {
    width: 22.5rem;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
    margin: 0.9375rem 0.9375rem 2.5rem 0.9375rem;
  }
}
.stats-block .numbers .number .the-number {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  color: #004990;
  font-size: 2.6875rem;
  line-height: 3.125rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
@media print, screen and (min-width: 48em) {
  .stats-block .numbers .number .the-number {
    font-size: 3.375rem;
    line-height: 4.1875rem;
  }
}
@media print, screen and (min-width: 48em) {
  .stats-block .numbers .number .description {
    width: 17.3125rem;
  }
}
.stats-block .numbers .number .description p {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  color: #000000;
  margin: 0;
}

@media print {
  .stats-block {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
  }
}
.careers-slider-block {
  padding: 2.1875rem;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block {
    padding: 0 0 3.125rem 0;
  }
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner {
    max-width: 75.3125rem;
    margin: 0 auto;
  }
}
.careers-slider-block .block-inner .careers-wrapper .careers-title {
  margin-bottom: 1.875rem;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .careers-title {
    text-align: center;
    margin-bottom: 4.375rem;
  }
}
.careers-slider-block .block-inner .careers-wrapper .careers-title h3 {
  color: #173766;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider {
  padding-bottom: 6.25rem;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .careers-slider {
    margin: 0 -0.8125rem;
  }
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career {
  background: #EAF9FC;
  border-radius: 1.875rem;
  padding: 1.875rem 1.5625rem;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .careers-slider .career {
    border-radius: 2.1875rem;
    padding: 3.75rem 3.125rem;
    margin: 0 0.625rem;
  }
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career h4 {
  margin-bottom: 2.5rem;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career h4 a {
  color: #173766;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career p {
  color: #18202C;
  margin-bottom: 1.875rem;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career p strong {
  display: block;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career .view-more {
  font-family: "League Spartan", sans-serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1rem;
  letter-spacing: 0.01875rem;
  color: #173766;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career .view-more i {
  color: #E56D06;
  font-size: 0.75rem;
  margin-left: 0.3125rem;
}
.careers-slider-block .block-inner .careers-wrapper .careers-slider .career .view-more:hover strong {
  border-bottom: 2px solid #173766;
}
.careers-slider-block .block-inner .careers-wrapper .careers-cta {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 4.375rem;
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow {
  bottom: 0;
  top: auto;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
  position: absolute;
  width: 2.75rem;
  height: 2.75rem;
  display: block;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .slick-arrow {
    width: 3.6875rem;
    height: 3.6875rem;
  }
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow:before {
  font-family: "icomoon", sans-serif;
  width: 2.75rem;
  height: 2.75rem;
  background: none;
  border-radius: 100%;
  border: 2.5px solid #92DBE8;
  color: #173766;
  line-height: normal;
  font-size: 1.25rem;
  font-weight: bold;
  opacity: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .slick-arrow:before {
    font-size: 1.75rem;
    width: 3.6875rem;
    height: 3.6875rem;
  }
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-next {
  right: calc(50% - 3.12rem);
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-next {
    right: calc(50% - 4.18rem);
  }
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-next:before {
  content: "\e904";
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-prev {
  left: calc(50% - 3.12rem);
}
@media print, screen and (min-width: 48em) {
  .careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-prev {
    left: calc(50% - 4.18rem);
  }
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-prev:before {
  content: "\e904";
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg);
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow.slick-disabled:before {
  background: none;
  border-color: rgba(146, 219, 232, 0.31);
}
.careers-slider-block .block-inner .careers-wrapper .slick-arrow:hover:before {
  background: none;
  border-color: rgba(146, 219, 232, 0.31);
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsImdsb2JhbC9fZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2JyZWFrcG9pbnQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcmV2ZWFsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3ZlbmRvci9ub3JtYWxpemUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvX2dsb2JhbC5zY3NzIiwiX3NldHRpbmdzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21peGlucy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fdGV4dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fY2hlY2tib3guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2xhYmVsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19oZWxwLXRleHQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2lucHV0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19maWVsZHNldC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fc2VsZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19lcnJvci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19iYXNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX2NvbG9yLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYWxpZ25tZW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX3ByaW50LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2NsYXNzZXMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fcm93LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2dyaWQvX2d1dHRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19jb2x1bW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZ3JpZC9fc2l6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9ncmlkL19sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnV0dG9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jbG9zZS1idXR0b24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbGFiZWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3NsaWRlci5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zd2l0Y2guc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFibGUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYmFkZ2Uuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYnJlYWRjcnVtYnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fY2FsbG91dC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYXJkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdG9vbHRpcC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19hY2NvcmRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVkaWEtb2JqZWN0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX29yYml0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Jlc3BvbnNpdmUtZW1iZWQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGFicy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL190aHVtYm5haWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fbWVudS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19tZW51LWljb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fYWNjb3JkaW9uLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZHJpbGxkb3duLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2Ryb3Bkb3duLW1lbnUuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fb2ZmLWNhbnZhcy5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19zdGlja3kuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fdGl0bGUtYmFyLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RvcC1iYXIuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX3RyYW5zaXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy91dGlsL19rZXlmcmFtZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NsaWRlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fZmFkZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX2hpbmdlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvbW90aW9uLXVpL3NyYy90cmFuc2l0aW9ucy9fem9vbS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL21vdGlvbi11aS9zcmMvdHJhbnNpdGlvbnMvX3NwaW4uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9tb3Rpb24tdWkvc3JjL3V0aWwvX2FuaW1hdGlvbi5zY3NzIiwiZ2xvYmFsL190eXBvZ3JhcGh5LnNjc3MiLCJnbG9iYWwvX2ljb25zLnNjc3MiLCJnbG9iYWwvX3ByaW50LnNjc3MiLCJjb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiY29tcG9uZW50cy9fc2luZ2xlLWNhcmVlci5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9ucy5zY3NzIiwiY29tcG9uZW50cy9fbGFuZGluZy1wYWdlLXRlbXBsYXRlLnNjc3MiLCJjb21wb25lbnRzL19zZWxlY3QyLnNjc3MiLCJjb21wb25lbnRzL19zaW5nbGUtc2VydmljZS5zY3NzIiwiY29tcG9uZW50cy9fcXVvdGUuc2NzcyIsImNvbXBvbmVudHMvX2xvY2F0aW9uLW1hcC5zY3NzIiwiY29tcG9uZW50cy9fY2FzZS1zdHVkeS5zY3NzIiwiY29tcG9uZW50cy9faGVscC1tZW51LnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2guc2NzcyIsImxheW91dC9faGVhZGVyLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwicGx1Z2lucy9fc2xpY2suc2NzcyIsInBsdWdpbnMvX3NsaWNrLXRoZW1lLnNjc3MiLCJwbHVnaW5zL3NlbGVjdDIvY29yZS5zY3NzIiwicGx1Z2lucy9zZWxlY3QyL19zaW5nbGUuc2NzcyIsInBsdWdpbnMvc2VsZWN0Mi9fbXVsdGlwbGUuc2NzcyIsInBsdWdpbnMvc2VsZWN0Mi9fZHJvcGRvd24uc2NzcyIsInBsdWdpbnMvc2VsZWN0Mi90aGVtZS9kZWZhdWx0L19zaW5nbGUuc2NzcyIsInBsdWdpbnMvc2VsZWN0Mi90aGVtZS9kZWZhdWx0L19tdWx0aXBsZS5zY3NzIiwicGx1Z2lucy9zZWxlY3QyL3RoZW1lL2RlZmF1bHQvbGF5b3V0LnNjc3MiLCJwbHVnaW5zL3NlbGVjdDIvdGhlbWUvY2xhc3NpYy9fc2luZ2xlLnNjc3MiLCJwbHVnaW5zL3NlbGVjdDIvdGhlbWUvY2xhc3NpYy9fZGVmYXVsdHMuc2NzcyIsInBsdWdpbnMvc2VsZWN0Mi9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwicGx1Z2lucy9zZWxlY3QyL3RoZW1lL2NsYXNzaWMvX211bHRpcGxlLnNjc3MiLCJwbHVnaW5zL3NlbGVjdDIvdGhlbWUvY2xhc3NpYy9sYXlvdXQuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy9pbnRyby1iYW5uZXIvc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL3NlcnZpY2VzLWJsb2NrL3Njc3Mvc3R5bGUuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy9qb2luLW9jd2Evc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL3BhZ2UtaW50cm8vc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL21lbWJlcnMtYXJjaGl2ZS9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvaW5mby1ib3hlcy9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvdHdpdHRlci1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3Mvam9iLW9wcG9ydHVuaXRpZXMvc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL2NvbnRhY3QtYmxvY2svc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL3ZhbHVlcy1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvcGFnZS1iYW5uZXIvc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL2xhbmRpbmctY29udGVudC9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvdGV4dC1pbnRyby9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3Mvb3Blbi1kYXRhL3Njc3Mvc3R5bGUuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy9wdWJsaWNhdGlvbnMtYmxvY2svc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL2xvY2F0aW9ucy1jb250YWN0cy9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvZm9ybS1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvbmV3c2xldHRlci1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3Mvc2VydmljZXMtZ3JpZC9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3Mvc2lkZWJhci1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvYWNjb3JkaW9uLWNvbnRlbnQvc2Nzcy9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL2ZpbGVzLWJsb2NrL3Njc3Mvc3R5bGUuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy92aWRlby1ibG9jay9zY3NzL19zdHlsZS5zY3NzIiwiLi4vLi4vLi4vYmxvY2tzL2Nhc2UtYmFubmVyL3Njc3Mvc3R5bGUuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy9zZWN0aW9uLWJsb2NrL3Njc3Mvc3R5bGUuc2NzcyIsIi4uLy4uLy4uL2Jsb2Nrcy9zdGF0cy1ibG9jay9zY3NzL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi9ibG9ja3MvY2FyZWVycy1zbGlkZXIvc2Nzcy9zdHlsZS5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RUFBQTtBQ0FRLGtJQUFBO0FDbUxBO0VDdElOO0lBQ0UsV0FBQTtJQUNBLFVBQUE7SUFDQSxjQUFBO0VKbkNGO0FBQ0Y7QUtYRSwyRUFBQTtBQVFBO0VBQ0UsaUJBQUE7RUFDQSw4QkFBQTtBTE1KOztB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VUFBQSxnQkFBQTtFQXZDRixjQUFBO0VBQ0EsOEJBQUE7VUFBQSxzQkFBQTtFQUNBLFdBQUE7RUFDQSxpQkFMUztFQU1ULGdCQUFBO0VBQ0EsZUZtWGM7RUVqWGQseUJGK1dhO0VFOVdiLGdCRkpjO0VFS2QseUJGZk07RUVnQk4seURGK1dhO1VFL1diLGlERitXYTtFRTdXYixvQkZtV2tCO0VFbFdsQixlRm1XZ0I7RUVsV2hCLG1CRlpxQjtFRWFyQixnQkZqQ2tCO0VFa0NsQixjRnZCTTtFRTBCSiwyRUZ5V2U7RUV6V2YsbUVGeVdlO0VFeldmLDJERnlXZTtFRXpXZixvRkZ5V2U7QVB4Sm5CO0FTN01FOztFQUNFLGFBQUE7RUFDQSx5QkY4VmlCO0VFN1ZqQix5QkZoQ0k7RUVpQ0osbUNGK1ZpQjtVRS9WakIsMkJGK1ZpQjtFRTVWZiwyRUY4VmE7RUU5VmIsbUVGOFZhO0VFOVZiLDJERjhWYTtFRTlWYixvRkY4VmE7QVBoSm5COztBU2hNRTtFQUNFLGVBQUE7QVRtTUo7QVNqTUk7RUFDRSxZQUFBO0FUbU1OOztBUzVMSTs7O0VBRUUseUJGbkVPO0VFb0VQLG1CRmlVa0I7QVBqSXhCOztBUzNMRTs7RUFFRSx3QkFBQTtLQUFBLHFCQUFBO1VBQUEsZ0JBQUE7RUFDQSxnQkY5RFk7QVA0UGhCOztBUzFMRTtFQUNFLDhCQUFBO1VBQUEsc0JBQUE7QVQ2TEo7O0FTNUtFO0VBQ0UsY0ZsR1U7QVBpUmQ7O0FTaExFO0VBQ0UsY0ZsR1U7QVBpUmQ7O0FTaExFO0VBQ0UsY0ZsR1U7QVBpUmQ7O0FTaExFO0VBQ0UsY0ZsR1U7QVBpUmQ7O0FTaExFO0VBQ0UsY0ZsR1U7QVBpUmQ7O0FVdFZFOzs7RUFHRSxnQkFBQTtBVnlWSjs7QVVyVkU7O0VBRUUscUJBQUE7RUFDQSx3QkFBQTtFQUVBLG1CQUFBO0VBQ0Esa0JIK1pXO0VHOVpYLGdCQUFBO0FWdVZKO0FVclZJOztFQUNFLGVBQUE7QVZ3Vk47O0FVblZFOztFQUVFLG9CQUFBO0FWc1ZKOztBVWxWRTtFQUNFLFdBQUE7QVZxVko7O0FXaFZFO0VBbEJBLGNBQUE7RUFDQSxTQUFBO0VBRUEsbUJKa2FxQjtFSWphckIsbUJKNERxQjtFSTNEckIsZ0JKa2F1QjtFSWphdkIsY0ppRE07QVBvVFI7QVd0Vkk7RUFURixnQkFBQTtFQUNBLGdCSitCa0I7RUk5QmxCLG9CQUFBO0FYa1dGOztBWXBYRTtFQUdFLG1CQUZhO0VBR2Isb0JMOFppQjtFSzdaakIsa0JMOFprQjtFSzdabEIsY0xxREk7QVBnVVI7O0FhdFhFO0VBQ0Usb0JBQUE7RUFBQSxxQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFBQTtFQUNBLFdBQUE7RUFDQSxtQk53Wlc7RU1yWlQsMEJBQUE7RUFBQSw0QkFBQTtNQUFBLHVCQUFBO1VBQUEsb0JBQUE7QWJ1WE47QWFuWE07RUFDRSxzQkFBQTtBYnFYUjtBYWhYTTtFQUNFLHNCQUFBO0Fia1hSOztBYTdXRTs7OztFQUNFLFNBQUE7RUFDQSxtQkFBQTtBYm1YSjs7QWEzV0U7RUFFRSxlQUFBO0VBQ0EseUJOOFhrQjtFTTdYbEIsbUJOZVM7RU1iVCxjTmdCSTtFTWZKLGtCQUFBO0VBQ0EsbUJBQUE7RUFHRSxvQkFBQTtFQUFBLHFCQUFBO0VBQUEsb0JBQUE7RUFBQSxhQUFBO0VBQ0EsbUJBQUE7RUFBQSxzQkFBQTtNQUFBLGtCQUFBO1VBQUEsY0FBQTtFQUNBLHlCQUFBO0VBQUEsMkJBQUE7TUFBQSxzQkFBQTtVQUFBLG1CQUFBO0FiMFdOO0FhbFdNO0VBQ0UsZUFBQTtBYm9XUjtBYWpXTTtFQUNFLGNBQUE7QWJtV1I7O0FhOVZFO0VBRUUsZ0JBQUE7RUFHRSxtQkFBQTtFQUFBLHFCQUFBO01BQUEsaUJBQUE7VUFBQSxhQUFBO0VBQ0EsWUFBQTtBYjhWTjs7QWExVkU7RUFFRSxjQUFBO0VBQ0EsaUJBQUE7RUFDQSxrQkFBQTtFQUdFLG9CQUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSxtQkFBQTtFQUFBLHNCQUFBO01BQUEsa0JBQUE7VUFBQSxjQUFBO0FiMFZOO0FhblZJOzs7O0VBT0ksMkJBQUE7TUFBQSw0QkFBQTtVQUFBLG1CQUFBO0VBQ0EsWUFBQTtFQUtGLGNBQUE7RUFDQSxpQkFBQTtFQUNBLGVOc1VZO0FQUWxCOztBY3phRTtFQUNFLFNBQUE7RUFDQSxVQUFBO0VBQ0EsU0FBQTtBZDRhSjs7QWN6YUU7RUFDRSxlQUFBO0VBQ0EscUJBQUE7QWQ0YUo7O0FjemFFO0VBeEJBLGtCUDBaZ0I7RU96WmhCLGdCUHdaaUI7RU92WmpCLHlCUHNaZ0I7QVArQ2xCO0FjbmNFO0VBRUUsU0FBQTtFQUNBLHVCQUFBO0VBQ0Esb0JQbVphO0FQaURqQjs7QWU5WUU7RUFoRUEsaUJBRlM7RUFHVCxnQkFBQTtFQUNBLGVSc2JjO0VRcGJkLHdCQUFBO0tBQUEscUJBQUE7VUFBQSxnQkFBQTtFQUNBLHlCUmliYTtFUWhiYixnQlI4RGM7RVE3RGQseUJSbURNO0VRakROLG9CUnNha0I7RVFyYWxCLGVSc2FnQjtFUXJhaEIsbUJSdURxQjtFUXREckIsZ0JSa0NrQjtFUWpDbEIsY1I0Q007RVF6Q0osMkVSNGFlO0VRNWFmLG1FUjRhZTtFUTVhZiwyRFI0YWU7RVE1YWYsb0ZSNGFlO0VReGFmLDhCQUFBO0VBQ0EsdUNBQUE7RUFDQSw0QkFBQTtFQUNBLHdCQUFBO0VBRUEscUJBQUE7RVAyR0Ysd09BQUE7QVJnV0Y7QVE5VkU7RU90RUE7SVB5RUksdVdBQUE7RVIrVko7QUFDRjtBZTFjRTtFQUNFLGFBQUE7RUFDQSx5QlJzWmlCO0VRclpqQix5QlJ3Qkk7RVF2QkosbUNSdVppQjtVUXZaakIsMkJSdVppQjtFUXBaZiwyRVJzWmE7RVF0WmIsbUVSc1phO0VRdFpiLDJEUnNaYTtFUXRaYixvRlJzWmE7QVBvRG5CO0FlcmNFO0VBQ0UseUJSVVM7RVFUVCxtQlI4WW9CO0FQeUR4QjtBZW5jRTtFQUNFLGFBQUE7QWZxY0o7QWVsY0U7RUFDRSxZQUFBO0VBQ0Esc0JBQUE7QWZvY0o7QWVsY0U7RUFDRSxjQUFBO0VBQ0EsaUJBQUE7QWZvY0o7O0FnQjFlRTtFQUNFLHFCVHNMdUI7RVNyTHZCLHdDQUFBO0FoQjZlSjtBZ0IzZUk7RUFDRSxjVGtMcUI7QVAyVDNCO0FnQjllSTtFQUNFLGNUa0xxQjtBUDJUM0I7QWdCOWVJO0VBQ0UsY1RrTHFCO0FQMlQzQjtBZ0I5ZUk7RUFDRSxjVGtMcUI7QVAyVDNCO0FnQjllSTtFQUNFLGNUa0xxQjtBUDJUM0I7O0FnQm5kSTtFQUNFLGNUd0pxQjtBUDhUM0I7O0FnQmpkRTtFQXpCQSxhQUFBO0VBQ0EsbUJBQUE7RUFDQSxtQlQyWGE7RVN6WGIsa0JUMEtzQjtFU3pLdEIsaUJUNkJtQjtFUzVCbkIsY1R1S2tCO0FQc1VwQjtBZ0J2ZEk7RUFDRSxjQUFBO0FoQnlkTjs7QWlCM1VFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBbUJFLFNBQUE7RUFDQSxVQUFBO0FqQjhVSjs7QWlCMVVFO0VBQ0UsbUJWbkZzQjtFVXFGdEIsa0JBQUE7RUFDQSxnQlZ2Rm1CO0VVd0ZuQixrQ1Z0RnVCO0FQa2EzQjs7QWlCeFVFOztFQUVFLGtCQUFBO0VBQ0Esb0JBQUE7QWpCMlVKOztBaUJ2VUU7O0VBRUUsaUJWbkxpQjtFVW9MakIsb0JBQUE7QWpCMFVKOztBaUJ0VUU7RUFDRSxjVjdHYztFVThHZCxvQkFBQTtBakJ5VUo7O0FpQnJVRTs7Ozs7O0VBTUUsbUVWMU1lO0VVMk1mLGtCVmpKZ0I7RVVrSmhCLG1CVnZNbUI7RVV3TW5CLGNWakpXO0VVa0pYLGtDVjdIb0I7QVBxY3hCO0FpQnRVSTs7Ozs7O0VBQ0UsY0FBQTtFQUNBLGNWeE5RO0FQcWlCZDs7QWlCcFVRO0VBSUksaUJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQjRTWjs7QWlCM1VRO0VBSUksa0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQm1UWjs7QWlCbFZRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQjBUWjs7QWlCelZRO0VBSUksbUJBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQmlVWjs7QWlCaFdRO0VBSUksb0JBRGlCO0VBYWpCLGdCQUFBO0VBUUEsYUFBQTtFQU9BLHFCQUFBO0FqQndVWjs7QWlCdldRO0VBSUksZUFEaUI7RUFhakIsZ0JBQUE7RUFRQSxhQUFBO0VBT0EscUJBQUE7QWpCK1VaOztBRzFlUTtFYzRIQTtJQUlJLGVBRGlCO0VqQmdYM0I7RWlCblhNO0lBSUksaUJBRGlCO0VqQm1YM0I7RWlCdFhNO0lBSUksb0JBRGlCO0VqQnNYM0I7RWlCelhNO0lBSUksb0JBRGlCO0VqQnlYM0I7RWlCNVhNO0lBSUksa0JBRGlCO0VqQjRYM0I7RWlCL1hNO0lBSUksZUFEaUI7RWpCK1gzQjtBQUNGO0FpQjVWRTtFQUNFLG9CQUFBO0VBQ0EsY0MxTmdCO0VEMk5oQixxQlYzS3FCO0VVNktyQixlQUFBO0FqQjZWSjtBaUIzVkk7RUFFRSxpQ1ZsTGU7QVA4Z0JyQjtBaUJ0Vkk7RUFDRSxTQUFBO0FqQndWTjs7QWlCblZFO0VBQ0UsV0FBQTtFQUVBLGdCVjFTVztFVTJTWCxTQUFBO0VBQ0Esb0JWOUxRO0VVZ01SLGFBQUE7RUFDQSxlQUFBO0VBQ0EsZ0NWbk1RO0VVb01SLGNBQUE7QWpCb1ZKOztBaUJoVkU7OztFQUdFLG1CVm5Oc0I7RVVvTnRCLDRCVnZNa0I7RVV3TWxCLGdCVnRObUI7QVB5aUJ2Qjs7QWlCL1VFO0VBQ0Usa0JBQUE7QWpCa1ZKOztBaUI5VUU7RUFDRSxvQlZqTmU7RVVrTmYscUJWcE5jO0FQcWlCbEI7O0FpQjdVRTtFQUNFLG9CVnZOZTtBUHVpQm5COztBaUIzVUk7RUFDRSxvQlY1Tm9CO0VVNk5wQixnQkFBQTtBakI4VU47O0FpQnpVRTtFQUNFLG1CVmxPcUI7QVA4aUJ6QjtBaUIxVUk7RUFDRSxxQlZuT3dCO0VVb094QixpQlZyVWU7QVBpcEJyQjs7QWlCdlVFO0VBQ0UsZ0JBQUE7RUFDQSxzQ1Z6T2lCO0VVME9qQiw4QlZ6T2dCO0FQbWpCcEI7QWlCeFVJO0VBQ0UsZ0JWbFFpQjtFVW1RakIsY1Y1Vk07QVBzcUJaOztBaUI1VEU7RUFDRSxpQ1ZyUGE7RVVzUGIsWUFBQTtFQUNBLHFCQUFBO0FqQitUSjs7QWlCM1RFO0VBQ0UsU0FBQTtBakI4VEo7O0FpQm5URTtFQUNFLFNBQUE7RUFDQSwyQlYzUWdCO0VVNlFoQix5QlZuWVM7RVVxWVQsNERWblVvQjtFVW9VcEIsY1ZuWUk7QVB1ckJSOztBbUJsb0JFO0VBQ0Usa0JaeUVtQjtFWXhFbkIscUJaeUVzQjtFWXZFdEIsbUJaaERtQjtFWWlEbkIsZ0Jaa0VtQjtFWWpFbkIsY1o1RFE7QVBnc0JaOztBbUJob0JFO0VBQ0UsZVowRGE7RVl6RGIsZ0JaMERjO0FQeWtCbEI7O0FtQi9uQkU7RUFDRSxpQloyRGE7RVkxRGIsY0FBQTtBbkJrb0JKO0FtQmhvQkk7RUFDRSxpQkFBQTtBbkJrb0JOOztBbUI1bkJJO0VBQ0UsY0FBQTtFQUNBLGdCQUFBO0FuQituQk47O0FtQjNuQkU7RUFqRkEsY0FBQTtFQUNBLGNaUFU7RVlRVixvQlo0SGU7QVBvbEJqQjtBbUI5c0JFO0VBQ0UsYVowSGtCO0FQc2xCdEI7O0FtQjVuQkU7RUE3RUEseUJad0hZO0VZdkhaLHlCWnJCVztFWXVCWCw0RFoyQ3NCO0VZMUN0QixtQlpacUI7RVlhckIsY1p0Qk07RVk0Qk4sZUFBQTtFQUNBLGVBQUE7RUFDQSxxQkFBQTtFQUVBLHFDWjBHYTtBUDRsQmY7O0FtQi9uQkU7RUF0RkEseUJad0hZO0VZdkhaLHlCWnJCVztFWXVCWCw0RFoyQ3NCO0VZMUN0QixtQlpacUI7RVlhckIsY1p0Qk07RVlzQ04sY0FBQTtFQUNBLGNBQUE7RUFDQSxnQkFBQTtFQUVBLGFaaUdtQjtFWWhHbkIscUJaaUd5QjtBUHVtQjNCOztBb0JyekJVO0VBQ0UsZ0JBUlU7QXBCZzBCdEI7O0FvQnp6QlU7RUFDRSxpQkFSVTtBcEJvMEJ0Qjs7QW9CN3pCVTtFQUNFLGtCQVJVO0FwQncwQnRCOztBb0JqMEJVO0VBQ0UsbUJBUlU7QXBCNDBCdEI7O0FHaHFCUTtFaUIxS0U7SUFDRSxnQkFIVTtFcEJpMUJwQjtFb0IvMEJRO0lBQ0UsaUJBSFU7RXBCbzFCcEI7RW9CbDFCUTtJQUNFLGtCQUhVO0VwQnUxQnBCO0VvQnIxQlE7SUFDRSxtQkFIVTtFcEIwMUJwQjtBQUNGO0FHL3FCUTtFaUIxS0U7SUFDRSxnQkFIVTtFcEIrMUJwQjtFb0I3MUJRO0lBQ0UsaUJBSFU7RXBCazJCcEI7RW9CaDJCUTtJQUNFLGtCQUhVO0VwQnEyQnBCO0VvQm4yQlE7SUFDRSxtQkFIVTtFcEJ3MkJwQjtBQUNGO0FxQi8xQkU7RUFBa0Isd0JBQUE7QXJCazJCcEI7O0FxQmgyQkU7RUFDRTtJQUlJLGtDQUFBO0lBQ0EsdUJBQUE7SUFDQSwyQkFBQTtJQU9GLG1DQUFBO1lBQUEsMkJBQUE7SUFDQSw0QkFBQTtFckIwMUJKO0VxQnYxQkU7SUFBa0IseUJBQUE7RXJCMDFCcEI7RXFCejFCRTtJQUFrQix3QkFBQTtFckI0MUJwQjtFcUIxMUJFO0lBQXVCLHlCQUFBO0VyQjYxQnpCO0VxQjUxQkU7SUFBdUIsc0NBQUE7RXJCKzFCekI7RXFCOTFCRTtJQUF1QixtQ0FBQTtFckJpMkJ6QjtFcUJoMkJFO0lBQW9CLDZCQUFBO0VyQm0yQnRCO0VxQmwyQkU7SUFBb0IsOEJBQUE7RXJCcTJCdEI7RXFCcDJCRTtJQUFvQiw4QkFBQTtFckJ1MkJ0QjtFcUJwMkJFOztJQUNZLDBCQUFBO0VyQnUyQmQ7RXFCcjJCSTtJQUFnQiw0QkFBQTtFckJ3MkJwQjtFcUJwMkJFOzs7SUFFcUIsV0FBQTtFckJ1MkJ2QjtFcUJwMkJFO0lBQW9CLDZCQUFBO0VyQnUyQnRCO0VxQnAyQkU7O0lBRUUseUJBQUE7SUFDQSx3QkFBQTtFckJzMkJKO0VxQmwyQkU7SUFBUSwyQkFBQTtFckJxMkJWO0VxQm4yQkU7O0lBQ00sd0JBQUE7RXJCczJCUjtFcUJwMkJFO0lBQU0sMEJBQUE7RXJCdTJCUjtFcUJyMkJFO0lBQVEsYUFBQTtFckJ3MkJWO0VxQnQyQkU7OztJQUdFLFVBQUE7SUFDQSxTQUFBO0VyQncyQko7RXFCcDJCRTs7SUFDSyx1QkFBQTtFckJ1MkJQO0VxQnAyQkU7SUFDRSx1QkFBQTtFckJzMkJKO0FBQ0Y7QXNCeDZCRTtFQ3NFQSxnQmhCN0JhO0VnQk5YLGtCQUFBO0VBQ0EsaUJBQUE7QXZCeTRCSjtBUTF4QkU7RUFFRSxjQUFBO0VBQ0EsWUFBQTtFQUdFLHFCQUFBO01BQUEsMEJBQUE7VUFBQSxhQUFBO0VBQ0EsNEJBQUE7RUFBQSxnQkFBQTtNQUFBLGlCQUFBO1VBQUEsUUFBQTtBUnl4Qk47QVFyeEJFO0VBQ0UsV0FBQTtBUnV4Qko7QXNCajdCTTtFRVZGLGdCQUZVO0VBR1YsZUFIVTtBeEJpOEJkO0FzQi82Qkk7RUM4Q0EsdUJBRlM7RUFHVCxzQkFIUztBdkJ1NEJiO0FHdHlCUTtFbUI3SUo7SUM4Q0Esd0JBRlM7SUFHVCx1QkFIUztFdkI0NEJYO0FBQ0Y7QUc1eUJRO0VtQjdJSjtJQzhDQSx3QkFGUztJQUdULHVCQUhTO0V2Qms1Qlg7QUFDRjtBc0I1N0JNO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QXRCODdCUjtBc0J6N0JJO0VDaURGLGVBSFM7QXZCODRCWDtBc0J6N0JNO0VBQ0Usa0JBQUE7RUFDQSxpQkFBQTtBdEIyN0JSO0FzQnY3Qkk7RUN3Q0YsZUFIUztBdkJxNUJYO0FzQmo3QlU7RUU1Q04sdUJBRlU7RUFHVixzQkFIVTtBeEJtK0JkO0FzQnI3QlU7RUU1Q04sd0JBRlU7RUFHVix1QkFIVTtBeEJ1K0JkOztBc0JoN0JFO0VHOUNBLFduQmlHWTtFb0JoSFosV0FBQTtFRlFFLHVCQUZVO0VBR1Ysc0JBSFU7QXhCOCtCZDtBRy8wQlE7RW1CeEdOO0lFckRFLHdCQUZVO0lBR1YsdUJBSFU7RXhCbS9CWjtBQUNGO0EyQnIvQkk7RUFDRSxXckIwR1E7RXFCekdSLFdBQUE7QTNCdS9CTjtBMkJsL0JNO0VBQ0UsWXJCb0dPO0FOZzVCZjtBMkJ2OEJFO0VBQ0UsV3JCcURVO0FObzVCZDs7QXNCMzdCRTtFQUNFLFdBQUE7QXRCODdCSjs7QXNCMTdCRTtFQUNFLGVBQUE7RUFDQSxjQUFBO0VBQ0EsZ0JBQUE7RUFDQSxlQUFBO0F0QjY3Qko7O0FzQnY3Qk07RUl4Rkosb0JBQUE7QTFCbWhDRjs7QXNCcDdCVTtFS3pFTixrQkFBQTtFQUNBLG1CQUhTO0EzQm9nQ2I7O0FzQm43QlU7RUsvRU4sa0JBQUE7RUFDQSxvQkFIUztBM0J5Z0NiOztBc0I5NkJRO0VLM0ROLGVBQUE7QTNCNitCRjs7QXNCejhCTTtFSXhGSixxQkFBQTtBMUJxaUNGOztBc0J0OEJVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCc2hDYjs7QXNCcjhCVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjJoQ2I7O0FzQmg4QlE7RUszRE4sMEJBQUE7QTNCKy9CRjs7QXNCMzlCTTtFSXhGSixVQUFBO0ExQnVqQ0Y7O0FzQng5QlU7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQndpQ2I7O0FzQnY5QlU7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQjZpQ2I7O0FzQmw5QlE7RUszRE4sMkJBQUE7QTNCaWhDRjs7QXNCNytCTTtFSXhGSixxQkFBQTtBMUJ5a0NGOztBc0IxK0JVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCMGpDYjs7QXNCeitCVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQitqQ2I7O0FzQnArQlE7RUszRE4sZ0JBQUE7QTNCbWlDRjs7QXNCLy9CTTtFSXhGSixxQkFBQTtBMUIybENGOztBc0I1L0JVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCNGtDYjs7QXNCMy9CVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQmlsQ2I7O0FzQnQvQlE7RUszRE4sMkJBQUE7QTNCcWpDRjs7QXNCamhDTTtFSXhGSixVQUFBO0ExQjZtQ0Y7O0FzQjlnQ1U7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQjhsQ2I7O0FzQjdnQ1U7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQm1tQ2I7O0FzQnhnQ1E7RUszRE4sMkJBQUE7QTNCdWtDRjs7QXNCbmlDTTtFSXhGSixxQkFBQTtBMUIrbkNGOztBc0JoaUNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCZ25DYjs7QXNCL2hDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQnFuQ2I7O0FzQjFoQ1E7RUszRE4sZ0JBQUE7QTNCeWxDRjs7QXNCcmpDTTtFSXhGSixxQkFBQTtBMUJpcENGOztBc0JsakNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCa29DYjs7QXNCampDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQnVvQ2I7O0FzQjVpQ1E7RUszRE4sMkJBQUE7QTNCMm1DRjs7QXNCdmtDTTtFSXhGSixVQUFBO0ExQm1xQ0Y7O0FzQnBrQ1U7RUt6RU4sa0JBQUE7RUFDQSxTQUhTO0EzQm9wQ2I7O0FzQm5rQ1U7RUsvRU4sa0JBQUE7RUFDQSxVQUhTO0EzQnlwQ2I7O0FzQjlqQ1E7RUszRE4sMkJBQUE7QTNCNm5DRjs7QXNCemxDTTtFSXhGSixxQkFBQTtBMUJxckNGOztBc0J0bENVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCc3FDYjs7QXNCcmxDVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjJxQ2I7O0FzQmhsQ1E7RUszRE4sZ0JBQUE7QTNCK29DRjs7QXNCM21DTTtFSXhGSixxQkFBQTtBMUJ1c0NGOztBc0J4bUNVO0VLekVOLGtCQUFBO0VBQ0Esb0JBSFM7QTNCd3JDYjs7QXNCdm1DVTtFSy9FTixrQkFBQTtFQUNBLHFCQUhTO0EzQjZyQ2I7O0FzQmxtQ1E7RUszRE4sMkJBQUE7QTNCaXFDRjs7QXNCN25DTTtFSXhGSixXQUFBO0ExQnl0Q0Y7O0FzQjFtQ1E7RUszRE4sMkJBQUE7QTNCeXFDRjs7QTRCdHRDRTtFQUNFLFd0QndHVTtFc0J2R1YsV0FBQTtBNUJ5dENKO0E0Qm5zQ0k7RUFDRSxXQUFBO0E1QnFzQ047QTRCbHNDSTtFQUNFLFdBQUE7QTVCb3NDTjtBNEJqc0NJO0VBQ0UsV3RCd0VRO0FOMm5DZDs7QTRCcHVDRTtFQUNFLFd0QndHVTtFc0J2R1YsVUFBQTtBNUJ1dUNKO0E0Qmp0Q0k7RUFDRSxXQUFBO0E1Qm10Q047QTRCaHRDSTtFQUNFLFdBQUE7QTVCa3RDTjtBNEIvc0NJO0VBQ0UsV3RCd0VRO0FOeW9DZDs7QTRCbHZDRTtFQUNFLFd0QndHVTtFc0J2R1YscUJBQUE7QTVCcXZDSjtBNEIvdENJO0VBQ0UsV0FBQTtBNUJpdUNOO0E0Qjl0Q0k7RUFDRSxXQUFBO0E1Qmd1Q047QTRCN3RDSTtFQUNFLFd0QndFUTtBTnVwQ2Q7O0E0Qmh3Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLFVBQUE7QTVCbXdDSjtBNEI3dUNJO0VBQ0UsV0FBQTtBNUIrdUNOO0E0QjV1Q0k7RUFDRSxXQUFBO0E1Qjh1Q047QTRCM3VDSTtFQUNFLFd0QndFUTtBTnFxQ2Q7O0E0Qjl3Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLFVBQUE7QTVCaXhDSjtBNEIzdkNJO0VBQ0UsV0FBQTtBNUI2dkNOO0E0QjF2Q0k7RUFDRSxXQUFBO0E1QjR2Q047QTRCenZDSTtFQUNFLFd0QndFUTtBTm1yQ2Q7O0E0QjV4Q0U7RUFDRSxXdEJ3R1U7RXNCdkdWLHFCQUFBO0E1Qit4Q0o7QTRCendDSTtFQUNFLFdBQUE7QTVCMndDTjtBNEJ4d0NJO0VBQ0UsV0FBQTtBNUIwd0NOO0E0QnZ3Q0k7RUFDRSxXdEJ3RVE7QU5pc0NkOztBNEIxeUNFO0VBQ0UsV3RCd0dVO0VzQnZHVixxQkFBQTtBNUI2eUNKO0E0QnZ4Q0k7RUFDRSxXQUFBO0E1Qnl4Q047QTRCdHhDSTtFQUNFLFdBQUE7QTVCd3hDTjtBNEJyeENJO0VBQ0UsV3RCd0VRO0FOK3NDZDs7QTRCeHpDRTtFQUNFLFd0QndHVTtFc0J2R1YsWUFBQTtBNUIyekNKO0E0QnJ5Q0k7RUFDRSxXQUFBO0E1QnV5Q047QTRCcHlDSTtFQUNFLFdBQUE7QTVCc3lDTjtBNEJueUNJO0VBQ0UsV3RCd0VRO0FONnRDZDs7QXNCL3NDTTtFRXRIRixnQkFGVTtFQUdWLGVBSFU7QXhCNDBDZDtBc0JsdENNO0VBQ0UsZUFBQTtFQUNBLGNBQUE7QXRCb3RDUjs7QXNCaHRDSTtFQUNFLGVBQUE7RUFDQSxjQUFBO0F0Qm10Q047O0FzQi9zQ007RUVwSUYsdUJBRlU7RUFHVixzQkFIVTtBeEIwMUNkOztBc0Ivc0NNO0VLckhGLGlCQUFBO0VBQ0Esa0JBQUE7QTNCdzBDSjtBMkJ2MENJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7QTNCeTBDTjs7QXNCNXNDTTtFS2xISixnQkFBQTtFQUNBLGVBQUE7RUFDQSxjQUFBO0EzQmswQ0Y7QTJCMTJDSTtFQUNFLFdyQjBHUTtFcUJ6R1IsV0FBQTtBM0I0MkNOO0EyQnYyQ007RUFDRSxZckJvR087QU5xd0NmOztBR2p0Q1E7RW1CN0VGO0lJeEZKLG9CQUFBO0UxQjIzQ0E7RXNCNXhDUTtJS3pFTixrQkFBQTtJQUNBLG1CQUhTO0UzQjIyQ1g7RXNCMXhDUTtJSy9FTixrQkFBQTtJQUNBLG9CQUhTO0UzQisyQ1g7RXNCcHhDTTtJSzNETixlQUFBO0UzQmsxQ0E7RXNCOXlDSTtJSXhGSixxQkFBQTtFMUJ5NENBO0VzQjF5Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0J5M0NYO0VzQnh5Q1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0I2M0NYO0VzQmx5Q007SUszRE4sMEJBQUE7RTNCZzJDQTtFc0I1ekNJO0lJeEZKLFVBQUE7RTFCdTVDQTtFc0J4ekNRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0J1NENYO0VzQnR6Q1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQjI0Q1g7RXNCaHpDTTtJSzNETiwyQkFBQTtFM0I4MkNBO0VzQjEwQ0k7SUl4RkoscUJBQUE7RTFCcTZDQTtFc0J0MENRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCcTVDWDtFc0JwMENRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCeTVDWDtFc0I5ekNNO0lLM0ROLGdCQUFBO0UzQjQzQ0E7RXNCeDFDSTtJSXhGSixxQkFBQTtFMUJtN0NBO0VzQnAxQ1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0JtNkNYO0VzQmwxQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0J1NkNYO0VzQjUwQ007SUszRE4sMkJBQUE7RTNCMDRDQTtFc0J0MkNJO0lJeEZKLFVBQUE7RTFCaThDQTtFc0JsMkNRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0JpN0NYO0VzQmgyQ1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQnE3Q1g7RXNCMTFDTTtJSzNETiwyQkFBQTtFM0J3NUNBO0VzQnAzQ0k7SUl4RkoscUJBQUE7RTFCKzhDQTtFc0JoM0NRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCKzdDWDtFc0I5MkNRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCbThDWDtFc0J4MkNNO0lLM0ROLGdCQUFBO0UzQnM2Q0E7RXNCbDRDSTtJSXhGSixxQkFBQTtFMUI2OUNBO0VzQjkzQ1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0I2OENYO0VzQjUzQ1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0JpOUNYO0VzQnQzQ007SUszRE4sMkJBQUE7RTNCbzdDQTtFc0JoNUNJO0lJeEZKLFVBQUE7RTFCMitDQTtFc0I1NENRO0lLekVOLGtCQUFBO0lBQ0EsU0FIUztFM0IyOUNYO0VzQjE0Q1E7SUsvRU4sa0JBQUE7SUFDQSxVQUhTO0UzQis5Q1g7RXNCcDRDTTtJSzNETiwyQkFBQTtFM0JrOENBO0VzQjk1Q0k7SUl4RkoscUJBQUE7RTFCeS9DQTtFc0IxNUNRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCeStDWDtFc0J4NUNRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCNitDWDtFc0JsNUNNO0lLM0ROLGdCQUFBO0UzQmc5Q0E7RXNCNTZDSTtJSXhGSixxQkFBQTtFMUJ1Z0RBO0VzQng2Q1E7SUt6RU4sa0JBQUE7SUFDQSxvQkFIUztFM0J1L0NYO0VzQnQ2Q1E7SUsvRU4sa0JBQUE7SUFDQSxxQkFIUztFM0IyL0NYO0VzQmg2Q007SUszRE4sMkJBQUE7RTNCODlDQTtFc0IxN0NJO0lJeEZKLFdBQUE7RTFCcWhEQTtFc0J0NkNNO0lLM0ROLDJCQUFBO0UzQm8rQ0E7RTRCamhEQTtJQUNFLFd0QndHVTtJc0J2R1YsV0FBQTtFNUJtaERGO0U0QjcvQ0U7SUFDRSxXQUFBO0U1QisvQ0o7RTRCNS9DRTtJQUNFLFdBQUE7RTVCOC9DSjtFNEIzL0NFO0lBQ0UsV3RCd0VRO0VOcTdDWjtFNEI5aERBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1QmdpREY7RTRCMWdERTtJQUNFLFdBQUE7RTVCNGdESjtFNEJ6Z0RFO0lBQ0UsV0FBQTtFNUIyZ0RKO0U0QnhnREU7SUFDRSxXdEJ3RVE7RU5rOENaO0U0QjNpREE7SUFDRSxXdEJ3R1U7SXNCdkdWLHFCQUFBO0U1QjZpREY7RTRCdmhERTtJQUNFLFdBQUE7RTVCeWhESjtFNEJ0aERFO0lBQ0UsV0FBQTtFNUJ3aERKO0U0QnJoREU7SUFDRSxXdEJ3RVE7RU4rOENaO0U0QnhqREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCMGpERjtFNEJwaURFO0lBQ0UsV0FBQTtFNUJzaURKO0U0Qm5pREU7SUFDRSxXQUFBO0U1QnFpREo7RTRCbGlERTtJQUNFLFd0QndFUTtFTjQ5Q1o7RTRCcmtEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUJ1a0RGO0U0QmpqREU7SUFDRSxXQUFBO0U1Qm1qREo7RTRCaGpERTtJQUNFLFdBQUE7RTVCa2pESjtFNEIvaURFO0lBQ0UsV3RCd0VRO0VOeStDWjtFNEJsbERBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJvbERGO0U0QjlqREU7SUFDRSxXQUFBO0U1QmdrREo7RTRCN2pERTtJQUNFLFdBQUE7RTVCK2pESjtFNEI1akRFO0lBQ0UsV3RCd0VRO0VOcy9DWjtFNEIvbERBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUJpbURGO0U0QjNrREU7SUFDRSxXQUFBO0U1QjZrREo7RTRCMWtERTtJQUNFLFdBQUE7RTVCNGtESjtFNEJ6a0RFO0lBQ0UsV3RCd0VRO0VObWdEWjtFNEI1bURBO0lBQ0UsV3RCd0dVO0lzQnZHVixZQUFBO0U1QjhtREY7RTRCeGxERTtJQUNFLFdBQUE7RTVCMGxESjtFNEJ2bERFO0lBQ0UsV0FBQTtFNUJ5bERKO0U0QnRsREU7SUFDRSxXdEJ3RVE7RU5naERaO0VzQmxnREk7SUV0SEYsZ0JBRlU7SUFHVixlQUhVO0V4QjhuRFo7RXNCcGdESTtJQUNFLGVBQUE7SUFDQSxjQUFBO0V0QnNnRE47RXNCbGdERTtJQUNFLGVBQUE7SUFDQSxjQUFBO0V0Qm9nREo7RXNCaGdESTtJRXBJRix3QkFGVTtJQUdWLHVCQUhVO0V4QjBvRFo7RXNCLy9DSTtJS3JIRixpQkFBQTtJQUNBLGtCQUFBO0UzQnVuREY7RTJCdG5ERTtJQUNFLFdBQUE7SUFDQSxXQUFBO0UzQnduREo7RXNCMy9DSTtJS2xISixnQkFBQTtJQUNBLGVBQUE7SUFDQSxjQUFBO0UzQmduREE7RTJCeHBERTtJQUNFLFdyQjBHUTtJcUJ6R1IsV0FBQTtFM0IwcERKO0UyQnJwREk7SUFDRSxZckJvR087RU5takRiO0FBQ0Y7QUdoZ0RRO0VtQjdFRjtJSXhGSixvQkFBQTtFMUJ5cURBO0VzQjFrRFE7SUt6RU4sa0JBQUE7SUFDQSxtQkFIUztFM0J5cERYO0VzQnhrRFE7SUsvRU4sa0JBQUE7SUFDQSxvQkFIUztFM0I2cERYO0VzQmxrRE07SUszRE4sZUFBQTtFM0Jnb0RBO0VzQjVsREk7SUl4RkoscUJBQUE7RTFCdXJEQTtFc0J4bERRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCdXFEWDtFc0J0bERRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCMnFEWDtFc0JobERNO0lLM0ROLDBCQUFBO0UzQjhvREE7RXNCMW1ESTtJSXhGSixVQUFBO0UxQnFzREE7RXNCdG1EUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCcXJEWDtFc0JwbURRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0J5ckRYO0VzQjlsRE07SUszRE4sMkJBQUE7RTNCNHBEQTtFc0J4bkRJO0lJeEZKLHFCQUFBO0UxQm10REE7RXNCcG5EUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQm1zRFg7RXNCbG5EUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQnVzRFg7RXNCNW1ETTtJSzNETixnQkFBQTtFM0IwcURBO0VzQnRvREk7SUl4RkoscUJBQUE7RTFCaXVEQTtFc0Jsb0RRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCaXREWDtFc0Job0RRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCcXREWDtFc0IxbkRNO0lLM0ROLDJCQUFBO0UzQndyREE7RXNCcHBESTtJSXhGSixVQUFBO0UxQit1REE7RXNCaHBEUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCK3REWDtFc0I5b0RRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0JtdURYO0VzQnhvRE07SUszRE4sMkJBQUE7RTNCc3NEQTtFc0JscURJO0lJeEZKLHFCQUFBO0UxQjZ2REE7RXNCOXBEUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQjZ1RFg7RXNCNXBEUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQml2RFg7RXNCdHBETTtJSzNETixnQkFBQTtFM0JvdERBO0VzQmhyREk7SUl4RkoscUJBQUE7RTFCMndEQTtFc0I1cURRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCMnZEWDtFc0IxcURRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCK3ZEWDtFc0JwcURNO0lLM0ROLDJCQUFBO0UzQmt1REE7RXNCOXJESTtJSXhGSixVQUFBO0UxQnl4REE7RXNCMXJEUTtJS3pFTixrQkFBQTtJQUNBLFNBSFM7RTNCeXdEWDtFc0J4ckRRO0lLL0VOLGtCQUFBO0lBQ0EsVUFIUztFM0I2d0RYO0VzQmxyRE07SUszRE4sMkJBQUE7RTNCZ3ZEQTtFc0I1c0RJO0lJeEZKLHFCQUFBO0UxQnV5REE7RXNCeHNEUTtJS3pFTixrQkFBQTtJQUNBLG9CQUhTO0UzQnV4RFg7RXNCdHNEUTtJSy9FTixrQkFBQTtJQUNBLHFCQUhTO0UzQjJ4RFg7RXNCaHNETTtJSzNETixnQkFBQTtFM0I4dkRBO0VzQjF0REk7SUl4RkoscUJBQUE7RTFCcXpEQTtFc0J0dERRO0lLekVOLGtCQUFBO0lBQ0Esb0JBSFM7RTNCcXlEWDtFc0JwdERRO0lLL0VOLGtCQUFBO0lBQ0EscUJBSFM7RTNCeXlEWDtFc0I5c0RNO0lLM0ROLDJCQUFBO0UzQjR3REE7RXNCeHVESTtJSXhGSixXQUFBO0UxQm0wREE7RXNCcHRETTtJSzNETiwyQkFBQTtFM0JreERBO0U0Qi96REE7SUFDRSxXdEJ3R1U7SXNCdkdWLFdBQUE7RTVCaTBERjtFNEIzeURFO0lBQ0UsV0FBQTtFNUI2eURKO0U0QjF5REU7SUFDRSxXQUFBO0U1QjR5REo7RTRCenlERTtJQUNFLFd0QndFUTtFTm11RFo7RTRCNTBEQTtJQUNFLFd0QndHVTtJc0J2R1YsVUFBQTtFNUI4MERGO0U0Qnh6REU7SUFDRSxXQUFBO0U1QjB6REo7RTRCdnpERTtJQUNFLFdBQUE7RTVCeXpESjtFNEJ0ekRFO0lBQ0UsV3RCd0VRO0VOZ3ZEWjtFNEJ6MURBO0lBQ0UsV3RCd0dVO0lzQnZHVixxQkFBQTtFNUIyMURGO0U0QnIwREU7SUFDRSxXQUFBO0U1QnUwREo7RTRCcDBERTtJQUNFLFdBQUE7RTVCczBESjtFNEJuMERFO0lBQ0UsV3RCd0VRO0VONnZEWjtFNEJ0MkRBO0lBQ0UsV3RCd0dVO0lzQnZHVixVQUFBO0U1QncyREY7RTRCbDFERTtJQUNFLFdBQUE7RTVCbzFESjtFNEJqMURFO0lBQ0UsV0FBQTtFNUJtMURKO0U0QmgxREU7SUFDRSxXdEJ3RVE7RU4wd0RaO0U0Qm4zREE7SUFDRSxXdEJ3R1U7SXNCdkdWLFVBQUE7RTVCcTNERjtFNEIvMURFO0lBQ0UsV0FBQTtFNUJpMkRKO0U0QjkxREU7SUFDRSxXQUFBO0U1QmcyREo7RTRCNzFERTtJQUNFLFd0QndFUTtFTnV4RFo7RTRCaDREQTtJQUNFLFd0QndHVTtJc0J2R1YscUJBQUE7RTVCazRERjtFNEI1MkRFO0lBQ0UsV0FBQTtFNUI4MkRKO0U0QjMyREU7SUFDRSxXQUFBO0U1QjYyREo7RTRCMTJERTtJQUNFLFd0QndFUTtFTm95RFo7RTRCNzREQTtJQUNFLFd0QndHVTtJc0J2R1YscUJBQUE7RTVCKzRERjtFNEJ6M0RFO0lBQ0UsV0FBQTtFNUIyM0RKO0U0QngzREU7SUFDRSxXQUFBO0U1QjAzREo7RTRCdjNERTtJQUNFLFd0QndFUTtFTml6RFo7RTRCMTVEQTtJQUNFLFd0QndHVTtJc0J2R1YsWUFBQTtFNUI0NURGO0U0QnQ0REU7SUFDRSxXQUFBO0U1Qnc0REo7RTRCcjRERTtJQUNFLFdBQUE7RTVCdTRESjtFNEJwNERFO0lBQ0UsV3RCd0VRO0VOOHpEWjtFc0JoekRJO0lFdEhGLGdCQUZVO0lBR1YsZUFIVTtFeEI0NkRaO0VzQmx6REk7SUFDRSxlQUFBO0lBQ0EsY0FBQTtFdEJvekROO0VzQmh6REU7SUFDRSxlQUFBO0lBQ0EsY0FBQTtFdEJrekRKO0VzQjl5REk7SUVwSUYsd0JBRlU7SUFHVix1QkFIVTtFeEJ3N0RaO0VzQjd5REk7SUtySEYsaUJBQUE7SUFDQSxrQkFBQTtFM0JxNkRGO0UyQnA2REU7SUFDRSxXQUFBO0lBQ0EsV0FBQTtFM0JzNkRKO0VzQnp5REk7SUtsSEosZ0JBQUE7SUFDQSxlQUFBO0lBQ0EsY0FBQTtFM0I4NURBO0UyQnQ4REU7SUFDRSxXckIwR1E7SXFCekdSLFdBQUE7RTNCdzhESjtFMkJuOERJO0lBQ0UsWXJCb0dPO0VOaTJEYjtBQUNGO0FzQi95REU7RUV0SEUsc0JBRGdCO0F4Qnk2RHBCO0F3QnQ2REk7RUFDRSxnQkFBQTtBeEJ3NkROO0FHcHpEUTtFbUJETjtJRXRIRSx1QkFEZ0I7RXhCZzdEbEI7RXdCNzZERTtJQUNFLGdCQUFBO0V4Qis2REo7QUFDRjs7QTZCbnFERTtFQTNPQSxxQkFBQTtFQUNBLHNCQUFBO0VBQ0Esa0J0QnNNYztFc0JyTWQsNkJ0QjRNYztFc0IzTWQsZ0J0QlZjO0VzQldkLHlFdEJzTmtCO0VzQnRObEIsaUV0QnNOa0I7RXNCck5sQixvQnRCK0xtQjtFc0I5TG5CLGlCQUFBO0VBRUEsd0JBQUE7RUFDQSxjQUFBO0VBQ0Esa0JBQUE7RUFDQSxlQUFBO0VBVUUsbUJ0QmlMYTtBUHV0RGpCO0FRanpERTtFQUNFLFVBQUE7QVJtekRKO0E2QmpyRE07RUFDRSxpQkFGbUI7QTdCcXJEM0I7QTZCcHJETTtFQUNFLGtCQUZtQjtBN0J3ckQzQjtBNkJ2ckRNO0VBQ0Usa0JBRm1CO0E3QjJyRDNCO0E2QnJyREk7RUFyTkEsY0FBQTtFQUNBLFdBQUE7RUFDQSxlQUFBO0VBQ0EsY0FBQTtBN0I2NERKO0E2QjUwREU7RUFJRSx5QlgzRWdCO0VXNEVoQixjdEJ6SEk7QVBvOERSO0E2QngwREU7RUFDRSwyQ3RCOEZzQjtFc0I3RnRCLGN0QjlISTtBUHc4RFI7QTZCcDFERTtFQUlFLHlCdEJuSWlCO0VzQm9JakIsY0FiUTtBN0JnMkRaO0E2QmgxREU7RUFDRSx3Q0FibUI7RUFjbkIsY0FsQlE7QTdCbzJEWjtBNkI1MURFO0VBSUUseUJ0Qm5JaUI7RXNCb0lqQixjQWJRO0E3QncyRFo7QTZCeDFERTtFQUNFLHVDQWJtQjtFQWNuQixjQWxCUTtBN0I0MkRaO0E2QnAyREU7RUFJRSx5QnRCbklpQjtFc0JvSWpCLGNBYlE7QTdCZzNEWjtBNkJoMkRFO0VBQ0UsbUVBYm1CO0VBY25CLGNBbEJRO0E3Qm8zRFo7QTZCNTJERTtFQUlFLHlCdEJuSWlCO0VzQm9JakIsY0FiUTtBN0J3M0RaO0E2QngyREU7RUFDRSxvQ0FibUI7RUFjbkIsY0FsQlE7QTdCNDNEWjtBNkJwM0RFO0VBSUUseUJ0Qm5JaUI7RXNCb0lqQixjQWJRO0E3Qmc0RFo7QTZCaDNERTtFQUNFLG1FQWJtQjtFQWNuQixjQWxCUTtBN0JvNERaO0E2QjEyREk7RUFDRSw2QkFBQTtBN0I0MkROO0E2QjMxREU7RUFJRSx5QkFBQTtFQUNBLGNYaEhnQjtBbEIwOERwQjtBNkJ2MURFO0VBQ0UsaUNBWlk7RUFhWiwwQkFiWTtBN0JzMkRoQjtBNkJuMkRFO0VBSUUseUJBQUE7RUFDQSxjdEJ4S2lCO0FQMGdFckI7QTZCLzFERTtFQUNFLGlDQVpZO0VBYVosMEJBYlk7QTdCODJEaEI7QTZCMzJERTtFQUlFLHlCQUFBO0VBQ0EsY3RCeEtpQjtBUGtoRXJCO0E2QnYyREU7RUFDRSxxQkFaWTtFQWFaLGNBYlk7QTdCczNEaEI7QTZCbjNERTtFQUlFLHlCQUFBO0VBQ0EsY3RCeEtpQjtBUDBoRXJCO0E2Qi8yREU7RUFDRSwrREFaWTtFQWFaLHdEQWJZO0E3QjgzRGhCO0E2QjMzREU7RUFJRSx5QkFBQTtFQUNBLGN0QnhLaUI7QVBraUVyQjtBNkJ2M0RFO0VBQ0UsK0JBWlk7RUFhWix3QkFiWTtBN0JzNERoQjtBNkJuNERFO0VBSUUseUJBQUE7RUFDQSxjdEJ4S2lCO0FQMGlFckI7QTZCLzNERTtFQUNFLDZEQVpZO0VBYVosc0RBYlk7QTdCODREaEI7QTZCejNESTtFQUNFLHlCQUFBO0VBQ0EsNkJBQUE7QTdCMjNETjtBNkI1MkRFO0VBSUUsY1hsSmdCO0FsQjYvRHBCO0E2QngyREU7RUFDRSwwQkFYWTtBN0JxM0RoQjtBNkJsM0RFO0VBSUUsY3RCMU1pQjtBUDJqRXJCO0E2QjkyREU7RUFDRSwwQkFYWTtBN0IyM0RoQjtBNkJ4M0RFO0VBSUUsY3RCMU1pQjtBUGlrRXJCO0E2QnAzREU7RUFDRSxjQVhZO0E3Qmk0RGhCO0E2QjkzREU7RUFJRSxjdEIxTWlCO0FQdWtFckI7QTZCMTNERTtFQUNFLHdEQVhZO0E3QnU0RGhCO0E2QnA0REU7RUFJRSxjdEIxTWlCO0FQNmtFckI7QTZCaDRERTtFQUNFLHdCQVhZO0E3QjY0RGhCO0E2QjE0REU7RUFJRSxjdEIxTWlCO0FQbWxFckI7QTZCdDRERTtFQUNFLHNEQVhZO0E3Qm01RGhCO0E2QjV4REk7RUFuR0YsYXRCNEJ3QjtFc0IzQnhCLG1CQUFBO0E3Qms0REY7QTZCdDNERTtFckIzUEEsY0FBQTtFQUNBLFFBQUE7RUFDQSxTQUFBO0VBRUEsbUJBQUE7RUFDQSxtQnFCa1BPO0VyQmhQUCxXQUFBO0VBR0Usc0JBQUE7RUFDQSw2Q0FBQTtFcUJrUEEsa0JBQUE7RUFDQSxVQUFBO0VBRUEscUJBQUE7RUFDQSxZQUFBO0VBQ0EsZ0JBVE87QTdCdTREWDtBNkJoeURRO0VBQ0UseUJYbFJVO0FsQm9qRXBCO0E2Qjd4RFk7RUFDRSx5QnRCaFZPO0FQK21FckI7QTZCaHlEWTtFQUNFLHlCdEJoVk87QVBrbkVyQjtBNkJueURZO0VBQ0UseUJ0QmhWTztBUHFuRXJCO0E2QnR5RFk7RUFDRSx5QnRCaFZPO0FQd25FckI7QTZCenlEWTtFQUNFLHlCdEJoVk87QVAybkVyQjtBNkJueURJO0VBQ0UsV0FBQTtFQUNBLFdBQUE7RUFDQSxjQUFBO0E3QnF5RE47O0E2Qmh5REk7RUFFRSxxQkFBQTtBN0JreUROOztBOEJuL0RFO0VBcExBLG1CdkIrUm1CO0V1QjVSakIsb0JBQUE7RUFBQSxxQkFBQTtFQUFBLG9CQUFBO0VBQUEsYUFB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RUY7QW1DMStFRTtFQUNFLGFBQUE7QW5DNCtFSjs7QW1DbDZFRTtFQXZEQSxjNUJ1akJtQjtBUHM2RHJCO0FtQzM5RUU7RUFDRSxXQVJhO0VBU2IsYzVCbWpCaUI7RTRCbGpCakIsbUJBbURxQjtBbkMwNkV6QjtBbUMxOUVFO0VBQ0UsWTVCb2pCbUI7RTRCbmpCbkIsYTVCbWpCbUI7RTRCbGpCbkIsV0FmYTtFQWdCYixZQWZjO0FuQzIrRWxCO0FtQ3o5RUU7RUFDRSxhQWxCcUI7QW5DNitFekI7O0FtQ2g3RUU7RUEzREEsZTVCd2pCb0I7QVB1N0R0QjtBbUM3K0VFO0VBQ0UsYUFSYTtFQVNiLGU1Qm9qQmtCO0U0Qm5qQmxCLGtCQXVEcUI7QW5DdzdFekI7QW1DNStFRTtFQUNFLFk1Qm9qQm1CO0U0Qm5qQm5CLGE1Qm1qQm1CO0U0QmxqQm5CLGNBZmE7RUFnQmIsZUFmYztBbkM2L0VsQjtBbUMzK0VFO0VBQ0UsVUFsQnFCO0FuQysvRXpCOztBbUM5N0VFO0VBL0RBLGM1QnlqQm9CO0FQdzhEdEI7QW1DLy9FRTtFQUNFLFdBUmE7RUFTYixjNUJxakJrQjtFNEJwakJsQixlQTJEcUI7QW5DczhFekI7QW1DOS9FRTtFQUNFLFk1Qm9qQm1CO0U0Qm5qQm5CLGE1Qm1qQm1CO0U0QmxqQm5CLFdBZmE7RUFnQmIsWUFmYztBbkMrZ0ZsQjtBbUM3L0VFO0VBQ0UsYUFsQnFCO0FuQ2loRnpCOztBb0N0N0VFO0VBOUdBLHlCQUFBO0VBQ0EsV0FBQTtFQUNBLG1CN0JoSGM7RTZCaUhkLGdCN0I1R2M7QVBvcEZoQjtBb0Nob0ZFOzs7RUFHRSwwQzdCK3FCVztFNkI5cUJYLHlCN0JsQ0k7QVBvcUZSOztBb0M5bkZFO0VBQ0UsaUM3QjBxQlk7RTZCenFCWixpQjdCL0JpQjtBUGdxRnJCOztBb0M3bkZFO0VBQ0UsdUM3QjJxQm9CO0U2QjFxQnBCLGM3Qi9DSTtBUCtxRlI7O0FvQzVuRkU7RUFDRSxvQzdCdXFCb0I7RTZCdHFCcEIsYzdCckRJO0FQb3JGUjs7QW9DeG5GSTs7RUFDRSx1QkFBQTtBcEM0bkZOO0FvQ3huRkk7Ozs7RUFFRSxpQzdCK29CVTtFNkI5b0JWLGlCN0IxRGU7RTZCMkRmLGdCQUFBO0FwQzRuRk47O0FvQ3RuRkk7O0VBRUUsaUM3QnFvQlU7QVBvL0RoQjs7QW9DOXJGTTtFQUNFLGdCQUFBO0VBQ0EsMEM3QjZzQm1CO0FQby9EM0I7O0FvQ25uRk07RUFDRSx5QjdCeEZBO0FQOHNGUjtBb0N2ckZFO0VBQ0UsaUQ3QndyQlc7RTZCdnJCWCx5QjdCekJJO0FQa3RGUjs7QUdobkZRO0VpQzBHSjtJQUNFLGFBQUE7RXBDMGdGSjtFb0N0Z0ZBO0lBQ0UsYUFBQTtFcEN3Z0ZGO0VvQ3JnRkE7OztJQUdFLGNBQUE7RXBDdWdGRjtFb0NwZ0ZBO0lBQ0UsYUFBQTtFcENzZ0ZGO0FBQ0Y7O0FvQ3gvRUU7RUF2R0EsY0FBQTtFQUNBLFdBQUE7RUFDQSxnQkFBQTtBcENtbUZGOztBb0M1bEZJO0VBQ0UsNkM3QjJrQmlCO0FQb2hFdkI7QW9DemxGSTtFQUNFLDBDN0Jza0JpQjtBUHFoRXZCO0FvQ3JsRkk7RUFDRSwwQzdCdWpCWTtBUGdpRWxCO0FvQ2hsRk07RUFDRSw2QzdCZ2pCaUI7QVBraUV6Qjs7QW9DbmdGRTtFQUNFLGdCQUFBO0FwQ3NnRko7O0FxQzF4RkU7RUFYQSxxQkFBQTtFQUNBLGdCOUIwT2U7RThCek9mLGM5QndPYztFOEJ0T2Qsa0JBQUE7RUFFQSxpQjlCc09nQjtFOEJyT2hCLGtCQUFBO0VBT0UsbUJuQjBFZ0I7RW1CekVoQixjOUI0Qkk7QVBxd0ZSO0FxQzl4Rk07RUFDRSxtQjlCYWE7RThCWmIsY0FBQTtBckNneUZSO0FxQ2x5Rk07RUFDRSxtQjlCYWE7RThCWmIsY0FBQTtBckNveUZSO0FxQ3R5Rk07RUFDRSxtQjlCYWE7RThCWmIsY0FBQTtBckN3eUZSO0FxQzF5Rk07RUFDRSxtQjlCYWE7RThCWmIsY0FBQTtBckM0eUZSO0FxQzl5Rk07RUFDRSxtQjlCYWE7RThCWmIsY0FBQTtBckNnekZSOztBc0MzdkZFO0VBL0NBLGtCL0J1Tm1CO0UrQnRObkIsZ0JBQUE7QXRDOHlGRjtBUWpzRkU7RUFFRSxj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O0VBR0UscUJBQUE7TUFBQSwwQkFBQTtVQUFBLGFBQUE7RUFDQSw0QkFBQTtFQUFBLGdCQUFBO01BQUEsaUJBQUE7VUFBQSxRQUFBO0FSNDFGTjtBUXgxRkU7RUFDRSxXQUFBO0FSMDFGSjtBMEMxN0ZFO0VBQ0UsdUJuQ3Fkc0I7RW1DcGR0QixnQm5DRFk7RW1DRVosbUJuQytjbUI7RW1DemNqQixhQUFBO0ExQ3U3Rk47QTBDcjdGTTtFQUVFLHFCQUFBO0ExQ3M3RlI7QUcxMkZRO0V1Q3pGTjtJQXVCTSxxQkFBQTtFMUNnN0ZOO0FBQ0Y7QTBDMzZGRTs7RUFFRSxjQUFBO0VBQ0EsMkJuQ3Fic0I7RW1DcGJ0QixnQm5DaENZO0VtQ2lDWixjbkM1Q0k7QVB5OUZSO0EwQzM2Rkk7O0VBQ0UsbUJuQ2xETztBUGcrRmI7QTBDajRGSTtFQWxDRiwyQm5DcWF3QjtFbUNwYXhCLG1CeEJia0I7RXdCY2xCLGNuQzNETTtFbUM0RE4sZUFBQTtBMUNzNkZGO0EwQ240Rkk7RUEzQkYsMkJuQzBad0I7RW1Delp4QixjbkN4RVk7RW1DeUVaLG1CQUFBO0ExQ2k2RkY7QTBDLzVGRTtFQUNFLHVCQUFBO0ExQ2k2Rko7QTBDdjRGSTtFQWpCRiwyQm5DNFl3QjtFbUMzWXhCLFlBQUE7RUFDQSxjbkNyRk07QVBnL0ZSOztBMEN0NEZJOztFQUVFLHFCQUFBO0VBQ0Esb0JBQUE7RUFDQSxZbkM0WHNCO0FQNmdGNUI7O0EwQ3Q0Rkk7O0VBRUUscUJBQUE7RUFDQSxtQkFBQTtFQUNBLFluQ3NYa0I7QVBtaEZ4Qjs7QTJDdDdGRTtFQW5HQSxrQkFBQTtFQUNBLHFCQUFBO0VBRUEsaUNwQ295QnNCO0VvQ255QnRCLGlCcENpQ21CO0VvQ2hDbkIsWXBDZ3lCZTtBUDR2RWpCOztBMkMxN0ZFO0VBOUZBLGtCQUFBO0VBQ0EsMkJBQUE7RUFDQSxhQUFBO0VBRUEsZ0JwQzh4QmtCO0VvQzd4QmxCLGdCcEM0eEJnQjtFb0MxeEJoQixnQnBDc0JjO0VvQ3JCZCx5QnBDVU07RW9DVE4sY3BDK0ZnQjtFb0M5RmhCLGNwQ1NNO0FQaWhHUjtBMkN4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ODBKakI7O0E0RDcwSk07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QTVEazFKakI7O0E0RGoxSk07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QTVEczFKakI7O0E0RHIxSk07RUNoQ0osNEJEK0JlO0VDL0JmLGdCRCtCZTtNQy9CZixpQkQrQmU7VUMvQmYsUUQrQmU7QTVEMDFKakI7O0FHcHhKUTtFeURyRUY7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RTVEKzFKZjtFNEQ5MUpJO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0U1RGsySmY7RTREajJKSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFNURxMkpmO0U0RHAySkk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RTVEdzJKZjtFNER2MkpJO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0U1RDIySmY7RTREMTJKSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFNUQ4MkpmO0FBQ0Y7QUd6eUpRO0V5RHJFRjtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFNURtM0pmO0U0RGwzSkk7SUNoQ0osNEJEK0JlO0lDL0JmLGdCRCtCZTtRQy9CZixpQkQrQmU7WUMvQmYsUUQrQmU7RTVEczNKZjtFNERyM0pJO0lDaENKLDRCRCtCZTtJQy9CZixnQkQrQmU7UUMvQmYsaUJEK0JlO1lDL0JmLFFEK0JlO0U1RHkzSmY7RTREeDNKSTtJQ2hDSiw0QkQrQmU7SUMvQmYsZ0JEK0JlO1FDL0JmLGlCRCtCZTtZQy9CZixRRCtCZTtFNUQ0M0pm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QUFBO0VBQUEscUJBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtFQUFBLDJCQUFBO01BQUEsc0JBQUE7VUFBQSxtQkFBQTtFQUNBLHdCQUFBO0VBQUEsK0JBQUE7TUFBQSxxQkFBQTtVQUFBLHVCQUFBO0FoSTArWFY7QUd6NVhRO0U2SC9GQTtJQWdCSSxrQkFBQTtJQUNBLGdCQUFBO0lBQ0EsaUJBQUE7RWhJNCtYVjtBQUNGO0FnSTErWFE7RUFDRSwwQkFBQTtBaEk0K1hWO0FHbjZYUTtFNkgxRUE7SUFHSSwwQkFBQTtFaEk4K1hWO0FBQ0Y7QWdJNytYVTtFQUNFLGdCQUFBO0FoSSsrWFo7QWdJNStYUTtFQUNFLHlCQUFBO0FoSTgrWFY7QUc5NlhRO0U2SGpFQTtJQUdJLHlCQUFBO0VoSWcvWFY7QUFDRjtBZ0kvK1hVO0VBQ0UsZ0JBQUE7RUFDQSxpQ0FBQTtNQUFBLDZCQUFBO1VBQUEseUJBQUE7QWhJaS9YWjtBZ0k3K1hVO0VBQ0UsZ0JBQUE7RUFDQSx1Q0FBQTtBaEkrK1haO0FnSTMrWFU7RUFDRSxnQkFBQTtFQUNBLHVDQUFBO0FoSTYrWFoiLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIkBjaGFyc2V0IFwiVVRGLThcIjtcbi8qKlxuICogRm91bmRhdGlvbiBmb3IgU2l0ZXNcbiAqIFZlcnNpb24gNi45LjBcbiAqIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuICovXG5AaW1wb3J0IHVybChcImh0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TGVhZ3VlK1NwYXJ0YW46d2dodEA0MDA7NTAwOzYwMDs3MDA7ODAwJmZhbWlseT1MaWJyZStGcmFua2xpbiZkaXNwbGF5PXN3YXBcIik7XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsLmxhcmdlLCAucmV2ZWFsLnNtYWxsLCAucmV2ZWFsLnRpbnksIC5yZXZlYWwge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5oMSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBtYXJnaW46IDAuNjdlbSAwO1xufVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xufVxuXG5wcmUge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5hIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkO1xufVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbn1cblxuY29kZSxcbmtiZCxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdWIge1xuICBib3R0b206IC0wLjI1ZW07XG59XG5cbnN1cCB7XG4gIHRvcDogLTAuNWVtO1xufVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAxLjE1O1xuICBtYXJnaW46IDA7XG59XG5cbmJ1dHRvbixcbmlucHV0IHtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG5idXR0b24sXG5bdHlwZT1idXR0b25dLFxuW3R5cGU9cmVzZXRdLFxuW3R5cGU9c3VibWl0XSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xufVxuXG5idXR0b246Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1idXR0b25dOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9cmVzZXRdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9c3VibWl0XTo6LW1vei1mb2N1cy1pbm5lciB7XG4gIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9YnV0dG9uXTotbW96LWZvY3VzcmluZyxcblt0eXBlPXJlc2V0XTotbW96LWZvY3VzcmluZyxcblt0eXBlPXN1Ym1pdF06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG59XG5cbmZpZWxkc2V0IHtcbiAgcGFkZGluZzogMC4zNWVtIDAuNzVlbSAwLjYyNWVtO1xufVxuXG5sZWdlbmQge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjb2xvcjogaW5oZXJpdDtcbiAgZGlzcGxheTogdGFibGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbn1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG59XG5cblt0eXBlPWNoZWNrYm94XSxcblt0eXBlPXJhZGlvXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7XG59XG5cblt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5bdHlwZT1zZWFyY2hdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuXG5bdHlwZT1zZWFyY2hdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xufVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7XG59XG5cbmRldGFpbHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGxpc3QtaXRlbTtcbn1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5baGlkZGVuXSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbltkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICosIFtkYXRhLXdoYXRpbnRlbnQ9bW91c2VdICo6Zm9jdXMsXG5bZGF0YS13aGF0aW50ZW50PXRvdWNoXSAqLFxuW2RhdGEtd2hhdGludGVudD10b3VjaF0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKixcbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gKjpmb2N1cyxcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKixcbltkYXRhLXdoYXRpbnB1dD10b3VjaF0gKjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG5cbltkcmFnZ2FibGU9ZmFsc2VdIHtcbiAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDhlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbVwiO1xufVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlO1xufVxuXG4qLFxuKjo6YmVmb3JlLFxuKjo6YWZ0ZXIge1xuICBib3gtc2l6aW5nOiBpbmhlcml0O1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuaW1nIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbiAgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYztcbn1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbnNlbGVjdCB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHdpZHRoOiAxMDAlO1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4ubWFwX2NhbnZhcyBpbWcsXG4ubWFwX2NhbnZhcyBlbWJlZCxcbi5tYXBfY2FudmFzIG9iamVjdCxcbi5tcWEtZGlzcGxheSBpbWcsXG4ubXFhLWRpc3BsYXkgZW1iZWQsXG4ubXFhLWRpc3BsYXkgb2JqZWN0IHtcbiAgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIGJ1dHRvbiB7XG4gIG91dGxpbmU6IDA7XG59XG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG59XG5cbmJ1dHRvbixcbmlucHV0LFxub3B0Z3JvdXAsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xufVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG5cbi5pcy1oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblt0eXBlPXRleHRdLCBbdHlwZT1wYXNzd29yZF0sIFt0eXBlPWRhdGVdLCBbdHlwZT1kYXRldGltZV0sIFt0eXBlPWRhdGV0aW1lLWxvY2FsXSwgW3R5cGU9bW9udGhdLCBbdHlwZT13ZWVrXSwgW3R5cGU9ZW1haWxdLCBbdHlwZT1udW1iZXJdLCBbdHlwZT1zZWFyY2hdLCBbdHlwZT10ZWxdLCBbdHlwZT10aW1lXSwgW3R5cGU9dXJsXSwgW3R5cGU9Y29sb3JdLFxudGV4dGFyZWEge1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMi40Mzc1cmVtO1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjVyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDEwLCAxMCwgMTAsIDAuMSk7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjU7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cblt0eXBlPXRleHRdOmZvY3VzLCBbdHlwZT1wYXNzd29yZF06Zm9jdXMsIFt0eXBlPWRhdGVdOmZvY3VzLCBbdHlwZT1kYXRldGltZV06Zm9jdXMsIFt0eXBlPWRhdGV0aW1lLWxvY2FsXTpmb2N1cywgW3R5cGU9bW9udGhdOmZvY3VzLCBbdHlwZT13ZWVrXTpmb2N1cywgW3R5cGU9ZW1haWxdOmZvY3VzLCBbdHlwZT1udW1iZXJdOmZvY3VzLCBbdHlwZT1zZWFyY2hdOmZvY3VzLCBbdHlwZT10ZWxdOmZvY3VzLCBbdHlwZT10aW1lXTpmb2N1cywgW3R5cGU9dXJsXTpmb2N1cywgW3R5cGU9Y29sb3JdOmZvY3VzLFxudGV4dGFyZWE6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cbnRleHRhcmVhW3Jvd3NdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5pbnB1dDpkaXNhYmxlZCwgaW5wdXRbcmVhZG9ubHldLFxudGV4dGFyZWE6ZGlzYWJsZWQsXG50ZXh0YXJlYVtyZWFkb25seV0ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG5bdHlwZT1zdWJtaXRdLFxuW3R5cGU9YnV0dG9uXSB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbmlucHV0W3R5cGU9c2VhcmNoXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbjo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2NhY2FjYTtcbn1cblxuW3R5cGU9ZmlsZV0sXG5bdHlwZT1jaGVja2JveF0sXG5bdHlwZT1yYWRpb10ge1xuICBtYXJnaW46IDAgMCAxcmVtO1xufVxuXG5bdHlwZT1jaGVja2JveF0gKyBsYWJlbCxcblt0eXBlPXJhZGlvXSArIGxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblt0eXBlPWNoZWNrYm94XSArIGxhYmVsW2Zvcl0sXG5bdHlwZT1yYWRpb10gKyBsYWJlbFtmb3JdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG5sYWJlbCA+IFt0eXBlPWNoZWNrYm94XSxcbmxhYmVsID4gW3R5cGU9cmFkaW9dIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG59XG5cblt0eXBlPWZpbGVdIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbmxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG5sYWJlbC5taWRkbGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMDtcbn1cblxuLmhlbHAtdGV4dCB7XG4gIG1hcmdpbi10b3A6IC0wLjVyZW07XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG59XG4uaW5wdXQtZ3JvdXAgPiA6Zmlyc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cbi5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLCAuaW5wdXQtZ3JvdXAgPiA6bGFzdC1jaGlsZC5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBpbnB1dCxcbi5pbnB1dC1ncm91cC1idXR0b24gYnV0dG9uLFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCwgLmlucHV0LWdyb3VwLWJ1dHRvbiwgLmlucHV0LWdyb3VwLWZpZWxkLCAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5pbnB1dC1ncm91cC1sYWJlbCB7XG4gIHBhZGRpbmc6IDAgMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICBib3JkZXItcmlnaHQ6IDA7XG59XG4uaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG4uaW5wdXQtZ3JvdXAtZmllbGQge1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmbGV4OiAxIDEgMHB4O1xuICBtaW4td2lkdGg6IDA7XG59XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGEsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuLmlucHV0LWdyb3VwLWJ1dHRvbiBidXR0b24sXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGxhYmVsIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuZmllbGRzZXQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogMDtcbn1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbi5maWVsZHNldCB7XG4gIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgcGFkZGluZzogMS4yNXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbn1cbi5maWVsZHNldCBsZWdlbmQge1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1sZWZ0OiAtMC4xODc1cmVtO1xuICBwYWRkaW5nOiAwIDAuMTg3NXJlbTtcbn1cblxuc2VsZWN0IHtcbiAgaGVpZ2h0OiAyLjQzNzVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDAuNXJlbTtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgdmVyc2lvbj1cIjEuMVwiIHdpZHRoPVwiMzJcIiBoZWlnaHQ9XCIyNFwiIHZpZXdCb3g9XCIwIDAgMzIgMjRcIj48cG9seWdvbiBwb2ludHM9XCIwLDAgMzIsMCAxNiwyNFwiIHN0eWxlPVwiZmlsbDogcmdiJTI4MTM4LCAxMzgsIDEzOCUyOVwiPjwvcG9seWdvbj48L3N2Zz4nKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDAgKSB7XG4gIHNlbGVjdCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTtcbiAgfVxufVxuc2VsZWN0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCAwIDVweCAjY2FjYWNhO1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDtcbn1cbnNlbGVjdDpkaXNhYmxlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5zZWxlY3Q6Oi1tcy1leHBhbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuc2VsZWN0W211bHRpcGxlXSB7XG4gIGhlaWdodDogYXV0bztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbn1cbnNlbGVjdDpub3QoW211bHRpcGxlXSkge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG59XG5cbi5pcy1pbnZhbGlkLWlucHV0Om5vdCg6Zm9jdXMpIHtcbiAgYm9yZGVyLWNvbG9yOiAjY2M0YjM3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ5LCAyMzYuMSwgMjM0LjEpO1xufVxuLmlzLWludmFsaWQtaW5wdXQ6bm90KDpmb2N1cyk6OnBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG5cbi5mb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbmRpdixcbmRsLFxuZHQsXG5kZCxcbnVsLFxub2wsXG5saSxcbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNixcbnByZSxcbmZvcm0sXG5wLFxuYmxvY2txdW90ZSxcbnRoLFxudGQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IGluaGVyaXQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5cbmVtLFxuaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cbnNtYWxsIHtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMsXG5oNCwgLmg0LFxuaDUsIC5oNSxcbmg2LCAuaDYge1xuICBmb250LWZhbWlseTogXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5oMSBzbWFsbCwgLmgxIHNtYWxsLFxuaDIgc21hbGwsIC5oMiBzbWFsbCxcbmgzIHNtYWxsLCAuaDMgc21hbGwsXG5oNCBzbWFsbCwgLmg0IHNtYWxsLFxuaDUgc21hbGwsIC5oNSBzbWFsbCxcbmg2IHNtYWxsLCAuaDYgc21hbGwge1xuICBsaW5lLWhlaWdodDogMDtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG5cbmgxLCAuaDEge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsaW5lLWhlaWdodDogMS40O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG59XG5cbmgzLCAuaDMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5oNSwgLmg1IHtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDAuNXJlbTtcbn1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMC41cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gIH1cbiAgaDIsIC5oMiB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjkzNzVyZW07XG4gIH1cbiAgaDQsIC5oNCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gIH1cbiAgaDUsIC5oNSB7XG4gICAgZm9udC1zaXplOiAxLjI1cmVtO1xuICB9XG4gIGg2LCAuaDYge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgfVxufVxuYSB7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICBjb2xvcjogIzE3NzliYTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5hOmhvdmVyLCBhOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxOS43OCwgMTA0LjA2LCAxNTkuOTYpO1xufVxuYSBpbWcge1xuICBib3JkZXI6IDA7XG59XG5cbmhyIHtcbiAgY2xlYXI6IGJvdGg7XG4gIG1heC13aWR0aDogNzVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNjYWNhY2E7XG4gIGJvcmRlci1sZWZ0OiAwO1xufVxuXG51bCxcbm9sLFxuZGwge1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxudWwge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTtcbiAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xufVxuXG5vbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xufVxuXG51bCB1bCwgdWwgb2wsIG9sIHVsLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG59XG5kbCBkdCB7XG4gIG1hcmdpbi1ib3R0b206IDAuM3JlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxcmVtO1xuICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbSAwIDEuMTg3NXJlbTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjY2FjYWNhO1xufVxuYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgY29sb3I6ICM4YThhOGE7XG59XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMGEwYTBhO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuZmlndXJlIHtcbiAgbWFyZ2luOiAwO1xufVxuXG5rYmQge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMjVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjOGE4YThhO1xufVxuXG4ubGVhZCB7XG4gIGZvbnQtc2l6ZTogMTI1JTtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuLnN0YXQge1xuICBmb250LXNpemU6IDIuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5wICsgLnN0YXQge1xuICBtYXJnaW4tdG9wOiAtMXJlbTtcbn1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLmNpdGUtYmxvY2ssIGNpdGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICM4YThhOGE7XG4gIGZvbnQtc2l6ZTogMC44MTI1cmVtO1xufVxuLmNpdGUtYmxvY2s6YmVmb3JlLCBjaXRlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oCUIFwiO1xufVxuXG4uY29kZS1pbmxpbmUsIGNvZGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBmb250LWZhbWlseTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwLjA2MjVyZW07XG59XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLnRleHQtbGVmdCB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbi50ZXh0LXJpZ2h0IHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnRleHQtanVzdGlmeSB7XG4gIHRleHQtYWxpZ246IGp1c3RpZnk7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIH1cbiAgLm1lZGl1bS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5tZWRpdW0tdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG4gIC5sYXJnZS10ZXh0LXJpZ2h0IHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICAubGFyZ2UtdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAubGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICB9XG59XG4uc2hvdy1mb3ItcHJpbnQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgcHJpbnQtY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50O1xuICB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDtcbiAgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7XG4gIH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICBhW2hyZWZePVwiI1wiXTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTtcbiAgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gIH1cbn1cbi5yb3cge1xuICBtYXgtd2lkdGg6IDc1cmVtO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuLnJvdzo6YmVmb3JlLCAucm93OjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4ucm93OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnJvdy5jb2xsYXBzZSA+IC5jb2x1bW4sIC5yb3cuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbi5yb3cgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJvdyAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0wLjkzNzVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IC0wLjkzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yb3cgLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtO1xuICAgIG1hcmdpbi1sZWZ0OiAtMC45Mzc1cmVtO1xuICB9XG59XG4ucm93IC5yb3cuY29sbGFwc2Uge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnJvdy5leHBhbmRlZCB7XG4gIG1heC13aWR0aDogbm9uZTtcbn1cbi5yb3cuZXhwYW5kZWQgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG59XG4ucm93Om5vdCguZXhwYW5kZWQpIC5yb3cge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG4ucm93Lmd1dHRlci1zbWFsbCA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLXNtYWxsID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbn1cbi5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW4sIC5yb3cuZ3V0dGVyLW1lZGl1bSA+IC5jb2x1bW5zIHtcbiAgcGFkZGluZy1yaWdodDogMC45Mzc1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbn1cblxuLmNvbHVtbiwgLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbHVtbiwgLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuOTM3NXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgfVxufVxuLmNvbHVtbiwgLmNvbHVtbnMsIC5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogbm9uZTtcbn1cbi5jb2x1bW46bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmNvbHVtbnM6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiByaWdodDtcbn1cbi5jb2x1bW4uZW5kOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCwgLmVuZC5jb2x1bW5zOmxhc3QtY2hpbGQ6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uY29sdW1uLnJvdy5yb3csIC5yb3cucm93LmNvbHVtbnMge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLnJvdyAuY29sdW1uLnJvdy5yb3csIC5yb3cgLnJvdy5yb3cuY29sdW1ucyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cblxuLnNtYWxsLTEge1xuICB3aWR0aDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogOC4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1bGwtMSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMCB7XG4gIG1hcmdpbi1sZWZ0OiAwJTtcbn1cblxuLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC0yIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtMTYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMSB7XG4gIG1hcmdpbi1sZWZ0OiA4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7XG59XG5cbi5zbWFsbC1wdXNoLTMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLXB1bGwtMyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTI1JTtcbn1cblxuLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtNCB7XG4gIHdpZHRoOiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtNCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogMzMuMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdWxsLTQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC0zMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLW9mZnNldC0zIHtcbiAgbWFyZ2luLWxlZnQ6IDI1JTtcbn1cblxuLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDQxLjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVsbC01IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNDEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTYge1xuICB3aWR0aDogNTAlO1xufVxuXG4uc21hbGwtcHVzaC02IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC1wdWxsLTYge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC01MCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNSB7XG4gIG1hcmdpbi1sZWZ0OiA0MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLTcge1xuICB3aWR0aDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1wdXNoLTcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDU4LjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC03IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7XG59XG5cbi5zbWFsbC04IHtcbiAgd2lkdGg6IDY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtcHVzaC04IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtOCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTY2LjY2NjY2NjY2NjclO1xufVxuXG4uc21hbGwtb2Zmc2V0LTcge1xuICBtYXJnaW4tbGVmdDogNTguMzMzMzMzMzMzMyU7XG59XG5cbi5zbWFsbC05IHtcbiAgd2lkdGg6IDc1JTtcbn1cblxuLnNtYWxsLXB1c2gtOSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogNzUlO1xufVxuXG4uc21hbGwtcHVsbC05IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiAtNzUlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLXB1c2gtMTAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtcHVsbC0xMCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbGVmdDogLTgzLjMzMzMzMzMzMzMlO1xufVxuXG4uc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogNzUlO1xufVxuXG4uc21hbGwtMTEge1xuICB3aWR0aDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC1wdXNoLTExIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBsZWZ0OiA5MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLXB1bGwtMTEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IC05MS42NjY2NjY2NjY3JTtcbn1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMzMzMzMzJTtcbn1cblxuLnNtYWxsLTEyIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG59XG5cbi5zbWFsbC11cC0xID4gLmNvbHVtbiwgLnNtYWxsLXVwLTEgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTAwJTtcbn1cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5zbWFsbC11cC0xID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC0xID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTIgPiAuY29sdW1uLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiA1MCU7XG59XG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTIgPiAuY29sdW1uOm50aC1vZi10eXBlKDJuKzEpLCAuc21hbGwtdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtMiA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTIgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC0zID4gLmNvbHVtbiwgLnNtYWxsLXVwLTMgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG59XG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVwLTMgPiAuY29sdW1uOm50aC1vZi10eXBlKDNuKzEpLCAuc21hbGwtdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDNuKzEpIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uc21hbGwtdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLnNtYWxsLXVwLTMgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG5cbi5zbWFsbC11cC00ID4gLmNvbHVtbiwgLnNtYWxsLXVwLTQgPiAuY29sdW1ucyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjUlO1xufVxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICBjbGVhcjogbm9uZTtcbn1cbi5zbWFsbC11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLnNtYWxsLXVwLTQgPiAuY29sdW1uczpudGgtb2YtdHlwZSg0bisxKSB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNtYWxsLXVwLTQgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5zbWFsbC11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uc21hbGwtdXAtNSA+IC5jb2x1bW4sIC5zbWFsbC11cC01ID4gLmNvbHVtbnMge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDIwJTtcbn1cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNW4rMSksIC5zbWFsbC11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC01ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTYgPiAuY29sdW1uLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbn1cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoNm4rMSksIC5zbWFsbC11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNm4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTcgPiAuY29sdW1uLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxNC4yODU3MTQyODU3JTtcbn1cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5zbWFsbC11cC03ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoN24rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC03ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLXVwLTggPiAuY29sdW1uLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAxMi41JTtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgY2xlYXI6IG5vbmU7XG59XG4uc21hbGwtdXAtOCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoOG4rMSksIC5zbWFsbC11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICBjbGVhcjogYm90aDtcbn1cbi5zbWFsbC11cC04ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAuc21hbGwtdXAtOCA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICBmbG9hdDogbGVmdDtcbn1cblxuLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc21hbGwtY29sbGFwc2UgLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5leHBhbmRlZC5yb3cgLnNtYWxsLWNvbGxhcHNlLnJvdyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbi5zbWFsbC11bmNvbGxhcHNlID4gLmNvbHVtbiwgLnNtYWxsLXVuY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xufVxuXG4uc21hbGwtY2VudGVyZWQge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuLnNtYWxsLWNlbnRlcmVkLCAuc21hbGwtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIGZsb2F0OiBub25lO1xuICBjbGVhcjogYm90aDtcbn1cblxuLnNtYWxsLXVuY2VudGVyZWQsIC5zbWFsbC1wdXNoLTAsIC5zbWFsbC1wdWxsLTAge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnNtYWxsLXVuY2VudGVyZWQsIC5zbWFsbC11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5zbWFsbC1wdXNoLTAsIC5zbWFsbC1wdXNoLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1bGwtMCwgLnNtYWxsLXB1bGwtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBub25lO1xufVxuLnNtYWxsLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLnNtYWxsLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAuc21hbGwtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG4gIC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogMjUlO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC0zMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlO1xuICB9XG4gIC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuICAubWVkaXVtLXB1c2gtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgfVxuICAubWVkaXVtLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1vZmZzZXQtNiB7XG4gICAgbWFyZ2luLWxlZnQ6IDUwJTtcbiAgfVxuICAubWVkaXVtLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXB1c2gtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA3NSU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS1wdWxsLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7XG4gIH1cbiAgLm1lZGl1bS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVzaC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5tZWRpdW0tcHVsbC0xMSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC05MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLm1lZGl1bS11cC0xID4gLmNvbHVtbiwgLm1lZGl1bS11cC0xID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4rMSksIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMSA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTIgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDJuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTIgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgzbisxKSwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtMyA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC0zID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbiwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC00ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg0bisxKSwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC00ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbiwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoNW4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtNSA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbiwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLm1lZGl1bS11cC02ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubWVkaXVtLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDZuKzEpLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11cC02ID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubWVkaXVtLXVwLTYgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uLCAubWVkaXVtLXVwLTcgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDE0LjI4NTcxNDI4NTclO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubWVkaXVtLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoN24rMSksIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDduKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubWVkaXVtLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5tZWRpdW0tdXAtNyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW4sIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoOG4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5tZWRpdW0tdXAtOCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLm1lZGl1bS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLm1lZGl1bS1jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tY29sbGFwc2UgPiAuY29sdW1ucyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gIH1cbiAgLm1lZGl1bS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubWVkaXVtLWNvbGxhcHNlLnJvdyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW4sIC5tZWRpdW0tdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbiAgLm1lZGl1bS1jZW50ZXJlZCB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC5tZWRpdW0tY2VudGVyZWQsIC5tZWRpdW0tY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkLCAubWVkaXVtLXB1c2gtMCwgLm1lZGl1bS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5tZWRpdW0tdW5jZW50ZXJlZCwgLm1lZGl1bS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVzaC0wLCAubWVkaXVtLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubWVkaXVtLXB1bGwtMCwgLm1lZGl1bS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLm1lZGl1bS11bmNlbnRlcmVkOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5tZWRpdW0tcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA4LjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTAge1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxuICAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0yIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTE2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7XG4gIH1cbiAgLmxhcmdlLXB1c2gtMyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtcHVsbC0zIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTI1JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiAxNi42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAzMy4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVsbC00IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtMyB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1JTtcbiAgfVxuICAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA0MS42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVsbC01IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogLTQxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01MCU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtcHVzaC03IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNTguMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtNyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC01OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7XG4gIH1cbiAgLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2UtcHVzaC04IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNjYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtOCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IC02Ni42NjY2NjY2NjY3JTtcbiAgfVxuICAubGFyZ2Utb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiA1OC4zMzMzMzMzMzMzJTtcbiAgfVxuICAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTtcbiAgfVxuICAubGFyZ2UtcHVzaC05IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS1wdWxsLTkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtNzUlO1xuICB9XG4gIC5sYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS1wdXNoLTEwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtODMuMzMzMzMzMzMzMyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlO1xuICB9XG4gIC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS1wdXNoLTExIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbGVmdDogOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXB1bGwtMTEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBsZWZ0OiAtOTEuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY2NjY2NjclO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbiwgLmxhcmdlLXVwLTEgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC0xID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbisxKSwgLmxhcmdlLXVwLTEgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTEgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC0xID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTIgPiAuY29sdW1uLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogNTAlO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMiA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMm4rMSksIC5sYXJnZS11cC0yID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMm4rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0yID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMiA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbiwgLmxhcmdlLXVwLTMgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMzMzMlO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpudGgtb2YtdHlwZSgxbiksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoMW4pIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAubGFyZ2UtdXAtMyA+IC5jb2x1bW46bnRoLW9mLXR5cGUoM24rMSksIC5sYXJnZS11cC0zID4gLmNvbHVtbnM6bnRoLW9mLXR5cGUoM24rMSkge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG4gIC5sYXJnZS11cC0zID4gLmNvbHVtbjpsYXN0LWNoaWxkLCAubGFyZ2UtdXAtMyA+IC5jb2x1bW5zOmxhc3QtY2hpbGQge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5sYXJnZS11cC00ID4gLmNvbHVtbiwgLmxhcmdlLXVwLTQgPiAuY29sdW1ucyB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDI1JTtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bnRoLW9mLXR5cGUoMW4pLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDFuKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVwLTQgPiAuY29sdW1uOm50aC1vZi10eXBlKDRuKzEpLCAubGFyZ2UtdXAtNCA+IC5jb2x1bW5zOm50aC1vZi10eXBlKDRuKzEpIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxuICAubGFyZ2UtdXAtNCA+IC5jb2x1bW46bGFzdC1jaGlsZCwgLmxhcmdlLXVwLTQgPiAuY29sdW1uczpsYXN0LWNoaWxkIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAubGFyZ2UtdXAtNSA+IC5jb2x1bW4sIC5sYXJnZS11cC01ID4gLmNvbHVtbnMge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyMCU7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC01ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg1bisxKSwgLmxhcmdlLXVwLTUgPiAuY29sdW1uczpudGgtb2YtdHlwZSg1bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTUgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC01ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uLCAubGFyZ2UtdXAtNiA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTYuNjY2NjY2NjY2NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC02ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg2bisxKSwgLmxhcmdlLXVwLTYgPiAuY29sdW1uczpudGgtb2YtdHlwZSg2bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTYgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC02ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uLCAubGFyZ2UtdXAtNyA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTQuMjg1NzE0Mjg1NyU7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC03ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg3bisxKSwgLmxhcmdlLXVwLTcgPiAuY29sdW1uczpudGgtb2YtdHlwZSg3bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTcgPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC03ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uLCAubGFyZ2UtdXAtOCA+IC5jb2x1bW5zIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTIuNSU7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOm50aC1vZi10eXBlKDFuKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSgxbikge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5sYXJnZS11cC04ID4gLmNvbHVtbjpudGgtb2YtdHlwZSg4bisxKSwgLmxhcmdlLXVwLTggPiAuY29sdW1uczpudGgtb2YtdHlwZSg4bisxKSB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVwLTggPiAuY29sdW1uOmxhc3QtY2hpbGQsIC5sYXJnZS11cC04ID4gLmNvbHVtbnM6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbiAgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbiwgLmxhcmdlLWNvbGxhcHNlID4gLmNvbHVtbnMge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS1jb2xsYXBzZSAucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmV4cGFuZGVkLnJvdyAubGFyZ2UtY29sbGFwc2Uucm93IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgLmxhcmdlLXVuY29sbGFwc2UgPiAuY29sdW1uLCAubGFyZ2UtdW5jb2xsYXBzZSA+IC5jb2x1bW5zIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjkzNzVyZW07XG4gICAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIH1cbiAgLmxhcmdlLWNlbnRlcmVkLCAubGFyZ2UtY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQsIC5sYXJnZS1wdXNoLTAsIC5sYXJnZS1wdWxsLTAge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5sYXJnZS11bmNlbnRlcmVkLCAubGFyZ2UtdW5jZW50ZXJlZDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVzaC0wLCAubGFyZ2UtcHVzaC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksIC5sYXJnZS1wdWxsLTAsIC5sYXJnZS1wdWxsLTA6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmxhcmdlLXVuY2VudGVyZWQ6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSwgLmxhcmdlLXB1c2gtMDpsYXN0LWNoaWxkOm5vdCg6Zmlyc3QtY2hpbGQpLCAubGFyZ2UtcHVsbC0wOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkge1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuLmNvbHVtbi1ibG9jayB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG4uY29sdW1uLWJsb2NrID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbHVtbi1ibG9jayB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gIH1cbiAgLmNvbHVtbi1ibG9jayA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgMC4yNXMgZWFzZS1vdXQsIGNvbG9yIDAuMjVzIGVhc2Utb3V0O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAwLjlyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBwYWRkaW5nOiAwLjg1ZW0gMWVtO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5idXR0b24udGlueSB7XG4gIGZvbnQtc2l6ZTogMC42cmVtO1xufVxuLmJ1dHRvbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cbi5idXR0b24ubGFyZ2Uge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYnV0dG9uLmV4cGFuZGVkIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmJ1dHRvbiwgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOS41NSwgMTAyLjg1LCAxNTguMSk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5wcmltYXJ5LCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOC40LCA5Ni44LCAxNDguOCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjNzY3Njc2O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLnNlY29uZGFyeTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig5NC40LCA5NC40LCA5NC40KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24uc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM0LjIzODYyNjYwOTQsIDE4Ny4zNjEzNzMzOTA2LCA5MS4zMDMwMDQyOTE4KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLndhcm5pbmcsIC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNCwgMTM5LjIsIDApO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24uYWxlcnQsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTY1LjA5OTYwMTU5MzYsIDU4LjYxMDM1ODU2NTcsIDQyLjEwMDM5ODQwNjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMsIC5idXR0b24uaG9sbG93LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24uaG9sbG93LCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzE3NzliYTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICMxNzc5YmE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnksIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24uaG9sbG93LnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3MsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG4gIGNvbG9yOiByZ2IoMjEuMzk5MTQxNjMwOSwgMTE3LjEwMDg1ODM2OTEsIDU3LjA2NDM3NzY4MjQpO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZywgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmZmFlMDA7XG4gIGNvbG9yOiAjZmZhZTAwO1xufVxuLmJ1dHRvbi5ob2xsb3cud2FybmluZzpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG4gIGNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbn1cbi5idXR0b24uaG9sbG93LmFsZXJ0LCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5ob2xsb3cuYWxlcnRbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgY29sb3I6ICNjYzRiMzc7XG59XG4uYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xuICBjb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG4uYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLmNsZWFyLnByaW1hcnksIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24uY2xlYXIucHJpbWFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLmNsZWFyLnNlY29uZGFyeSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjNzY3Njc2O1xufVxuLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLmNsZWFyLnN1Y2Nlc3MsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24uY2xlYXIuc3VjY2Vzczpob3ZlciwgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLmNsZWFyLndhcm5pbmcsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uY2xlYXIud2FybmluZzpob3ZlciwgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydCwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF0sIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gIGNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi5jbGVhci5hbGVydDpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydDpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgb3BhY2l0eTogMC4yNTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cbi5idXR0b24uZHJvcGRvd246OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC40ZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogI2ZlZmVmZSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDAuNGVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLWxlZnQ6IDFlbTtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhcjo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cucHJpbWFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIucHJpbWFyeTo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjMTc3OWJhO1xufVxuLmJ1dHRvbi5kcm9wZG93bi5ob2xsb3cuc2Vjb25kYXJ5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5zZWNvbmRhcnk6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyIHtcbiAgYm9yZGVyLXRvcC1jb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5hbGVydDo6YWZ0ZXIge1xuICBib3JkZXItdG9wLWNvbG9yOiAjY2M0YjM3O1xufVxuLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gIHRvcDogLTAuMWVtO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG5cbmEuYnV0dG9uOmhvdmVyLCBhLmJ1dHRvbjpmb2N1cyB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJ1dHRvbi1ncm91cCB7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGZsZXgtZ3JvdzogMTtcbn1cbi5idXR0b24tZ3JvdXA6OmJlZm9yZSwgLmJ1dHRvbi1ncm91cDo6YWZ0ZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmJ1dHRvbi1ncm91cDo6YmVmb3JlLCAuYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYnV0dG9uLWdyb3VwOjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLmJ1dHRvbi1ncm91cCAuYnV0dG9uIHtcbiAgbWFyZ2luOiAwO1xuICBtYXJnaW4tcmlnaHQ6IDFweDtcbiAgbWFyZ2luLWJvdHRvbTogMXB4O1xuICBmb250LXNpemU6IDAuOXJlbTtcbiAgZmxleDogMCAwIGF1dG87XG59XG4uYnV0dG9uLWdyb3VwIC5idXR0b246bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5idXR0b24tZ3JvdXAudGlueSAuYnV0dG9uIHtcbiAgZm9udC1zaXplOiAwLjZyZW07XG59XG4uYnV0dG9uLWdyb3VwLnNtYWxsIC5idXR0b24ge1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uYnV0dG9uLWdyb3VwLmxhcmdlIC5idXR0b24ge1xuICBmb250LXNpemU6IDEuMjVyZW07XG59XG4uYnV0dG9uLWdyb3VwLmV4cGFuZGVkIC5idXR0b24ge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuLmJ1dHRvbi1ncm91cC5wcmltYXJ5IC5idXR0b24sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnByaW1hcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOC40LCA5Ni44LCAxNDguOCk7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYig5NC40LCA5NC40LCA5NC40KTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYnV0dG9uLWdyb3VwLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuc3VjY2VzcyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDM0LjIzODYyNjYwOTQsIDE4Ny4zNjEzNzMzOTA2LCA5MS4zMDMwMDQyOTE4KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uYnV0dG9uLWdyb3VwLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmFlMDA7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJ1dHRvbi1ncm91cC53YXJuaW5nIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAud2FybmluZyAuYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwNCwgMTM5LjIsIDApO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmJ1dHRvbi1ncm91cC5hbGVydCAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmFsZXJ0IC5idXR0b246Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMTY1LjA5OTYwMTU5MzYsIDU4LjYxMDM1ODU2NTcsIDQyLjEwMDM5ODQwNjQpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b246Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG4gIGNvbG9yOiByZ2IoMTEuNSwgNjAuNSwgOTMpO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5wcmltYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTc3OWJhO1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnByaW1hcnkgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cucHJpbWFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDExLjUsIDYwLjUsIDkzKTtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnksIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNzY3Njc2O1xuICBjb2xvcjogIzc2NzY3Njtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zZWNvbmRhcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zZWNvbmRhcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjM2IzYjNiO1xuICBjb2xvcjogIzNiM2IzYjtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzNhZGI3NjtcbiAgY29sb3I6ICMzYWRiNzY7XG59XG4uYnV0dG9uLWdyb3VwLmhvbGxvdy5zdWNjZXNzIC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG4gIGNvbG9yOiByZ2IoMjEuMzk5MTQxNjMwOSwgMTE3LjEwMDg1ODM2OTEsIDU3LjA2NDM3NzY4MjQpO1xufVxuLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy53YXJuaW5nIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZy5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93Lndhcm5pbmcgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cud2FybmluZyAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24ud2FybmluZzpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogcmdiKDEyNy41LCA4NywgMCk7XG4gIGNvbG9yOiByZ2IoMTI3LjUsIDg3LCAwKTtcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24sIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdy5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmhvbGxvdyAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi1ncm91cC5ob2xsb3cgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2M0YjM3O1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93LmFsZXJ0IC5idXR0b246Zm9jdXMsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuaG9sbG93IC5idXR0b24uYWxlcnQ6Zm9jdXMge1xuICBib3JkZXItY29sb3I6IHJnYigxMDMuMTg3MjUwOTk2LCAzNi42MzE0NzQxMDM2LCAyNi4zMTI3NDkwMDQpO1xuICBjb2xvcjogcmdiKDEwMy4xODcyNTA5OTYsIDM2LjYzMTQ3NDEwMzYsIDI2LjMxMjc0OTAwNCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbltkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5wcmltYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnksIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzE3NzliYTtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIucHJpbWFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnByaW1hcnkgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5wcmltYXJ5OmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMS41LCA2MC41LCA5Myk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zZWNvbmRhcnkgLmJ1dHRvbltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc2Vjb25kYXJ5IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5LmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnNlY29uZGFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgY29sb3I6ICM3Njc2NzY7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnNlY29uZGFyeSAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc2Vjb25kYXJ5OmZvY3VzIHtcbiAgY29sb3I6ICMzYjNiM2I7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5zdWNjZXNzIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogIzNhZGI3Njtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuc3VjY2VzcyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLnN1Y2Nlc3MgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5zdWNjZXNzOmZvY3VzIHtcbiAgY29sb3I6IHJnYigyMS4zOTkxNDE2MzA5LCAxMTcuMTAwODU4MzY5MSwgNTcuMDY0Mzc3NjgyNCk7XG59XG4uYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci53YXJuaW5nIC5idXR0b24uZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmcsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2ZmYWUwMDtcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIud2FybmluZyAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyLndhcm5pbmcgLmJ1dHRvbjpmb2N1cywgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLndhcm5pbmc6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgY29sb3I6IHJnYigxMjcuNSwgODcsIDApO1xufVxuLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b24uZGlzYWJsZWQsIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbi5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyLmFsZXJ0IC5idXR0b25bZGlzYWJsZWRdOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZCwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi1ncm91cC5jbGVhciAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICBjb2xvcjogI2NjNGIzNztcbn1cbi5idXR0b24tZ3JvdXAuY2xlYXIuYWxlcnQgLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbi1ncm91cC5jbGVhci5hbGVydCAuYnV0dG9uOmZvY3VzLCAuYnV0dG9uLWdyb3VwLmNsZWFyIC5idXR0b24uYWxlcnQ6aG92ZXIsIC5idXR0b24tZ3JvdXAuY2xlYXIgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gIGNvbG9yOiByZ2IoMTAzLjE4NzI1MDk5NiwgMzYuNjMxNDc0MTAzNiwgMjYuMzEyNzQ5MDA0KTtcbn1cbi5idXR0b24tZ3JvdXAubm8tZ2FwcyAuYnV0dG9uIHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC4wNjI1cmVtO1xufVxuLmJ1dHRvbi1ncm91cC5uby1nYXBzIC5idXR0b24gKyAuYnV0dG9uIHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICBmbGV4OiAwIDAgMTAwJTtcbn1cbi5idXR0b24tZ3JvdXAuc3RhY2tlZCAuYnV0dG9uOmxhc3QtY2hpbGQsIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwgLmJ1dHRvbjpsYXN0LWNoaWxkLCAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bSAuYnV0dG9uOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmJ1dHRvbi1ncm91cC5zdGFja2VkLmV4cGFuZGVkIC5idXR0b24sIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiwgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLXNtYWxsIC5idXR0b24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3ItbWVkaXVtIC5idXR0b24ge1xuICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIC5idXR0b24tZ3JvdXAuc3RhY2tlZC1mb3Itc21hbGwuZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuYnV0dG9uLWdyb3VwLnN0YWNrZWQtZm9yLW1lZGl1bS5leHBhbmRlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmJ1dHRvbi1ncm91cC5zdGFja2VkLWZvci1tZWRpdW0uZXhwYW5kZWQgLmJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG59XG5cbi5jbG9zZS1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHotaW5kZXg6IDEwO1xuICBjb2xvcjogIzhhOGE4YTtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuY2xvc2UtYnV0dG9uIHtcbiAgb3V0bGluZTogMDtcbn1cbi5jbG9zZS1idXR0b246aG92ZXIsIC5jbG9zZS1idXR0b246Zm9jdXMge1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jbG9zZS1idXR0b24uc21hbGwge1xuICByaWdodDogMC42NnJlbTtcbiAgdG9wOiAwLjMzZW07XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uY2xvc2UtYnV0dG9uLm1lZGl1bSwgLmNsb3NlLWJ1dHRvbiB7XG4gIHJpZ2h0OiAxcmVtO1xuICB0b3A6IDAuNXJlbTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4ubGFiZWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMzMzMzNyZW0gMC41cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBmb250LXNpemU6IDAuOHJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubGFiZWwucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmxhYmVsLnNlY29uZGFyeSB7XG4gIGJhY2tncm91bmQ6ICM3Njc2NzY7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLmxhYmVsLnN1Y2Nlc3Mge1xuICBiYWNrZ3JvdW5kOiAjM2FkYjc2O1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5sYWJlbC53YXJuaW5nIHtcbiAgYmFja2dyb3VuZDogI2ZmYWUwMDtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4ubGFiZWwuYWxlcnQge1xuICBiYWNrZ3JvdW5kOiAjY2M0YjM3O1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLnByb2dyZXNzIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2FjYWNhO1xufVxuLnByb2dyZXNzLnByaW1hcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE3NzliYTtcbn1cbi5wcm9ncmVzcy5zZWNvbmRhcnkgLnByb2dyZXNzLW1ldGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzc2NzY3Njtcbn1cbi5wcm9ncmVzcy5zdWNjZXNzIC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG59XG4ucHJvZ3Jlc3Mud2FybmluZyAucHJvZ3Jlc3MtbWV0ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xufVxuLnByb2dyZXNzLmFsZXJ0IC5wcm9ncmVzcy1tZXRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG59XG5cbi5wcm9ncmVzcy1tZXRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTc3OWJhO1xufVxuXG4ucHJvZ3Jlc3MtbWV0ZXItdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNmZWZlZmU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG5cbi5zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMC41cmVtO1xuICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjI1cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTZlNmU2O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICB0b3VjaC1hY3Rpb246IG5vbmU7XG59XG5cbi5zbGlkZXItZmlsbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAwLjVyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xufVxuLnNsaWRlci1maWxsLmlzLWRyYWdnaW5nIHtcbiAgdHJhbnNpdGlvbjogYWxsIDBzIGxpbmVhcjtcbn1cblxuLnNsaWRlci1oYW5kbGUge1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxO1xuICBjdXJzb3I6IGdyYWI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNzc5YmE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAuc2xpZGVyLWhhbmRsZSB7XG4gIG91dGxpbmU6IDA7XG59XG4uc2xpZGVyLWhhbmRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigxOS41NSwgMTAyLjg1LCAxNTguMSk7XG59XG4uc2xpZGVyLWhhbmRsZS5pcy1kcmFnZ2luZyB7XG4gIHRyYW5zaXRpb246IGFsbCAwcyBsaW5lYXI7XG4gIGN1cnNvcjogZ3JhYmJpbmc7XG59XG5cbi5zbGlkZXIuZGlzYWJsZWQsXG4uc2xpZGVyW2Rpc2FibGVkXSB7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5zbGlkZXIudmVydGljYWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAwLjVyZW07XG4gIGhlaWdodDogMTIuNXJlbTtcbiAgbWFyZ2luOiAwIDEuMjVyZW07XG4gIHRyYW5zZm9ybTogc2NhbGUoMSwgLTEpO1xufVxuLnNsaWRlci52ZXJ0aWNhbCAuc2xpZGVyLWZpbGwge1xuICB0b3A6IDA7XG4gIHdpZHRoOiAwLjVyZW07XG4gIG1heC1oZWlnaHQ6IDEwMCU7XG59XG4uc2xpZGVyLnZlcnRpY2FsIC5zbGlkZXItaGFuZGxlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDUwJTtcbiAgd2lkdGg6IDEuNHJlbTtcbiAgaGVpZ2h0OiAxLjRyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cblxuLnN3aXRjaCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgb3V0bGluZTogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgaGVpZ2h0OiAycmVtO1xufVxuXG4uc3dpdGNoLWlucHV0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3dpdGNoLXBhZGRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiA0cmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNjYWNhY2E7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gIGNvbG9yOiBpbmhlcml0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5pbnB1dCArIC5zd2l0Y2gtcGFkZGxlIHtcbiAgbWFyZ2luOiAwO1xufVxuLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMS41cmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMjVzIGVhc2Utb3V0O1xuICBjb250ZW50OiBcIlwiO1xufVxuaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbn1cbmlucHV0OmNoZWNrZWQgfiAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICBsZWZ0OiAyLjI1cmVtO1xufVxuaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgYmFja2dyb3VuZDogcmdiKDE4MS44LCAxODEuOCwgMTgxLjgpO1xufVxuaW5wdXQ6Zm9jdXMtdmlzaWJsZSB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG59XG5pbnB1dDpjaGVja2VkOmZvY3VzLXZpc2libGUgfiAuc3dpdGNoLXBhZGRsZSB7XG4gIGJhY2tncm91bmQ6IHJnYigxOS41NSwgMTAyLjg1LCAxNTguMSk7XG59XG5pbnB1dDpkaXNhYmxlZCB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbiAgb3BhY2l0eTogMC41O1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSBpbnB1dDpmb2N1cyB+IC5zd2l0Y2gtcGFkZGxlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuLnN3aXRjaC1pbmFjdGl2ZSwgLnN3aXRjaC1hY3RpdmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi5zd2l0Y2gtYWN0aXZlIHtcbiAgbGVmdDogOCU7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5pbnB1dDpjaGVja2VkICsgbGFiZWwgPiAuc3dpdGNoLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc3dpdGNoLWluYWN0aXZlIHtcbiAgcmlnaHQ6IDE1JTtcbn1cbmlucHV0OmNoZWNrZWQgKyBsYWJlbCA+IC5zd2l0Y2gtaW5hY3RpdmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3dpdGNoLnRpbnkge1xuICBoZWlnaHQ6IDEuNXJlbTtcbn1cbi5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZSB7XG4gIHdpZHRoOiAzcmVtO1xuICBoZWlnaHQ6IDEuNXJlbTtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbn1cbi5zd2l0Y2gudGlueSAuc3dpdGNoLXBhZGRsZTo6YWZ0ZXIge1xuICB0b3A6IDAuMjVyZW07XG4gIGxlZnQ6IDAuMjVyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG59XG4uc3dpdGNoLnRpbnkgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDEuNzVyZW07XG59XG5cbi5zd2l0Y2guc21hbGwge1xuICBoZWlnaHQ6IDEuNzVyZW07XG59XG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlIHtcbiAgd2lkdGg6IDMuNXJlbTtcbiAgaGVpZ2h0OiAxLjc1cmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG59XG4uc3dpdGNoLnNtYWxsIC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIHRvcDogMC4yNXJlbTtcbiAgbGVmdDogMC4yNXJlbTtcbiAgd2lkdGg6IDEuMjVyZW07XG4gIGhlaWdodDogMS4yNXJlbTtcbn1cbi5zd2l0Y2guc21hbGwgaW5wdXQ6Y2hlY2tlZCB+IC5zd2l0Y2gtcGFkZGxlOjphZnRlciB7XG4gIGxlZnQ6IDJyZW07XG59XG5cbi5zd2l0Y2gubGFyZ2Uge1xuICBoZWlnaHQ6IDIuNXJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGUge1xuICB3aWR0aDogNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIGZvbnQtc2l6ZTogMXJlbTtcbn1cbi5zd2l0Y2gubGFyZ2UgLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgdG9wOiAwLjI1cmVtO1xuICBsZWZ0OiAwLjI1cmVtO1xuICB3aWR0aDogMnJlbTtcbiAgaGVpZ2h0OiAycmVtO1xufVxuLnN3aXRjaC5sYXJnZSBpbnB1dDpjaGVja2VkIH4gLnN3aXRjaC1wYWRkbGU6OmFmdGVyIHtcbiAgbGVmdDogMi43NXJlbTtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbnRoZWFkLFxudGJvZHksXG50Zm9vdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cblxuY2FwdGlvbiB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbnRoZWFkIHtcbiAgYmFja2dyb3VuZDogcmdiKDI0Ny42NSwgMjQ3LjY1LCAyNDcuNjUpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxudGZvb3Qge1xuICBiYWNrZ3JvdW5kOiByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuXG50aGVhZCB0cixcbnRmb290IHRyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG50aGVhZCB0aCxcbnRoZWFkIHRkLFxudGZvb3QgdGgsXG50Zm9vdCB0ZCB7XG4gIHBhZGRpbmc6IDAuNXJlbSAwLjYyNXJlbSAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRib2R5IHRoLFxudGJvZHkgdGQge1xuICBwYWRkaW5nOiAwLjVyZW0gMC42MjVyZW0gMC42MjVyZW07XG59XG5cbnRib2R5IHRyOm50aC1jaGlsZChldmVuKSB7XG4gIGJvcmRlci1ib3R0b206IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDEuMywgMjQxLjMsIDI0MS4zKTtcbn1cblxudGFibGUudW5zdHJpcGVkIHRib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbnRhYmxlLnVuc3RyaXBlZCB0Ym9keSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2IoMjQxLjMsIDI0MS4zLCAyNDEuMyk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZWZlZmU7XG59XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIHRhYmxlLnN0YWNrIHRoZWFkIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRmb290IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRyLFxuICB0YWJsZS5zdGFjayB0aCxcbiAgdGFibGUuc3RhY2sgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG4gIHRhYmxlLnN0YWNrIHRkIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICB9XG59XG5cbnRhYmxlLnNjcm9sbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxudGFibGUuaG92ZXIgdGhlYWQgdHI6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQyLjU1LCAyNDIuNTUsIDI0Mi41NSk7XG59XG50YWJsZS5ob3ZlciB0Zm9vdCB0cjpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMzYuMiwgMjM2LjIsIDIzNi4yKTtcbn1cbnRhYmxlLmhvdmVyIHRib2R5IHRyOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDI0OC45LCAyNDguOSwgMjQ4LjkpO1xufVxudGFibGUuaG92ZXI6bm90KC51bnN0cmlwZWQpIHRyOm50aC1vZi10eXBlKGV2ZW4pOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIzNi4xNSwgMjM2LjE1LCAyMzYuMTUpO1xufVxuXG4udGFibGUtc2Nyb2xsIHtcbiAgb3ZlcmZsb3cteDogYXV0bztcbn1cblxuLmJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtaW4td2lkdGg6IDIuMWVtO1xuICBwYWRkaW5nOiAwLjNlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBmb250LXNpemU6IDAuNnJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5iYWRnZS5wcmltYXJ5IHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYmFkZ2Uuc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZDogIzc2NzY3NjtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4uYmFkZ2Uuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQ6ICMzYWRiNzY7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmJhZGdlLndhcm5pbmcge1xuICBiYWNrZ3JvdW5kOiAjZmZhZTAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5iYWRnZS5hbGVydCB7XG4gIGJhY2tncm91bmQ6ICNjYzRiMzc7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuXG4uYnJlYWRjcnVtYnMge1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uYnJlYWRjcnVtYnM6OmJlZm9yZSwgLmJyZWFkY3J1bWJzOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4uYnJlYWRjcnVtYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG4uYnJlYWRjcnVtYnMgbGkge1xuICBmbG9hdDogbGVmdDtcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4uYnJlYWRjcnVtYnMgbGk6bm90KDpsYXN0LWNoaWxkKTo6YWZ0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwLjc1cmVtO1xuICBvcGFjaXR5OiAxO1xuICBjb250ZW50OiBcIi9cIjtcbiAgY29sb3I6ICNjYWNhY2E7XG59XG4uYnJlYWRjcnVtYnMgYSB7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLmJyZWFkY3J1bWJzIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icmVhZGNydW1icyAuZGlzYWJsZWQge1xuICBjb2xvcjogI2NhY2FjYTtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZDtcbn1cblxuLmNhbGxvdXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU0Ljg1LCAyNTQuODUsIDI1NC44NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cbi5jYWxsb3V0ID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuLmNhbGxvdXQucHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMTQuODE4NjYwMjg3MSwgMjM1Ljk4OTQ3MzY4NDIsIDI1MC4wMzEzMzk3MTI5KTtcbiAgY29sb3I6ICMwYTBhMGE7XG59XG4uY2FsbG91dC5zZWNvbmRhcnkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjM0LjQ1LCAyMzQuNDUsIDIzNC40NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYigyMjUuNDUsIDI0OS42LCAyMzQuNDUpO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5jYWxsb3V0Lndhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjU1LCAyNDIuODUsIDIxNi43NSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuYWxlcnQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ3LjM1LCAyMjgsIDIyNSk7XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhbGxvdXQuc21hbGwge1xuICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICBwYWRkaW5nLXJpZ2h0OiAwLjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjVyZW07XG4gIHBhZGRpbmctbGVmdDogMC41cmVtO1xufVxuLmNhbGxvdXQubGFyZ2Uge1xuICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgcGFkZGluZy1yaWdodDogM3JlbTtcbiAgcGFkZGluZy1ib3R0b206IDNyZW07XG4gIHBhZGRpbmctbGVmdDogM3JlbTtcbn1cblxuLmNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWdyb3c6IDE7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGNvbG9yOiAjMGEwYTBhO1xufVxuLmNhcmQgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWRpdmlkZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDEgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZDogI2U2ZTZlNjtcbn1cbi5jYXJkLWRpdmlkZXIgPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLXNlY3Rpb24ge1xuICBmbGV4OiAxIDAgYXV0bztcbiAgcGFkZGluZzogMXJlbTtcbn1cbi5jYXJkLXNlY3Rpb24gPiA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5jYXJkLWltYWdlIHtcbiAgbWluLWhlaWdodDogMXB4O1xufVxuXG4uZHJvcGRvd24tcGFuZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHdpZHRoOiAzMDBweDtcbiAgcGFkZGluZzogMXJlbTtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2FjYWNhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBmb250LXNpemU6IDFyZW07XG59XG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuaW5nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uZHJvcGRvd24tcGFuZS5pcy1vcGVuIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHZpc2liaWxpdHk6IHZpc2libGU7XG59XG5cbi5kcm9wZG93bi1wYW5lLnRpbnkge1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi5kcm9wZG93bi1wYW5lLnNtYWxsIHtcbiAgd2lkdGg6IDIwMHB4O1xufVxuXG4uZHJvcGRvd24tcGFuZS5sYXJnZSB7XG4gIHdpZHRoOiA0MDBweDtcbn1cblxuLnBhZ2luYXRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbn1cbi5wYWdpbmF0aW9uOjpiZWZvcmUsIC5wYWdpbmF0aW9uOjphZnRlciB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjb250ZW50OiBcIiBcIjtcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7XG59XG4ucGFnaW5hdGlvbjo6YWZ0ZXIge1xuICBjbGVhcjogYm90aDtcbn1cbi5wYWdpbmF0aW9uIGxpIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjA2MjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4ucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpmaXJzdC1jaGlsZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdpbmF0aW9uIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi5wYWdpbmF0aW9uIGEsXG4ucGFnaW5hdGlvbiBidXR0b24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbi5wYWdpbmF0aW9uIGE6aG92ZXIsXG4ucGFnaW5hdGlvbiBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xufVxuLnBhZ2luYXRpb24gLmN1cnJlbnQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGJhY2tncm91bmQ6ICMxNzc5YmE7XG4gIGNvbG9yOiAjZmVmZWZlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG59XG4ucGFnaW5hdGlvbiAuZGlzYWJsZWQge1xuICBwYWRkaW5nOiAwLjE4NzVyZW0gMC42MjVyZW07XG4gIGNvbG9yOiAjY2FjYWNhO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuLnBhZ2luYXRpb24gLmRpc2FibGVkOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG4ucGFnaW5hdGlvbiAuZWxsaXBzaXM6OmFmdGVyIHtcbiAgcGFkZGluZzogMC4xODc1cmVtIDAuNjI1cmVtO1xuICBjb250ZW50OiBcIuKAplwiO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cblxuLnBhZ2luYXRpb24tcHJldmlvdXMgYTo6YmVmb3JlLFxuLnBhZ2luYXRpb24tcHJldmlvdXMuZGlzYWJsZWQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gIGNvbnRlbnQ6IFwiwqtcIjtcbn1cblxuLnBhZ2luYXRpb24tbmV4dCBhOjphZnRlcixcbi5wYWdpbmF0aW9uLW5leHQuZGlzYWJsZWQ6OmFmdGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBjb250ZW50OiBcIsK7XCI7XG59XG5cbi5oYXMtdGlwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggIzhhOGE4YTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGN1cnNvcjogaGVscDtcbn1cblxuLnRvb2x0aXAge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogY2FsYygxMDAlICsgMC42NDk1cmVtKTtcbiAgei1pbmRleDogMTIwMDtcbiAgbWF4LXdpZHRoOiAxMHJlbTtcbiAgcGFkZGluZzogMC43NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzBhMGEwYTtcbiAgZm9udC1zaXplOiA4MCU7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnRvb2x0aXA6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi50b29sdGlwLmJvdHRvbTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMGEwYTBhO1xuICBib3R0b206IDEwMCU7XG59XG4udG9vbHRpcC5ib3R0b20uYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbn1cbi50b29sdGlwLnRvcDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiAjMGEwYTBhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICB0b3A6IDEwMCU7XG4gIGJvdHRvbTogYXV0bztcbn1cbi50b29sdGlwLnRvcC5hbGlnbi1jZW50ZXI6OmJlZm9yZSB7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xufVxuLnRvb2x0aXAubGVmdDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogMC43NXJlbTtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMwYTBhMGE7XG4gIGxlZnQ6IDEwMCU7XG59XG4udG9vbHRpcC5sZWZ0LmFsaWduLWNlbnRlcjo6YmVmb3JlIHtcbiAgYm90dG9tOiBhdXRvO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuLnRvb2x0aXAucmlnaHQ6OmJlZm9yZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDAuNzVyZW07XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1sZWZ0LXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICMwYTBhMGEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLnRvb2x0aXAucmlnaHQuYWxpZ24tY2VudGVyOjpiZWZvcmUge1xuICBib3R0b206IGF1dG87XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG4udG9vbHRpcC5hbGlnbi10b3A6OmJlZm9yZSB7XG4gIGJvdHRvbTogYXV0bztcbiAgdG9wOiAxMCU7XG59XG4udG9vbHRpcC5hbGlnbi1ib3R0b206OmJlZm9yZSB7XG4gIGJvdHRvbTogMTAlO1xuICB0b3A6IGF1dG87XG59XG4udG9vbHRpcC5hbGlnbi1sZWZ0OjpiZWZvcmUge1xuICBsZWZ0OiAxMCU7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnRvb2x0aXAuYWxpZ24tcmlnaHQ6OmJlZm9yZSB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAxMCU7XG59XG5cbi5hY2NvcmRpb24ge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuLmFjY29yZGlvbltkaXNhYmxlZF0gLmFjY29yZGlvbi10aXRsZSB7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uYWNjb3JkaW9uLWl0ZW06bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDtcbn1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMxNzc5YmE7XG59XG46bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNlNmU2ZTY7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7XG59XG4uYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U2ZTZlNjtcbn1cbi5hY2NvcmRpb24tdGl0bGU6OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBjb250ZW50OiBcIitcIjtcbn1cbi5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIuKAk1wiO1xufVxuXG4uYWNjb3JkaW9uLWNvbnRlbnQge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmVmZWZlO1xuICBjb2xvcjogIzBhMGEwYTtcbn1cbjpsYXN0LWNoaWxkID4gLmFjY29yZGlvbi1jb250ZW50Omxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U2ZTZlNjtcbn1cblxuLm1lZGlhLW9iamVjdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGZsZXgtd3JhcDogbm93cmFwO1xufVxuLm1lZGlhLW9iamVjdCBpbWcge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAubWVkaWEtb2JqZWN0LnN0YWNrLWZvci1zbWFsbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG59XG5cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiB7XG4gIGZsZXg6IDAgMSBhdXRvO1xufVxuLm1lZGlhLW9iamVjdC1zZWN0aW9uOmZpcnN0LWNoaWxkIHtcbiAgcGFkZGluZy1yaWdodDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbjpsYXN0LWNoaWxkOm5vdCg6bnRoLWNoaWxkKDIpKSB7XG4gIHBhZGRpbmctbGVmdDogMXJlbTtcbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbiA+IDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gIC5zdGFjay1mb3Itc21hbGwgLm1lZGlhLW9iamVjdC1zZWN0aW9uIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5tZWRpYS1vYmplY3Qtc2VjdGlvbi5tYWluLXNlY3Rpb24ge1xuICBmbGV4OiAxIDEgMHB4O1xufVxuXG4ub3JiaXQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5vcmJpdC1jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4ub3JiaXQtc2xpZGUge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLm9yYml0LXNsaWRlLm5vLW1vdGlvbnVpLmlzLWFjdGl2ZSB7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbn1cblxuLm9yYml0LWZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLm9yYml0LWltYWdlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwO1xufVxuXG4ub3JiaXQtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZzogMXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cblxuLm9yYml0LW5leHQsIC5vcmJpdC1wcmV2aW91cyB7XG4gIHotaW5kZXg6IDEwO1xuICBwYWRkaW5nOiAxcmVtO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub3JiaXQtbmV4dCwgW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAub3JiaXQtcHJldmlvdXMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9yYml0LW5leHQ6aG92ZXIsIC5vcmJpdC1wcmV2aW91czpob3ZlciwgLm9yYml0LW5leHQ6YWN0aXZlLCAub3JiaXQtcHJldmlvdXM6YWN0aXZlLCAub3JiaXQtbmV4dDpmb2N1cywgLm9yYml0LXByZXZpb3VzOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjUpO1xufVxuXG4ub3JiaXQtcHJldmlvdXMge1xuICBsZWZ0OiAwO1xufVxuXG4ub3JiaXQtbmV4dCB7XG4gIGxlZnQ6IGF1dG87XG4gIHJpZ2h0OiAwO1xufVxuXG4ub3JiaXQtYnVsbGV0cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLXRvcDogMC44cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjhyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLm9yYml0LWJ1bGxldHMge1xuICBvdXRsaW5lOiAwO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uIHtcbiAgd2lkdGg6IDEuMnJlbTtcbiAgaGVpZ2h0OiAxLjJyZW07XG4gIG1hcmdpbjogMC4xcmVtO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjYWNhY2E7XG59XG4ub3JiaXQtYnVsbGV0cyBidXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjOGE4YThhO1xufVxuLm9yYml0LWJ1bGxldHMgYnV0dG9uLmlzLWFjdGl2ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7XG59XG5cbi5yZXNwb25zaXZlLWVtYmVkLFxuLmZsZXgtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbi5yZXNwb25zaXZlLWVtYmVkIG9iamVjdCxcbi5yZXNwb25zaXZlLWVtYmVkIGVtYmVkLFxuLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4uZmxleC12aWRlbyBpZnJhbWUsXG4uZmxleC12aWRlbyBvYmplY3QsXG4uZmxleC12aWRlbyBlbWJlZCxcbi5mbGV4LXZpZGVvIHZpZGVvIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4ucmVzcG9uc2l2ZS1lbWJlZC53aWRlc2NyZWVuLFxuLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi50YWJzIHtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG4udGFiczo6YmVmb3JlLCAudGFiczo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLnRhYnM6OmFmdGVyIHtcbiAgY2xlYXI6IGJvdGg7XG59XG5cbi50YWJzLnZlcnRpY2FsID4gbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwO1xufVxuLnRhYnMuc2ltcGxlID4gbGkgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbi50YWJzLnByaW1hcnkge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xufVxuLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gIGNvbG9yOiAjZmVmZWZlO1xufVxuLnRhYnMucHJpbWFyeSA+IGxpID4gYTpob3ZlciwgLnRhYnMucHJpbWFyeSA+IGxpID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IHJnYigyMS44NSwgMTE0Ljk1LCAxNzYuNyk7XG59XG5cbi50YWJzLXRpdGxlIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4udGFicy10aXRsZSA+IGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxLjVyZW07XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuW2RhdGEtd2hhdGlucHV0PW1vdXNlXSAudGFicy10aXRsZSA+IGEge1xuICBvdXRsaW5lOiAwO1xufVxuLnRhYnMtdGl0bGUgPiBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6IHJnYigxOS43OCwgMTA0LjA2LCAxNTkuOTYpO1xufVxuLnRhYnMtdGl0bGUgPiBhOmZvY3VzLCAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD10cnVlXSB7XG4gIGJhY2tncm91bmQ6ICNlNmU2ZTY7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuXG4udGFicy1jb250ZW50IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2U2ZTZlNjtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgY29sb3I6ICMwYTBhMGE7XG4gIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG59XG5cbi50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZTZlNmU2O1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLnRhYnMtcGFuZWwuaXMtYWN0aXZlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgYm9yZGVyOiA0cHggc29saWQgI2ZlZmVmZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogMCAwIDAgMXB4IHJnYmEoMTAsIDEwLCAxMCwgMC4yKTtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbmEudGh1bWJuYWlsIHtcbiAgdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbn1cbmEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cyB7XG4gIGJveC1zaGFkb3c6IDAgMCA2cHggMXB4IHJnYmEoMjMsIDEyMSwgMTg2LCAwLjUpO1xufVxuYS50aHVtYm5haWwgaW1hZ2Uge1xuICBib3gtc2hhZG93OiBub25lO1xufVxuXG4ubWVudSB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5tZW51IGxpIHtcbiAgb3V0bGluZTogMDtcbn1cbi5tZW51IGEsXG4ubWVudSAuYnV0dG9uIHtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLm1lbnUgaW5wdXQsXG4ubWVudSBzZWxlY3QsXG4ubWVudSBhLFxuLm1lbnUgYnV0dG9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tZW51IGlucHV0IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuLm1lbnUsIC5tZW51Lmhvcml6b250YWwge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG4ubWVudS52ZXJ0aWNhbCB7XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xufVxuLm1lbnUudmVydGljYWwuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIGksXG4ubWVudS52ZXJ0aWNhbC5pY29uLXRvcCBsaSBhIHN2ZywgLm1lbnUudmVydGljYWwuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS52ZXJ0aWNhbC5pY29uLWJvdHRvbSBsaSBhIGksXG4ubWVudS52ZXJ0aWNhbC5pY29uLWJvdHRvbSBsaSBhIHN2ZyB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG4ubWVudS5leHBhbmRlZCBsaSB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG4ubWVudS5leHBhbmRlZC5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgaSxcbi5tZW51LmV4cGFuZGVkLmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5leHBhbmRlZC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51LmV4cGFuZGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5tZW51LnNpbXBsZSB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG4ubWVudS5zaW1wbGUgbGkgKyBsaSB7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUuc2ltcGxlIGEge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbnUubWVkaXVtLWhvcml6b250YWwge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5tZW51Lm1lZGl1bS12ZXJ0aWNhbCB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVudS5tZWRpdW0tZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbiAgLm1lbnUubWVkaXVtLXNpbXBsZSBsaSB7XG4gICAgZmxleDogMSAxIDBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm1lbnUubGFyZ2UtaG9yaXpvbnRhbCB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLm1lbnUubGFyZ2UtdmVydGljYWwge1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cbiAgLm1lbnUubGFyZ2UtZXhwYW5kZWQgbGkge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gIH1cbiAgLm1lbnUubGFyZ2Utc2ltcGxlIGxpIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICB9XG59XG4ubWVudS5uZXN0ZWQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLm1lbnUuaWNvbnMgYSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4ubWVudS5pY29uLXRvcCBhLCAubWVudS5pY29uLXJpZ2h0IGEsIC5tZW51Lmljb24tYm90dG9tIGEsIC5tZW51Lmljb24tbGVmdCBhIHtcbiAgZGlzcGxheTogZmxleDtcbn1cbi5tZW51Lmljb24tbGVmdCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi1sZWZ0IGxpIGEge1xuICBmbGV4LWZsb3c6IHJvdyBub3dyYXA7XG59XG4ubWVudS5pY29uLWxlZnQgbGkgYSBpbWcsXG4ubWVudS5pY29uLWxlZnQgbGkgYSBpLFxuLm1lbnUuaWNvbi1sZWZ0IGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi1sZWZ0IGxpIGEgaW1nLFxuLm1lbnUubmVzdGVkLmljb24tbGVmdCBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi1sZWZ0IGxpIGEgc3ZnIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhLCAubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIHtcbiAgZmxleC1mbG93OiByb3cgbm93cmFwO1xufVxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIGltZyxcbi5tZW51Lmljb24tcmlnaHQgbGkgYSBpLFxuLm1lbnUuaWNvbi1yaWdodCBsaSBhIHN2ZywgLm1lbnUubmVzdGVkLmljb24tcmlnaHQgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIGksXG4ubWVudS5uZXN0ZWQuaWNvbi1yaWdodCBsaSBhIHN2ZyB7XG4gIG1hcmdpbi1sZWZ0OiAwLjI1cmVtO1xufVxuLm1lbnUuaWNvbi10b3AgbGkgYSwgLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEge1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG4ubWVudS5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51Lmljb24tdG9wIGxpIGEgaSxcbi5tZW51Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi10b3AgbGkgYSBpLFxuLm1lbnUubmVzdGVkLmljb24tdG9wIGxpIGEgc3ZnIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUuaWNvbi1ib3R0b20gbGkgYSwgLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEge1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7XG59XG4ubWVudS5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51Lmljb24tYm90dG9tIGxpIGEgc3ZnLCAubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSBpbWcsXG4ubWVudS5uZXN0ZWQuaWNvbi1ib3R0b20gbGkgYSBpLFxuLm1lbnUubmVzdGVkLmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgbWFyZ2luLWJvdHRvbTogMC4yNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbnUgLmlzLWFjdGl2ZSA+IGEge1xuICBiYWNrZ3JvdW5kOiAjMTc3OWJhO1xuICBjb2xvcjogI2ZlZmVmZTtcbn1cbi5tZW51IC5hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogIzE3NzliYTtcbiAgY29sb3I6ICNmZWZlZmU7XG59XG4ubWVudS5hbGlnbi1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgbGkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuLm1lbnUuYWxpZ24tcmlnaHQgbGkgLnN1Ym1lbnUgbGkge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG4ubWVudS5hbGlnbi1yaWdodC52ZXJ0aWNhbCBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cbi5tZW51LmFsaWduLXJpZ2h0LnZlcnRpY2FsIGxpIC5zdWJtZW51IGxpIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ubWVudS5hbGlnbi1yaWdodC5pY29uLXRvcCBsaSBhIGltZyxcbi5tZW51LmFsaWduLXJpZ2h0Lmljb24tdG9wIGxpIGEgaSxcbi5tZW51LmFsaWduLXJpZ2h0Lmljb24tdG9wIGxpIGEgc3ZnLCAubWVudS5hbGlnbi1yaWdodC5pY29uLWJvdHRvbSBsaSBhIGltZyxcbi5tZW51LmFsaWduLXJpZ2h0Lmljb24tYm90dG9tIGxpIGEgaSxcbi5tZW51LmFsaWduLXJpZ2h0Lmljb24tYm90dG9tIGxpIGEgc3ZnIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG4ubWVudS5hbGlnbi1yaWdodCAubmVzdGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICBtYXJnaW4tbGVmdDogMDtcbn1cbi5tZW51LmFsaWduLWNlbnRlciBsaSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLm1lbnUuYWxpZ24tY2VudGVyIGxpIC5zdWJtZW51IGxpIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuLm1lbnUgLm1lbnUtdGV4dCB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiBpbmhlcml0O1xufVxuXG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIHtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4ubWVudS1jZW50ZXJlZCA+IC5tZW51IGxpIC5zdWJtZW51IGxpIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4ubm8tanMgW2RhdGEtcmVzcG9uc2l2ZS1tZW51XSB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZW51LWljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDIwcHg7XG4gIGhlaWdodDogMTZweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLm1lbnUtaWNvbjo6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgYm94LXNoYWRvdzogMCA3cHggMCAjZmVmZWZlLCAwIDE0cHggMCAjZmVmZWZlO1xuICBjb250ZW50OiBcIlwiO1xufVxuLm1lbnUtaWNvbjpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjY2FjYWNhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICNjYWNhY2EsIDAgMTRweCAwICNjYWNhY2E7XG59XG5cbi5tZW51LWljb24uZGFyayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB3aWR0aDogMjBweDtcbiAgaGVpZ2h0OiAxNnB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4ubWVudS1pY29uLmRhcms6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJhY2tncm91bmQ6ICMwYTBhMGE7XG4gIGJveC1zaGFkb3c6IDAgN3B4IDAgIzBhMGEwYSwgMCAxNHB4IDAgIzBhMGEwYTtcbiAgY29udGVudDogXCJcIjtcbn1cbi5tZW51LWljb24uZGFyazpob3Zlcjo6YWZ0ZXIge1xuICBiYWNrZ3JvdW5kOiAjOGE4YThhO1xuICBib3gtc2hhZG93OiAwIDdweCAwICM4YThhOGEsIDAgMTRweCAwICM4YThhOGE7XG59XG5cbi5hY2NvcmRpb24tbWVudSBsaSB7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmFjY29yZGlvbi1tZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLXJpZ2h0IC5uZXN0ZWQuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLmFjY29yZGlvbi1tZW51IC5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQ6bm90KC5oYXMtc3VibWVudS10b2dnbGUpID4gYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5hY2NvcmRpb24tbWVudSAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50Om5vdCguaGFzLXN1Ym1lbnUtdG9nZ2xlKSA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi10b3A6IC0zcHg7XG4gIHJpZ2h0OiAxcmVtO1xufVxuLmFjY29yZGlvbi1tZW51LmFsaWduLWxlZnQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IDFyZW07XG4gIGxlZnQ6IGF1dG87XG59XG4uYWNjb3JkaW9uLW1lbnUuYWxpZ24tcmlnaHQgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDFyZW07XG59XG4uYWNjb3JkaW9uLW1lbnUgLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudFthcmlhLWV4cGFuZGVkPXRydWVdID4gYTo6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiA1MCUgNTAlO1xufVxuXG4uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uaGFzLXN1Ym1lbnUtdG9nZ2xlID4gYSB7XG4gIG1hcmdpbi1yaWdodDogNDBweDtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogNDBweDtcbiAgaGVpZ2h0OiA0MHB4O1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uc3VibWVudS10b2dnbGU6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICBib3JkZXItY29sb3I6ICMxNzc5YmEgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW46IGF1dG87XG59XG5cbi5zdWJtZW51LXRvZ2dsZVthcmlhLWV4cGFuZGVkPXRydWVdOjphZnRlciB7XG4gIHRyYW5zZm9ybTogc2NhbGVZKC0xKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDUwJTtcbn1cblxuLnN1Ym1lbnUtdG9nZ2xlLXRleHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uaXMtZHJpbGxkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLmlzLWRyaWxsZG93biBsaSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmlzLWRyaWxsZG93bi5hbmltYXRlLWhlaWdodCB7XG4gIHRyYW5zaXRpb246IGhlaWdodCAwLjVzO1xufVxuXG4uZHJpbGxkb3duIGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMTVzIGxpbmVhcjtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51LmlzLWFjdGl2ZSB7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUuaXMtY2xvc2luZyB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbn1cbi5kcmlsbGRvd24gLmlzLWRyaWxsZG93bi1zdWJtZW51IGEge1xuICBwYWRkaW5nOiAwLjdyZW0gMXJlbTtcbn1cbi5kcmlsbGRvd24gLm5lc3RlZC5pcy1kcmlsbGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJpbGxkb3duIC5kcmlsbGRvd24tc3VibWVudS1jb3Zlci1wcmV2aW91cyB7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG59XG4uZHJpbGxkb3duIC5pcy1kcmlsbGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmRyaWxsZG93biAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tdG9wOiAtNnB4O1xuICByaWdodDogMXJlbTtcbn1cbi5kcmlsbGRvd24uYWxpZ24tbGVmdCAuaXMtZHJpbGxkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjMTc3OWJhO1xuICByaWdodDogMXJlbTtcbiAgbGVmdDogYXV0bztcbn1cbi5kcmlsbGRvd24uYWxpZ24tcmlnaHQgLmlzLWRyaWxsZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMXJlbTtcbn1cbi5kcmlsbGRvd24gLmpzLWRyaWxsZG93bi1iYWNrID4gYTo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbi1yaWdodDogMC43NXJlbTtcbn1cblxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDEwMCU7XG4gIHJpZ2h0OiAwO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMDtcbn1cbi5kcm9wZG93bi5tZW51ID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG59XG4uZHJvcGRvd24ubWVudSA+IGxpLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50ID4gYTo6YWZ0ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTNweDtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLmRyb3Bkb3duLm1lbnUgYSB7XG4gIG91dGxpbmU6IDA7XG59XG4uZHJvcGRvd24ubWVudSA+IGxpID4gYSB7XG4gIHBhZGRpbmc6IDAuN3JlbSAxcmVtO1xufVxuLmRyb3Bkb3duLm1lbnUgPiBsaS5pcy1hY3RpdmUgPiBhIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiAjMTc3OWJhO1xufVxuLm5vLWpzIC5kcm9wZG93bi5tZW51IHVsIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5kcm9wZG93bi5tZW51IC5uZXN0ZWQuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpIC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAwO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDEwMCU7XG59XG4uZHJvcGRvd24ubWVudS52ZXJ0aWNhbCA+IGxpID4gYTo6YWZ0ZXIge1xuICByaWdodDogMTRweDtcbn1cbi5kcm9wZG93bi5tZW51LnZlcnRpY2FsID4gbGkub3BlbnMtbGVmdCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICByaWdodDogYXV0bztcbiAgbGVmdDogNXB4O1xufVxuLmRyb3Bkb3duLm1lbnUudmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkub3BlbnMtbGVmdCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogYXV0bztcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0taG9yaXpvbnRhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLXdpZHRoOiA2cHg7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICByaWdodDogNXB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXRvcDogLTNweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICB9XG4gIC5kcm9wZG93bi5tZW51Lm1lZGl1bS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubWVkaXVtLXZlcnRpY2FsID4gbGkub3BlbnMtcmlnaHQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMTAwJTtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaSA+IGE6OmFmdGVyIHtcbiAgICByaWdodDogMTRweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5tZWRpdW0tdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1yaWdodC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICMxNzc5YmE7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1sZWZ0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMTAwJTtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICB0b3A6IDEwMCU7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS1ob3Jpem9udGFsID4gbGkuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLWhvcml6b250YWwgPiBsaS5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudCA+IGE6OmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDZweDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tdG9wOiAtM3B4O1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICAgIHRvcDogMDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAxMDAlO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1yaWdodCA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gIC5kcm9wZG93bi5tZW51LmxhcmdlLXZlcnRpY2FsID4gbGkgPiBhOjphZnRlciB7XG4gICAgcmlnaHQ6IDE0cHg7XG4gIH1cbiAgLmRyb3Bkb3duLm1lbnUubGFyZ2UtdmVydGljYWwgPiBsaS5vcGVucy1sZWZ0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAjMTc3OWJhIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDVweDtcbiAgfVxuICAuZHJvcGRvd24ubWVudS5sYXJnZS12ZXJ0aWNhbCA+IGxpLm9wZW5zLXJpZ2h0ID4gYTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogNnB4O1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbiAgfVxufVxuLmRyb3Bkb3duLm1lbnUuYWxpZ24tcmlnaHQgLmlzLWRyb3Bkb3duLXN1Ym1lbnUuZmlyc3Qtc3ViIHtcbiAgdG9wOiAxMDAlO1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLmlzLWRyb3Bkb3duLW1lbnUudmVydGljYWwge1xuICB3aWR0aDogMTAwcHg7XG59XG4uaXMtZHJvcGRvd24tbWVudS52ZXJ0aWNhbC5hbGlnbi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50IGE6OmFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgcmlnaHQ6IDVweDtcbiAgbGVmdDogYXV0bztcbiAgbWFyZ2luLXRvcDogLTZweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1pbm5lciA+IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiAuaXMtZHJvcGRvd24tc3VibWVudSB7XG4gIHJpZ2h0OiAxMDAlO1xuICBsZWZ0OiBhdXRvO1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLXJpZ2h0ID4gLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICByaWdodDogYXV0bztcbiAgbGVmdDogMTAwJTtcbn1cblxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMTAwJTtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWluLXdpZHRoOiAyMDBweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYmFja2dyb3VuZDogI2ZlZmVmZTtcbn1cbi5kcm9wZG93biAuaXMtZHJvcGRvd24tc3VibWVudSBhIHtcbiAgcGFkZGluZzogMC43cmVtIDFyZW07XG59XG4uaXMtZHJvcGRvd24tc3VibWVudSAuaXMtZHJvcGRvd24tc3VibWVudS1wYXJlbnQgPiBhOjphZnRlciB7XG4gIHJpZ2h0OiAxNHB4O1xufVxuLmlzLWRyb3Bkb3duLXN1Ym1lbnUgLmlzLWRyb3Bkb3duLXN1Ym1lbnUtcGFyZW50Lm9wZW5zLWxlZnQgPiBhOjphZnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDZweDtcbiAgY29udGVudDogXCJcIjtcbiAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgIzE3NzliYSB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgcmlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51LXBhcmVudC5vcGVucy1yaWdodCA+IGE6OmFmdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNnB4O1xuICBjb250ZW50OiBcIlwiO1xuICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzE3NzliYTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51IC5pcy1kcm9wZG93bi1zdWJtZW51IHtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51ID4gbGkge1xuICB3aWR0aDogMTAwJTtcbn1cbi5pcy1kcm9wZG93bi1zdWJtZW51LmpzLWRyb3Bkb3duLWFjdGl2ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaXMtb2ZmLWNhbnZhcy1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAxMTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjVzIGVhc2UsIHZpc2liaWxpdHkgMC41cyBlYXNlO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NCwgMjU0LCAyNTQsIDAuMjUpO1xuICBvcGFjaXR5OiAwO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uanMtb2ZmLWNhbnZhcy1vdmVybGF5LmlzLXZpc2libGUge1xuICBvcGFjaXR5OiAxO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuLmpzLW9mZi1jYW52YXMtb3ZlcmxheS5pcy1jbG9zYWJsZSB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1hYnNvbHV0ZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbi5qcy1vZmYtY2FudmFzLW92ZXJsYXkuaXMtb3ZlcmxheS1maXhlZCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbn1cblxuLm9mZi1jYW52YXMtd3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm9mZi1jYW52YXMge1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vZmYtY2FudmFzLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuLm9mZi1jYW52YXMuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG4ub2ZmLWNhbnZhcy5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtYWJzb2x1dGUge1xuICB6LWluZGV4OiAxMjtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNXMgZWFzZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiAjZTZlNmU2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5bZGF0YS13aGF0aW5wdXQ9bW91c2VdIC5vZmYtY2FudmFzLWFic29sdXRlIHtcbiAgb3V0bGluZTogMDtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHotaW5kZXg6IDEyO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtY2xvc2VkIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMtYWJzb2x1dGUuaXMtdHJhbnNpdGlvbi1vdmVybGFwIHtcbiAgei1pbmRleDogMTM7XG59XG4ub2ZmLWNhbnZhcy1hYnNvbHV0ZS5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIGJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoMTAsIDEwLCAxMCwgMC43KTtcbn1cbi5vZmYtY2FudmFzLWFic29sdXRlLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLnBvc2l0aW9uLWxlZnQge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICB3aWR0aDogMjUwcHg7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1sZWZ0IHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLWxlZnQuaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWxlZnQuaGFzLXRyYW5zaXRpb24tcHVzaCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG5cbi5wb3NpdGlvbi1sZWZ0LmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IC0xM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tcmlnaHQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGF1dG87XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgd2lkdGg6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1yaWdodCB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXJpZ2h0LmlzLXRyYW5zaXRpb24tb3ZlcmxhcC5pcy1vcGVuIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG5cbi5vZmYtY2FudmFzLWNvbnRlbnQuaXMtb3Blbi1yaWdodC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1yaWdodC5pcy10cmFuc2l0aW9uLXB1c2gge1xuICBib3gtc2hhZG93OiBpbnNldCAxM3B4IDAgMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tdG9wIHtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTI1MHB4KTtcbn1cbi5vZmYtY2FudmFzLWNvbnRlbnQgLm9mZi1jYW52YXMucG9zaXRpb24tdG9wIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLnBvc2l0aW9uLXRvcC5pcy10cmFuc2l0aW9uLW92ZXJsYXAuaXMtb3BlbiB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xufVxuXG4ub2ZmLWNhbnZhcy1jb250ZW50LmlzLW9wZW4tdG9wLmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuXG4ucG9zaXRpb24tdG9wLmlzLXRyYW5zaXRpb24tcHVzaCB7XG4gIGJveC1zaGFkb3c6IGluc2V0IDAgLTEzcHggMjBweCAtMTNweCByZ2JhKDEwLCAxMCwgMTAsIDAuMjUpO1xufVxuXG4ucG9zaXRpb24tYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBoZWlnaHQ6IDI1MHB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjUwcHgpO1xufVxuLm9mZi1jYW52YXMtY29udGVudCAub2ZmLWNhbnZhcy5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1vdmVybGFwLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudC5pcy1vcGVuLWJvdHRvbS5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yNTBweCk7XG59XG5cbi5wb3NpdGlvbi1ib3R0b20uaXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxM3B4IDIwcHggLTEzcHggcmdiYSgxMCwgMTAsIDEwLCAwLjI1KTtcbn1cblxuLm9mZi1jYW52YXMtY29udGVudCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLm9mZi1jYW52YXMtY29udGVudC5oYXMtdHJhbnNpdGlvbi1vdmVybGFwLCAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy10cmFuc2l0aW9uLXB1c2gge1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC41cyBlYXNlO1xufVxuLm9mZi1jYW52YXMtY29udGVudC5oYXMtdHJhbnNpdGlvbi1wdXNoIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG59XG4ub2ZmLWNhbnZhcy1jb250ZW50IC5vZmYtY2FudmFzLmlzLW9wZW4ge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAwKTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWxlZnQucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWxlZnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtcmlnaHQge1xuICAgIG1hcmdpbi1yaWdodDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi10b3AucmV2ZWFsLWZvci1tZWRpdW0ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbWVkaXVtIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXRvcDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIHotaW5kZXg6IDEyO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbWVkaXVtIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLWJvdHRvbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLW1lZGl1bSB+IC5vZmYtY2FudmFzLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDI1MHB4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAucG9zaXRpb24tbGVmdC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgei1pbmRleDogMTI7XG4gICAgdHJhbnNpdGlvbjogbm9uZTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtbGVmdCB7XG4gICAgbWFyZ2luLWxlZnQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogMjUwcHg7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXJpZ2h0LnJldmVhbC1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50IC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudC5oYXMtcmV2ZWFsLXJpZ2h0IHtcbiAgICBtYXJnaW4tcmlnaHQ6IDI1MHB4O1xuICB9XG4gIC5wb3NpdGlvbi1yaWdodC5yZXZlYWwtZm9yLWxhcmdlIH4gLm9mZi1jYW52YXMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLXRvcC5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICB6LWluZGV4OiAxMjtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbiAgLnBvc2l0aW9uLWJvdHRvbS5yZXZlYWwtZm9yLWxhcmdlIC5jbG9zZS1idXR0b24ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMtY29udGVudCAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2Uge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuICAub2ZmLWNhbnZhcy1jb250ZW50Lmhhcy1yZXZlYWwtYm90dG9tIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxuICAucG9zaXRpb24tYm90dG9tLnJldmVhbC1mb3ItbGFyZ2UgfiAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAyNTBweDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0ge1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB0cmFuc2l0aW9uOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWxlZnQsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLW1lZGl1bS5wb3NpdGlvbi10b3AsIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbWVkaXVtLnBvc2l0aW9uLWJvdHRvbSB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1tZWRpdW0gLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZSB7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIHRyYW5zaXRpb246IG5vbmU7XG4gIH1cbiAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1sZWZ0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXJpZ2h0LCAub2ZmLWNhbnZhcy5pbi1jYW52YXMtZm9yLWxhcmdlLnBvc2l0aW9uLXRvcCwgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci1sYXJnZS5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG4gIC5vZmYtY2FudmFzLmluLWNhbnZhcy1mb3ItbGFyZ2UgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcbn1cbmh0bWwuaXMtcmV2ZWFsLW9wZW4uemYtaGFzLXNjcm9sbCB7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuaHRtbC5pcy1yZXZlYWwtb3BlbiBib2R5IHtcbiAgb3ZlcmZsb3cteTogaGlkZGVuO1xufVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMCwgMTAsIDEwLCAwLjQ1KTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4ucmV2ZWFsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDEwMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIHotaW5kZXg6IDEwMDY7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2NhY2FjYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZlZmVmZTtcbn1cbltkYXRhLXdoYXRpbnB1dD1tb3VzZV0gLnJldmVhbCB7XG4gIG91dGxpbmU6IDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucmV2ZWFsIHtcbiAgICBtaW4taGVpZ2h0OiAwO1xuICB9XG59XG4ucmV2ZWFsIC5jb2x1bW4sIC5yZXZlYWwgLmNvbHVtbnMge1xuICBtaW4td2lkdGg6IDA7XG59XG4ucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbCB7XG4gICAgd2lkdGg6IDYwMHB4O1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbi5yZXZlYWwuY29sbGFwc2Uge1xuICBwYWRkaW5nOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbC50aW55IHtcbiAgICB3aWR0aDogMzAlO1xuICAgIG1heC13aWR0aDogNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5yZXZlYWwuc21hbGwge1xuICAgIHdpZHRoOiA1MCU7XG4gICAgbWF4LXdpZHRoOiA3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnJldmVhbC5sYXJnZSB7XG4gICAgd2lkdGg6IDkwJTtcbiAgICBtYXgtd2lkdGg6IDc1cmVtO1xuICB9XG59XG4ucmV2ZWFsLmZ1bGwge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7XG4gIGhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0Ny45OTg3NWVtKSB7XG4gIC5yZXZlYWwge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cbi5yZXZlYWwud2l0aG91dC1vdmVybGF5IHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4uc3RpY2t5LWNvbnRhaW5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLnN0aWNreSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbn1cblxuLnN0aWNreS5pcy1zdHVjayB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgei1pbmRleDogNTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uc3RpY2t5LmlzLXN0dWNrLmlzLWF0LXRvcCB7XG4gIHRvcDogMDtcbn1cbi5zdGlja3kuaXMtc3R1Y2suaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4uc3RpY2t5LmlzLWFuY2hvcmVkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICByaWdodDogYXV0bztcbiAgbGVmdDogYXV0bztcbn1cbi5zdGlja3kuaXMtYW5jaG9yZWQuaXMtYXQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xufVxuXG4udGl0bGUtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBiYWNrZ3JvdW5kOiAjMGEwYTBhO1xuICBjb2xvcjogI2ZlZmVmZTtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnRpdGxlLWJhciAubWVudS1pY29uIHtcbiAgbWFyZ2luLWxlZnQ6IDAuMjVyZW07XG4gIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcbn1cblxuLnRpdGxlLWJhci1sZWZ0LFxuLnRpdGxlLWJhci1yaWdodCB7XG4gIGZsZXg6IDEgMSAwcHg7XG59XG5cbi50aXRsZS1iYXItcmlnaHQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbn1cblxuLnRpdGxlLWJhci10aXRsZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi50b3AtYmFyIHtcbiAgcGFkZGluZzogMC41cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnRvcC1iYXIsXG4udG9wLWJhciB1bCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNmU2ZTY7XG59XG4udG9wLWJhciBpbnB1dCB7XG4gIG1heC13aWR0aDogMjAwcHg7XG4gIG1hcmdpbi1yaWdodDogMXJlbTtcbn1cbi50b3AtYmFyIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4udG9wLWJhciBpbnB1dC5idXR0b24ge1xuICB3aWR0aDogYXV0bztcbn1cblxuLnRvcC1iYXIge1xuICBmbGV4LXdyYXA6IHdyYXA7XG59XG4udG9wLWJhciAudG9wLWJhci1sZWZ0LFxuLnRvcC1iYXIgLnRvcC1iYXItcmlnaHQge1xuICBmbGV4OiAwIDAgMTAwJTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudG9wLWJhciB7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gIH1cbiAgLnRvcC1iYXIgLnRvcC1iYXItbGVmdCB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB9XG4gIC50b3AtYmFyIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDEgYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cbiAgLnRvcC1iYXIuc3RhY2tlZC1mb3ItbWVkaXVtIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLW1lZGl1bSAudG9wLWJhci1yaWdodCB7XG4gICAgZmxleDogMCAwIDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAudG9wLWJhci5zdGFja2VkLWZvci1sYXJnZSB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLWxlZnQsXG4gIC50b3AtYmFyLnN0YWNrZWQtZm9yLWxhcmdlIC50b3AtYmFyLXJpZ2h0IHtcbiAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLnRvcC1iYXItdGl0bGUge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWFyZ2luOiAwLjVyZW0gMXJlbSAwLjVyZW0gMDtcbn1cblxuLnRvcC1iYXItbGVmdCxcbi50b3AtYmFyLXJpZ2h0IHtcbiAgZmxleDogMCAwIGF1dG87XG59XG5cbi5mbG9hdC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG5cbi5mbG9hdC1jZW50ZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmNsZWFyZml4OjpiZWZvcmUsIC5jbGVhcmZpeDo6YWZ0ZXIge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY29udGVudDogXCIgXCI7XG4gIGZsZXgtYmFzaXM6IDA7XG4gIG9yZGVyOiAxO1xufVxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuXG4uYWxpZ24tbGVmdCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbn1cblxuLmFsaWduLXJpZ2h0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYWxpZ24tanVzdGlmeSB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmFsaWduLXNwYWNlZCB7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG4uYWxpZ24tbGVmdC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4uYWxpZ24tcmlnaHQudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1jZW50ZXIudmVydGljYWwubWVudSA+IGxpID4gYSB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1zZWxmLXRvcCB7XG4gIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG59XG5cbi5hbGlnbi1ib3R0b20ge1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG59XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kO1xufVxuXG4uYWxpZ24tbWlkZGxlIHtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cblxuLmFsaWduLXNlbGYtbWlkZGxlIHtcbiAgYWxpZ24tc2VsZjogY2VudGVyO1xufVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xufVxuXG4uYWxpZ24tc2VsZi1zdHJldGNoIHtcbiAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbn1cblxuLmFsaWduLWNlbnRlci1taWRkbGUge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxO1xufVxuXG4uc21hbGwtb3JkZXItMiB7XG4gIG9yZGVyOiAyO1xufVxuXG4uc21hbGwtb3JkZXItMyB7XG4gIG9yZGVyOiAzO1xufVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0O1xufVxuXG4uc21hbGwtb3JkZXItNSB7XG4gIG9yZGVyOiA1O1xufVxuXG4uc21hbGwtb3JkZXItNiB7XG4gIG9yZGVyOiA2O1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMztcbiAgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7XG4gIH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxO1xuICB9XG4gIC5sYXJnZS1vcmRlci0yIHtcbiAgICBvcmRlcjogMjtcbiAgfVxuICAubGFyZ2Utb3JkZXItMyB7XG4gICAgb3JkZXI6IDM7XG4gIH1cbiAgLmxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0O1xuICB9XG4gIC5sYXJnZS1vcmRlci01IHtcbiAgICBvcmRlcjogNTtcbiAgfVxuICAubGFyZ2Utb3JkZXItNiB7XG4gICAgb3JkZXI6IDY7XG4gIH1cbn1cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5mbGV4LWNoaWxkLWF1dG8ge1xuICBmbGV4OiAxIDEgYXV0bztcbn1cblxuLmZsZXgtY2hpbGQtZ3JvdyB7XG4gIGZsZXg6IDEgMCBhdXRvO1xufVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bztcbn1cblxuLmZsZXgtZGlyLXJvdyB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG59XG5cbi5mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi5mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lZGl1bS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93IHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG4gIC5tZWRpdW0tZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubWVkaXVtLWZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1mbGV4LWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuICAubGFyZ2UtZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG4gIC5sYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIH1cbiAgLmxhcmdlLWZsZXgtZGlyLWNvbHVtbiB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgfVxufVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAwZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNob3ctZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGlkZS1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLnNob3ctZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkgYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuXG4uc2hvdy1vbi1mb2N1czphY3RpdmUsIC5zaG93LW9uLWZvY3VzOmZvY3VzIHtcbiAgcG9zaXRpb246IHN0YXRpYyAhaW1wb3J0YW50O1xuICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IHZpc2libGUgIWltcG9ydGFudDtcbiAgY2xpcDogYXV0byAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICFpbXBvcnRhbnQ7XG59XG5cbi5zaG93LWZvci1sYW5kc2NhcGUsXG4uaGlkZS1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5oaWRlLWZvci1sYW5kc2NhcGUsXG4uc2hvdy1mb3ItcG9ydHJhaXQge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBwb3J0cmFpdCkge1xuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5oaWRlLWZvci1kYXJrLW1vZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKHByZWZlcnMtY29sb3Itc2NoZW1lOiBkYXJrKSB7XG4gIC5zaG93LWZvci1kYXJrLW1vZGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uc2hvdy1mb3ItaWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgYWxsIGFuZCAoLW1zLWhpZ2gtY29udHJhc3Q6IG5vbmUpLCAoLW1zLWhpZ2gtY29udHJhc3Q6IGFjdGl2ZSkge1xuICAuc2hvdy1mb3ItaWUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmhpZGUtZm9yLWllIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5zaG93LWZvci1zdGlja3kge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uaXMtc3R1Y2sgLnNob3ctZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaXMtc3R1Y2sgLmhpZGUtZm9yLXN0aWNreSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zbGlkZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi5zbGlkZS1pbi1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLWxlZnQubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG59XG5cbi5zbGlkZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLnNsaWRlLWluLXVwLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG4uc2xpZGUtaW4tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1pbi1yaWdodC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbn1cblxuLnNsaWRlLW91dC1kb3duLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpZGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtcmlnaHQubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4uc2xpZGUtb3V0LWxlZnQubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG5cbi5zbGlkZS1vdXQtbGVmdC5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG59XG5cbi5mYWRlLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICBvcGFjaXR5OiAwO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xufVxuXG4uZmFkZS1pbi5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5mYWRlLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbn1cblxuLmZhZGUtb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3A7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tdG9wLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tcmlnaHQubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVZKC05MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLXJpZ2h0Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLWluLWZyb20tYm90dG9tLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1ib3R0b20ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1sZWZ0Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbGVmdC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS14Lm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCgtOTBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLWluLWZyb20tbWlkZGxlLXgubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2UtaW4tZnJvbS1taWRkbGUteS5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1pbi1mcm9tLW1pZGRsZS15Lm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXRvcC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogdG9wO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS10b3AubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWCg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1yaWdodC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQ7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLXJpZ2h0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tYm90dG9tLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b207XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLWJvdHRvbS5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGVYKC05MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0O1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5oaW5nZS1vdXQtZnJvbS1sZWZ0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVkoLTkwZGVnKTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlKDBkZWcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLmhpbmdlLW91dC1mcm9tLW1pZGRsZS14Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSgyMDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoMjAwMHB4KSByb3RhdGUoMGRlZyk7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaGluZ2Utb3V0LWZyb20tbWlkZGxlLXkubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDIwMDBweCkgcm90YXRlWSg5MGRlZyk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjUpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1pbi11cC5tdWktZW50ZXIubXVpLWVudGVyLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1pbi1kb3duLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMDtcbn1cblxuLnNjYWxlLWluLWRvd24ubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LXVwLm11aS1sZWF2ZSB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zY2FsZS1vdXQtdXAubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zY2FsZS1vdXQtZG93bi5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uc2NhbGUtb3V0LWRvd24ubXVpLWxlYXZlLm11aS1sZWF2ZS1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHNjYWxlKDAuNSk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlciB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDUwMG1zO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMC43NXR1cm4pO1xuICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zcGluLWluLm11aS1lbnRlci5tdWktZW50ZXItYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIG9wYWNpdHk6IDE7XG59XG5cbi5zcGluLW91dC5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0Lm11aS1sZWF2ZS5tdWktbGVhdmUtYWN0aXZlIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMC43NXR1cm4pO1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyIHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNTAwbXM7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIHRyYW5zZm9ybTogcm90YXRlKDAuNzV0dXJuKTtcbiAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICBvcGFjaXR5OiAwO1xufVxuXG4uc3Bpbi1pbi1jY3cubXVpLWVudGVyLm11aS1lbnRlci1hY3RpdmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiA1MDBtcztcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgb3BhY2l0eTogMTtcbn1cblxuLnNwaW4tb3V0LWNjdy5tdWktbGVhdmUubXVpLWxlYXZlLWFjdGl2ZSB7XG4gIHRyYW5zZm9ybTogcm90YXRlKC0wLjc1dHVybik7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5zbG93IHtcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAyNTBtcyAhaW1wb3J0YW50O1xufVxuXG4ubGluZWFyIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhaW1wb3J0YW50O1xufVxuXG4uZWFzZSB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4gIWltcG9ydGFudDtcbn1cblxuLmVhc2Utb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0ICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQ4NSwgMC4xNTUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLW91dCB7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40ODUsIDAuMTU1LCAwLjUxNSwgMC44NDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2UtaW4tb3V0IHtcbiAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAzMDBtcyAhaW1wb3J0YW50O1xufVxuXG4ubG9uZy1kZWxheSB7XG4gIHRyYW5zaXRpb24tZGVsYXk6IDcwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZS03O1xufVxuQGtleWZyYW1lcyBzaGFrZS03IHtcbiAgMCUsIDEwJSwgMjAlLCAzMCUsIDQwJSwgNTAlLCA2MCUsIDcwJSwgODAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg3JSk7XG4gIH1cbiAgNSUsIDE1JSwgMjUlLCAzNSUsIDQ1JSwgNTUlLCA2NSUsIDc1JSwgODUlLCA5NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNyUpO1xuICB9XG59XG5cbi5zcGluLWN3IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNwaW4tY3ctMXR1cm47XG59XG5Aa2V5ZnJhbWVzIHNwaW4tY3ctMXR1cm4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTF0dXJuKTtcbiAgfVxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgfVxufVxuXG4uc3Bpbi1jY3cge1xuICBhbmltYXRpb24tbmFtZTogc3Bpbi1jY3ctMXR1cm47XG59XG5Aa2V5ZnJhbWVzIHNwaW4tY2N3LTF0dXJuIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xdHVybik7XG4gIH1cbn1cblxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3aWdnbGUtN2RlZztcbn1cbkBrZXlmcmFtZXMgd2lnZ2xlLTdkZWcge1xuICA0MCUsIDUwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg3ZGVnKTtcbiAgfVxuICAzNSUsIDQ1JSwgNTUlLCA2NSUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC03ZGVnKTtcbiAgfVxuICAwJSwgMzAlLCA3MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICB9XG59XG5cbi5zaGFrZSxcbi5zcGluLWN3LFxuLnNwaW4tY2N3LFxuLndpZ2dsZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNTAwbXM7XG59XG5cbi5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xufVxuXG4uc2xvdyB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogNzUwbXMgIWltcG9ydGFudDtcbn1cblxuLmZhc3Qge1xuICBhbmltYXRpb24tZHVyYXRpb246IDI1MG1zICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lYXIge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLmVhc2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlICFpbXBvcnRhbnQ7XG59XG5cbi5lYXNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbiAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dCAhaW1wb3J0YW50O1xufVxuXG4uZWFzZS1pbi1vdXQge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dCAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC4yNCwgMS4yNDUpICFpbXBvcnRhbnQ7XG59XG5cbi5ib3VuY2Utb3V0IHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNDg1LCAwLjE1NSwgMC41MTUsIDAuODQ1KSAhaW1wb3J0YW50O1xufVxuXG4uYm91bmNlLWluLW91dCB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc2LCAtMC4yNDUsIDAuMjQsIDEuMjQ1KSAhaW1wb3J0YW50O1xufVxuXG4uc2hvcnQtZGVsYXkge1xuICBhbmltYXRpb24tZGVsYXk6IDMwMG1zICFpbXBvcnRhbnQ7XG59XG5cbi5sb25nLWRlbGF5IHtcbiAgYW5pbWF0aW9uLWRlbGF5OiA3MDBtcyAhaW1wb3J0YW50O1xufVxuXG4uYWxpZ25mdWxsIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoLTUwdncgKyA1MCUpO1xuICBtYXJnaW4tcmlnaHQ6IGNhbGMoLTUwdncgKyA1MCUpO1xuICBtYXgtd2lkdGg6IDEwMHZ3O1xufVxuXG5ib2R5LFxuaHRtbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBib2R5Lm1lbnUtZXhwYW5kZWQsXG4gIGh0bWwubWVudS1leHBhbmRlZCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDEwMHZoO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICBib2R5Lm1lbnUtZXhwYW5kZWQgLmhlYWRlcixcbiAgaHRtbC5tZW51LWV4cGFuZGVkIC5oZWFkZXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgaGVpZ2h0OiAxMDB2aDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG5ib2R5Lm1lbnUtZXhwYW5kZWQgLmhlYWRlciAubWFpbi1tZW51LFxuaHRtbC5tZW51LWV4cGFuZGVkIC5oZWFkZXIgLm1haW4tbWVudSB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5idXR0b24ge1xuICBoZWlnaHQ6IDMuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuMTg3NXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxODc1cmVtO1xuICBwYWRkaW5nOiAwIDIuMTg3NXJlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1yYWRpdXM6IDJyZW07XG4gIGJvcmRlcjogMi41cHggc29saWQgI0U1NkQwNjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5idXR0b24ge1xuICAgIGhlaWdodDogMy44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMi44MTI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuOTM3NXJlbTtcbiAgfVxufVxuLmJ1dHRvbjpob3ZlciwgLmJ1dHRvbjpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMTczNzY2O1xuICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG59XG4uYnV0dG9uLmRhcmsge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5idXR0b24uZGFyazpob3ZlciwgLmJ1dHRvbi5kYXJrOmZvY3VzIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xufVxuXG4ud3AtYmxvY2stYnV0dG9ucyAud3AtYmxvY2stYnV0dG9uIHtcbiAgbWFyZ2luOiAwIDAgMS44NzVyZW0gMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG59XG4ud3AtYmxvY2stYnV0dG9ucyAud3AtYmxvY2stYnV0dG9uIC53cC1lbGVtZW50LWJ1dHRvbiB7XG4gIGhlaWdodDogMy4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMy4xODc1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE4NzVyZW07XG4gIHBhZGRpbmc6IDAgMi4xODc1cmVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLXJhZGl1czogMnJlbTtcbiAgYm9yZGVyOiAyLjVweCBzb2xpZCAjRTU2RDA2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiAud3AtZWxlbWVudC1idXR0b24ge1xuICAgIGhlaWdodDogMy44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuODc1cmVtO1xuICAgIHBhZGRpbmc6IDAgMi44MTI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEuOTM3NXJlbTtcbiAgfVxufVxuLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiAud3AtZWxlbWVudC1idXR0b246aG92ZXIsIC53cC1ibG9jay1idXR0b25zIC53cC1ibG9jay1idXR0b24gLndwLWVsZW1lbnQtYnV0dG9uOmZvY3VzIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6ICMxNzM3NjY7XG4gIGJvcmRlci1jb2xvcjogIzE3Mzc2Njtcbn1cblxuLmlubmVyLXBhZ2UtY29udGVudCB7XG4gIHBhZGRpbmc6IDAgMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmlubmVyLXBhZ2UtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmlubmVyLXBhZ2UtY29udGVudCAuYWxpZ25mdWxsIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygtNTB2dyArIDY3LjI1JSk7XG4gICAgd2lkdGg6IDEwMHZ3O1xuICB9XG59XG4uaW5uZXItcGFnZS1jb250ZW50ID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4uaW5uZXItcGFnZS1jb250ZW50ID4gdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG59XG4uaW5uZXItcGFnZS1jb250ZW50ID4gdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil49cIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cblxuLndwLWJsb2NrLWhlYWRpbmcge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cblxuLnJldmVhbC1vdmVybGF5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG59XG5cbi5pcy1yZXZlYWwtb3BlbiBoZWFkZXIsIC5pcy1yZXZlYWwtb3BlbiAjbWFpbiwgLmlzLXJldmVhbC1vcGVuIGZvb3RlciB7XG4gIGZpbHRlcjogYmx1cig1cHgpO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAjbWFpbiA+IC5yb3cgPiAuY29sdW1ucy5sYXJnZS0xMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAxLjU2MjVyZW07XG4gICAgcGFkZGluZy1yaWdodDogMS41NjI1cmVtO1xuICB9XG59XG4jbWFpbiAubm8tcGFkZGluZyB7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbn1cblxuaDEge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDIuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMy4xMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBoMSB7XG4gICAgZm9udC1zaXplOiAzLjQzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuNzVyZW07XG4gIH1cbn1cblxuaDIge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDIuNDM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMi44NzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuNDM3NXJlbTtcbiAgfVxufVxuXG5oMyB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMi4wNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMi41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgaDMge1xuICAgIGZvbnQtc2l6ZTogMi4zNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuMTI1cmVtO1xuICB9XG59XG5cbmg0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjgxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAyLjMxMjVyZW07XG59XG5cbmg1IHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY4NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBoNSB7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDEuODc1cmVtO1xuICB9XG59XG5cbmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbn1cblxucCB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBsaW5lLWhlaWdodDogMnJlbTtcbiAgY29sb3I6ICMxODIwMkM7XG59XG5wLmhhcy1tZWRpdW0tZm9udC1zaXplIHtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjkzNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBwLmhhcy1tZWRpdW0tZm9udC1zaXplIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4zNzVyZW07XG4gIH1cbn1cblxudWwgbGksIG9sIGxpIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY4NzVyZW07XG4gIGNvbG9yOiAjMkQzMzQ0O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgdWwgbGksIG9sIGxpIHtcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMnJlbTtcbiAgfVxufVxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL2ljb21vb24uZW90P3MwcjI4cTFcIik7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi5lb3Q/czByMjhxMSNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi53b2ZmMj9zMHIyOHExXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnR0Zj9zMHIyOHExXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLndvZmY/czByMjhxMVwiKSBmb3JtYXQoXCJ3b2ZmXCIpLCB1cmwoXCIuLi9mb250cy9pY29tb29uLnN2Zz9zMHIyOHExI2ljb21vb25cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5bY2xhc3NePWljb24tXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIiAhaW1wb3J0YW50O1xuICBzcGVhazogbmV2ZXI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1wbGF5MzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExY1wiO1xufVxuXG4uaWNvbi1jbG9zZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuXG4uaWNvbi1kb3dubG9hZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMVwiO1xufVxuXG4uaWNvbi1leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cblxuLmljb24tbG9uZy1hcnJvdy1iYWNrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG59XG5cbi5pY29uLWFycm93OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG5cbi5pY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cblxuLmljb24tc21hbGwtYXJyb3ctZG93bjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuXG4uaWNvbi13YXZlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG59XG5cbi5pY29uLWxvbmctYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cblxuLmljb24tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cblxuLmljb24tcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuXG4uaWNvbi1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG5cbi5pY29uLXBkZjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuXG4uaWNvbi1xdW90ZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuXG4uaWNvbi1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTBcIjtcbn1cblxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTFcIjtcbn1cblxuLmljb24teW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxM1wiO1xufVxuXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XG59XG5cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgW2RhdGEtYW9zXj1mYWRlXVtkYXRhLWFvc149ZmFkZV0ge1xuICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuICBib2R5IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIGhlYWRlci5oZWFkZXIge1xuICAgIHRvcDogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5oZWFkZXIgLmhlYWRlci1pbm5lciB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICB9XG4gIC5oZWFkZXIsXG4gIC5jYXNlLWJhbm5lciBpbWcsXG4gIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlcixcbiAgLmhlYWRlciAuaGVhZGVyLWlubmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgfVxuICAuY2FzZS1zdHVkeS1jb250YWluZXIgLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLmJhbm5lci1kZXRhaWxzIGgxLFxuICAuYmFubmVyLWRldGFpbHMgaDQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuICAjbWFpbiB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgfVxuICAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24sXG4gIC5wcmludC13cmFwcGVyLFxuICAjbWFpbiA+IC5yb3cgPiAubWVkaXVtLTQsXG4gIGZvb3Rlci5mb290ZXIsXG4gIC5zaG93LWZvci1zciB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG4gICNtYWluID4gLnJvdyA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxufVxuLmJyZWFkY3J1bWJzID4gc3Bhbixcbi55b2FzdC1icmVhZGNydW1icyA+IHNwYW4ge1xuICBjb2xvcjogIzMzM0M0Mjtcbn1cbi5icmVhZGNydW1icyA+IHNwYW4gPiBzcGFuLFxuLnlvYXN0LWJyZWFkY3J1bWJzID4gc3BhbiA+IHNwYW4ge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBGcmFua2xpblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogIzMzM0M0MjtcbiAgcGFkZGluZzogMCAwLjYyNXJlbSAwIDAuNjI1cmVtO1xufVxuLmJyZWFkY3J1bWJzID4gc3BhbiA+IHNwYW4gYSxcbi55b2FzdC1icmVhZGNydW1icyA+IHNwYW4gPiBzcGFuIGEge1xuICBjb2xvcjogIzMzM0M0Mjtcbn1cbi5icmVhZGNydW1icyA+IHNwYW4gPiBzcGFuLmJyZWFkY3J1bWJfbGFzdCxcbi55b2FzdC1icmVhZGNydW1icyA+IHNwYW4gPiBzcGFuLmJyZWFkY3J1bWJfbGFzdCB7XG4gIHBhZGRpbmc6IDAgMC42MjVyZW0gMCAwLjYyNXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgRnJhbmtsaW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5icmVhZGNydW1icyA+IHNwYW4gPiBzcGFuOmZpcnN0LWNoaWxkLFxuLnlvYXN0LWJyZWFkY3J1bWJzID4gc3BhbiA+IHNwYW46Zmlyc3QtY2hpbGQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG5cbmJvZHkuc2luZ2xlLWNhcmVlciAucGFnZS10aXRsZS13cmFwcGVyLCBib2R5LnNpbmdsZS1wb3N0IC5wYWdlLXRpdGxlLXdyYXBwZXIge1xuICBwYWRkaW5nOiAyLjVyZW0gMS41NjI1cmVtIDAgMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgYm9keS5zaW5nbGUtY2FyZWVyIC5wYWdlLXRpdGxlLXdyYXBwZXIsIGJvZHkuc2luZ2xlLXBvc3QgLnBhZ2UtdGl0bGUtd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbmJvZHkuc2luZ2xlLWNhcmVlciAucGFnZS10aXRsZS13cmFwcGVyIC50aGUtdGl0bGUsIGJvZHkuc2luZ2xlLXBvc3QgLnBhZ2UtdGl0bGUtd3JhcHBlciAudGhlLXRpdGxlIHtcbiAgbWFyZ2luOiAyLjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGJvZHkuc2luZ2xlLWNhcmVlciAucGFnZS10aXRsZS13cmFwcGVyIC50aGUtdGl0bGUsIGJvZHkuc2luZ2xlLXBvc3QgLnBhZ2UtdGl0bGUtd3JhcHBlciAudGhlLXRpdGxlIHtcbiAgICBtYXJnaW46IDMuNzVyZW0gMCA1cmVtIDA7XG4gICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgfVxufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5wYWdlLXRpdGxlLXdyYXBwZXIgLnRoZS10aXRsZSBoMywgYm9keS5zaW5nbGUtY2FyZWVyIC5wYWdlLXRpdGxlLXdyYXBwZXIgLnRoZS10aXRsZSBoNSwgYm9keS5zaW5nbGUtcG9zdCAucGFnZS10aXRsZS13cmFwcGVyIC50aGUtdGl0bGUgaDMsIGJvZHkuc2luZ2xlLXBvc3QgLnBhZ2UtdGl0bGUtd3JhcHBlciAudGhlLXRpdGxlIGg1IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG5ib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzLCBib2R5LnNpbmdsZS1wb3N0IC5jYXJlZXItZGV0YWlscyB7XG4gIHBhZGRpbmc6IDAgMS41NjI1cmVtIDVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscywgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMge1xuICAgIG1heC13aWR0aDogNzUuMzEyNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0byAzLjEyNXJlbSBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicywgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMge1xuICBtYXJnaW46IDAgMCAyLjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIHtcbiAgICB3aWR0aDogMTcuMjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luOiAwIDYuMjVyZW0gMCAwO1xuICB9XG59XG5ib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIC50YWJzLCBib2R5LnNpbmdsZS1wb3N0IC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicyAudGFicyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbmJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMgLnRhYnMgLnRhYnMtdGl0bGUsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIC50YWJzIC50YWJzLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogI0NDRjBGNztcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDEuMjVyZW07XG59XG5ib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIC50YWJzIC50YWJzLXRpdGxlIGEsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIC50YWJzIC50YWJzLXRpdGxlIGEge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicyAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUsIGJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMgLnRhYnMgLnRhYnMtdGl0bGU6aG92ZXIsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy10YWJzIC50YWJzIC50YWJzLXRpdGxlLmlzLWFjdGl2ZSwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMgLnRhYnMgLnRhYnMtdGl0bGU6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjQjJFNEVEO1xufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicyAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUgYSwgYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicyAudGFicyAudGFicy10aXRsZTpob3ZlciBhLCBib2R5LnNpbmdsZS1wb3N0IC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtdGFicyAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUgYSwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLXRhYnMgLnRhYnMgLnRhYnMtdGl0bGU6aG92ZXIgYSB7XG4gIGJvcmRlci1jb2xvcjogIzE3Mzc2NjtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIGJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IHtcbiAgICB3aWR0aDogNDkuMzc1cmVtO1xuICB9XG59XG5ib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7XG59XG5ib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwO1xufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnIGEsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnIGE6aG92ZXIsIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC5wb3NpdGlvbi1kZXRhaWxzIC5zdWItaXRlbSwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzE3Mzc2NjtcbiAgcGFkZGluZzogMS4yNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC5wb3NpdGlvbi1kZXRhaWxzIC5zdWItaXRlbSwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW0ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2x1bW4tZ2FwOiAwLjYyNXJlbTtcbiAgfVxufVxuYm9keS5zaW5nbGUtY2FyZWVyIC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC5wb3NpdGlvbi1kZXRhaWxzIC5zdWItaXRlbTpmaXJzdC1jaGlsZCwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW06Zmlyc3QtY2hpbGQge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzE3Mzc2Njtcbn1cbmJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW0gc3BhbiwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW0gc3BhbiB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbmJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAucG9zaXRpb24tZGV0YWlscyAuc3ViLWl0ZW0gc3Bhbi5rZXksIGJvZHkuc2luZ2xlLXBvc3QgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnBvc2l0aW9uLWRldGFpbHMgLnN1Yi1pdGVtIHNwYW4ua2V5IHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICBib2R5LnNpbmdsZS1jYXJlZXIgLmNhcmVlci1kZXRhaWxzIC5jYXJlZXItZGV0YWlscy1jb250ZW50IC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnBvc2l0aW9uLWRldGFpbHMgLnN1Yi1pdGVtIHNwYW4ua2V5LCBib2R5LnNpbmdsZS1wb3N0IC5jYXJlZXItZGV0YWlscyAuY2FyZWVyLWRldGFpbHMtY29udGVudCAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC5wb3NpdGlvbi1kZXRhaWxzIC5zdWItaXRlbSBzcGFuLmtleSB7XG4gICAgd2lkdGg6IDEwLjYyNXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbmJvZHkuc2luZ2xlLWNhcmVlciAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAuYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSwgYm9keS5zaW5nbGUtcG9zdCAuY2FyZWVyLWRldGFpbHMgLmNhcmVlci1kZXRhaWxzLWNvbnRlbnQgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAuYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5iYWNrLXdyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYmFjay13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTtcbiAgfVxufVxuLmJhY2std3JhcHBlciBhIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBhZGRpbmctbGVmdDogMC42MjVyZW07XG59XG4uYmFjay13cmFwcGVyIGEgaSB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHJpZ2h0OiAwLjMxMjVyZW07XG4gIHRvcDogLTAuMDYyNXJlbTtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMXMgbGluZWFyO1xufVxuLmJhY2std3JhcHBlciBhOmhvdmVyIGkge1xuICByaWdodDogMC45Mzc1cmVtO1xufVxuXG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSAuYWNjb3JkaW9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXRvcDogNC41cHggc29saWQgIzE3Mzc2Njtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMxNzM3NjY7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbSAwO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LXdlaWdodDogNDAwO1xuICB0b3A6IDEuNTYyNXJlbTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNDQ0YwRjc7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBwYWRkaW5nOiAwIDAgMS44NzVyZW0gMDtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50ID4gdWwgPiBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCA+IHVsID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil49cIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCA+IHVsID4gbGkgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDAgMCAxLjI1cmVtO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTEgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50ID4gdWwgPiBsaSA+IHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMSAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgPiB1bCA+IGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil4tcIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0xIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gIGZvbnQtc2l6ZTogMC4wOTM3NXJlbTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24ge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwLjY4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICBkaXNwbGF5OiBmbGV4O1xuICBwYWRkaW5nOiAxLjY4NzVyZW0gMi41cmVtIDEuNjg3NXJlbSA0LjVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHNwYW4ge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LXdlaWdodDogNDAwO1xuICB0b3A6IDJyZW07XG4gIGxlZnQ6IDAuODEyNXJlbTtcbiAgd2lkdGg6IDJyZW07XG4gIGhlaWdodDogMnJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogI0NDRjBGNztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDIuNXJlbSAxLjg3NXJlbSA0LjVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgcCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IGEge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCA+IHVsID4gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgPiB1bCA+IGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pePXCI7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgPiB1bCA+IGxpID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAuOTM3NXJlbSAwIDAgMS4yNXJlbTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCA+IHVsID4gbGkgPiB1bCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50ID4gdWwgPiBsaSA+IHVsIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4peLXCI7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAudGFibGUgdGFibGUgdGhlYWQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjNzA3MDcwO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC50YWJsZSB0YWJsZSB0aGVhZCB0ciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHRoZWFkIHRyIHRoIHtcbiAgcGFkZGluZzogMCAwIDIuODEyNXJlbSAwO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHRoZWFkIHRyIHRoOmxhc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC50YWJsZSB0YWJsZSB0Ym9keSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAudGFibGUgdGFibGUgdGJvZHkgdHIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLmFjY29yZGlvbi13cmFwcGVyLnRoZW1lLTIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC50YWJsZSB0YWJsZSB0Ym9keSB0ciB0ZCB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBwYWRkaW5nOiAwLjYyNXJlbSAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzE3Mzc2NjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHRib2R5IHRyIHRkOmxhc3QtY2hpbGQge1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAudGFibGUgdGFibGUgdGJvZHkgdHIgdGQgYSB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHBhZGRpbmc6IDA7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHRib2R5IHRyIHRkIGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIitcIjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIudGhlbWUtMiAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLnRhYmxlIHRhYmxlIHRib2R5IHRyIHRkIGE6aG92ZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzE4MjAyQztcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5hY2NvcmRpb24td3JhcHBlci50aGVtZS0yIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtLmlzLWFjdGl2ZSAuYWNjb3JkaW9uLXRpdGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gIGZvbnQtc2l6ZTogMC4wOTM3NXJlbTtcbn1cblxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtbGFuZGluZyB7XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1sYW5kaW5nIGhlYWRlciB7XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciBoNCB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciA+IGg0IHtcbiAgbWFyZ2luOiAwIDAgMi41cmVtIDA7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gaDMsIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgaDQsIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgaDUsIGJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgaDYge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgPiBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gcCBhIHtcbiAgY29sb3I6ICMxODIwMkM7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMTczNzY2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gcCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gdWwgPiBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgPiB1bCA+IGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pePXCI7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gdWwgPiBsaSA+IGEge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbmJvZHkucGFnZS10ZW1wbGF0ZS1wYWdlLWRldGFpbHMgLmRldGFpbHMtcGFnZS1jb250YWluZXIgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMC45Mzc1cmVtIDAgMCAxLjI1cmVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXi1wiO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuYm9keS5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyAuZGV0YWlscy1wYWdlLWNvbnRhaW5lciA+IHVsID4gbGkgPiB1bCBsaSBhIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMTczNzY2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG5ib2R5LnBhZ2UtdGVtcGxhdGUtcGFnZS1kZXRhaWxzIC5kZXRhaWxzLXBhZ2UtY29udGFpbmVyID4gdWwgPiBsaSA+IHVsIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIHtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0aW9uIC5zZWxlY3QyLXNlbGVjdGlvbiB7XG4gIGhlaWdodDogMy4zNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEuNjg3NXJlbTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwQTRDNDtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcGFkZGluZzogMCAxLjU2MjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3Rpb24gLnNlbGVjdDItc2VsZWN0aW9uIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICByaWdodDogMS41NjI1cmVtO1xuICB0b3A6IDAuNzVyZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdGlvbiAuc2VsZWN0Mi1zZWxlY3Rpb24gLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMwMEE0QzQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3Rpb24gLnNlbGVjdDItc2VsZWN0aW9uIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0aW9uIC5zZWxlY3QyLXNlbGVjdGlvblthcmlhLWV4cGFuZGVkPXRydWVdIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3c6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1yYWRpdXM6IDAuNDM3NXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3gtc2hhZG93OiAwIDAuMTg3NXJlbSAwLjM3NXJlbSByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICB0b3A6IDAuMTg3NXJlbTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biAuc2VsZWN0Mi1yZXN1bHRzIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgcGFkZGluZzogMC4zNzVyZW0gMC45Mzc1cmVtO1xuICBmb250LWZhbWlseTogXCJMaWJyZSBGcmFua2xpblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItZHJvcGRvd24gLnNlbGVjdDItcmVzdWx0cyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbjpob3ZlciwgLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIC5zZWxlY3QyLXJlc3VsdHMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb246Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAjRUJFQkVCO1xuICBjb2xvcjogIzAwMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1kcm9wZG93biAuc2VsZWN0Mi1yZXN1bHRzIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZCB7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4ubmV3cy1jb250YWluZXIge1xuICBwYWRkaW5nOiAwIDEuMjVyZW0gMy4xMjVyZW0gMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzLWNvbnRhaW5lciB7XG4gICAgcGFkZGluZzogMCAwIDMuMTI1cmVtIDA7XG4gICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgICBtYXJnaW46IDAgLTFyZW07XG4gIH1cbn1cblxuLndwLWJsb2NrLWNvbHVtbnMge1xuICBtYXJnaW46IDAgMCAzLjEyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLWNvbHVtbnMge1xuICAgIG1hcmdpbjogMCAtMS4yNXJlbSAzLjEyNXJlbSAtMS4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbjpmaXJzdC1jaGlsZCB7XG4gICAgcGFkZGluZy1yaWdodDogMy43NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbjpudGgtb2YtdHlwZSgyKSB7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0VEN0UxO1xuICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07XG4gIH1cbn1cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiBoNCB7XG4gIG1hcmdpbjogMCAwIDIuNXJlbSAwO1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IGgzLCAud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uIGg0LCAud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uIGg1LCAud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uIGg2IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gcCB7XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHAgYSB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHAgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHVsID4gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gdWwgPiBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXj1wiO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHVsID4gbGkgPiBhIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMTczNzY2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gdWwgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiB1bCA+IGxpID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAuOTM3NXJlbSAwIDAgMS4yNXJlbTtcbn1cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiB1bCA+IGxpID4gdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiB1bCA+IGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil4tcIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi53cC1ibG9jay1jb2x1bW5zIC53cC1ibG9jay1jb2x1bW4gPiB1bCA+IGxpID4gdWwgbGkgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IHVsID4gbGkgPiB1bCBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gLnR3aXR0ZXItYmxvY2ssXG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stY29sdW1uID4gLmFjY29yZGlvbi13cmFwcGVyLFxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLWNvbHVtbiA+IC5maWxlcy1ibG9jayB7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbn1cblxuLndwLWJsb2NrLXF1b3RlIHtcbiAgcGFkZGluZzogMS44NzVyZW0gMi41cmVtIDEuMjVyZW0gMi41cmVtO1xuICBib3JkZXItcmFkaXVzOiAyLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gIGJvcmRlcjogbm9uZTtcbiAgbWFyZ2luOiAxLjg3NXJlbSAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAud3AtYmxvY2stcXVvdGUge1xuICAgIG1hcmdpbjogMy43NXJlbSAwO1xuICB9XG59XG4ud3AtYmxvY2stcXVvdGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1zaXplOiAyLjE4NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLXF1b3RlOmJlZm9yZSB7XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gIH1cbn1cbi53cC1ibG9jay1xdW90ZSBwIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS40Mzc1cmVtO1xuICBsaW5lLWhlaWdodDogMS42ODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLndwLWJsb2NrLXF1b3RlIHAge1xuICAgIGZvbnQtc2l6ZTogMS44MTI1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAyLjMxMjVyZW07XG4gIH1cbn1cbi53cC1ibG9jay1xdW90ZSBjaXRlIHtcbiAgY29sb3I6ICMwMDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4wNjI1cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAud3AtYmxvY2stcXVvdGUge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgbWFyZ2luOiAwLjYyNXJlbSAwO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIHtcbiAgcGFkZGluZzogMi41cmVtIDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbi1tYXAge1xuICAgIHBhZGRpbmc6IDIuNXJlbSAwIDQuMzc1cmVtIDA7XG4gIH1cbn1cbi5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2gge1xuICBiYWNrZ3JvdW5kOiAjRUFGOUZDO1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS44NzVyZW0gMy4xMjVyZW0gMS44NzVyZW07XG4gIG1hcmdpbjogMCAwIDMuMTI1cmVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDEuNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIHtcbiAgICBtYXJnaW46IDAgMCAzLjEyNXJlbSAwO1xuICAgIHBhZGRpbmc6IDEuODc1cmVtO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIHtcbiAgYm9yZGVyLXJhZGl1czogMS4wNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBoZWlnaHQ6IDUuMjVyZW07XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kOiAjZmVmZWZlO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5jaXRpZXMtc2VjdGlvbiB7XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuY2l0aWVzLXNlY3Rpb24ge1xuICAgIHdpZHRoOiAyNy4xODc1cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5jaXRpZXMtc2VjdGlvbiAuc2VsZWN0Mi1jb250YWluZXIge1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuY2l0aWVzLXNlY3Rpb24gLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICB3aWR0aDogMjcuMTg3NXJlbSAhaW1wb3J0YW50O1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5jaXRpZXMtc2VjdGlvbiAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBwYWRkaW5nLWxlZnQ6IDMuMTI1cmVtO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLmNpdGllcy1zZWN0aW9uIC5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgd2lkdGg6IDI3LjE4NzVyZW0gIWltcG9ydGFudDtcbiAgfVxufVxuLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuY2l0aWVzLXNlY3Rpb24gLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBsZWZ0OiAxLjI1cmVtO1xuICByaWdodDogYXV0bztcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xufVxuLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuY2l0aWVzLXNlY3Rpb24gLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3c6YWZ0ZXIge1xuICBjb2xvcjogI0U1NkQwNjtcbn1cbi5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLm9yLXNlY3Rpb24ge1xuICBoZWlnaHQ6IDMuNDM3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuNDM3NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjkzNzVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAub3Itc2VjdGlvbiB7XG4gICAgd2lkdGg6IDQuNjg3NXJlbTtcbiAgICBoZWlnaHQ6IDIuMTg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4xODc1cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwLjA2MjVyZW0gc29saWQgIzE3Mzc2NjtcbiAgICBib3JkZXItcmlnaHQ6IDAuMDYyNXJlbSBzb2xpZCAjMTczNzY2O1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5zZWFyY2gtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuc2VhcmNoLXNlY3Rpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLnNlYXJjaC1zZWN0aW9uIGkge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDEuMjVyZW07XG4gIHRvcDogMS4yNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLnNlYXJjaC1zZWN0aW9uIGkge1xuICAgIGxlZnQ6IDEuODc1cmVtO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5zZWFyY2gtc2VjdGlvbiBpbnB1dCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgaGVpZ2h0OiAzLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMy43NXJlbTtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgY29sb3I6ICMxODIwMkM7XG4gIGJvcmRlci1yYWRpdXM6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuc2VhcmNoLXNlY3Rpb24gaW5wdXQge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiA0LjM3NXJlbTtcbiAgfVxufVxuLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuc2VhcmNoLXNlY3Rpb24gaW5wdXQ6OnBsYWNlaG9sZGVyIHtcbiAgb3BhY2l0eTogMC45O1xuICBjb2xvcjogIzE4MjAyQztcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjc1cmVtO1xuICB3aGl0ZS1zcGFjZTogcHJlLWxpbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLnN1Ym1pdC1zZWN0aW9uIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cbi5sb2NhdGlvbi1tYXAgLm1hcC1zZWFyY2ggLm1hcC1zZWFyY2gtaW5uZXIgLnN1Ym1pdC1zZWN0aW9uIGlucHV0IHtcbiAgaGVpZ2h0OiAzLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjE4NzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgcGFkZGluZzogMCAyLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItcmFkaXVzOiAycmVtO1xuICBib3JkZXI6IDIuNXB4IHNvbGlkICNFNTZEMDY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5zdWJtaXQtc2VjdGlvbiBpbnB1dCB7XG4gICAgaGVpZ2h0OiAzLjg3NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMy44NzVyZW07XG4gICAgcGFkZGluZzogMCAyLjgxMjVyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMS45Mzc1cmVtO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5tYXAtc2VhcmNoIC5tYXAtc2VhcmNoLWlubmVyIC5zdWJtaXQtc2VjdGlvbiBpbnB1dDpob3ZlciwgLmxvY2F0aW9uLW1hcCAubWFwLXNlYXJjaCAubWFwLXNlYXJjaC1pbm5lciAuc3VibWl0LXNlY3Rpb24gaW5wdXQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzE3Mzc2NjtcbiAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xufVxuLmxvY2F0aW9uLW1hcCAjbWFwIHtcbiAgaGVpZ2h0OiAyMS44NzVyZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAjbWFwIHtcbiAgICBoZWlnaHQ6IDQzLjQzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9uLW1hcCAubG9jYXRpb25zIHtcbiAgICBoZWlnaHQ6IDQzLjQzNzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLWJvdHRvbTogMC4xMjVyZW0gc29saWQgIzAwQTRDNDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLmxvY2F0aW9uLW1hcCAubG9jYXRpb25zIHVsIGxpOmhvdmVyLCAubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkuYWN0aXZlIHtcbiAgYmFja2dyb3VuZDogI0VBRjlGQztcbn1cbi5sb2NhdGlvbi1tYXAgLmxvY2F0aW9ucyB1bCBsaSAuaW5uZXIge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS44NzVyZW07XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkgaDYge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1zaXplOiAxLjVyZW07XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkgLmxvY2F0aW9uLWRldGFpbHMge1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuNzVyZW07XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkgLmxvY2F0aW9uLWhvdXJzIHtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjc1cmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbi5sb2NhdGlvbi1tYXAgLmxvY2F0aW9ucyB1bCBsaSAubG9jYXRpb24taG91cnMgLmhvdXJzLXRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07XG59XG4ubG9jYXRpb24tbWFwIC5sb2NhdGlvbnMgdWwgbGkgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLmxvY2F0aW9uLW1hcCAubG9jYXRpb25zIHVsIGxpIGE6aG92ZXIsIC5sb2NhdGlvbi1tYXAgLmxvY2F0aW9ucyB1bCBsaSBhOmFjdGl2ZSB7XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FzZS1zdHVkeS1jb250YWluZXIgLmFsaWduZnVsbCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoLTUwdncgKyA3NiUpO1xuICAgIHdpZHRoOiAxMDB2dztcbiAgfVxufVxuLmNhc2Utc3R1ZHktY29udGFpbmVyIC53cC1ibG9jay1pbWFnZSB7XG4gIG1hcmdpbjogMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhc2Utc3R1ZHktY29udGFpbmVyIC53cC1ibG9jay1pbWFnZSB7XG4gICAgbWFyZ2luOiAyLjVyZW0gMDtcbiAgfVxufVxuLmNhc2Utc3R1ZHktY29udGFpbmVyIC53cC1ibG9jay1pbWFnZSBpbWcge1xuICBib3JkZXItcmFkaXVzOiAxLjg3NXJlbTtcbn1cbi5jYXNlLXN0dWR5LWNvbnRhaW5lciAud3AtYmxvY2stcXVvdGUge1xuICBtYXJnaW46IDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXNlLXN0dWR5LWNvbnRhaW5lciAud3AtYmxvY2stcXVvdGUge1xuICAgIG1hcmdpbjogMy43NXJlbSAwO1xuICB9XG59XG4uY2FzZS1zdHVkeS1jb250YWluZXIgLnN0YXRzLWJsb2NrIHtcbiAgcGFkZGluZzogMDtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnByaW50LXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgfVxufVxuLnByaW50LXdyYXBwZXIgLnByaW50LWNhc2Utc3R1ZHkge1xuICBwYWRkaW5nOiAwIDIuNXJlbSAwIDEuODc1cmVtO1xuICBoZWlnaHQ6IDMuODEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDMuODEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMi4yNXJlbTtcbiAgbWFyZ2luOiAxLjg3NXJlbSAxLjU2MjVyZW0gMy43NXJlbSAxLjU2MjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnByaW50LXdyYXBwZXIgLnByaW50LWNhc2Utc3R1ZHkge1xuICAgIGhlaWdodDogNC40Mzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA0LjQzNzVyZW07XG4gICAgbWFyZ2luOiA1MC42MjVyZW0gMCAwIDA7XG4gIH1cbn1cbi5wcmludC13cmFwcGVyIC5wcmludC1jYXNlLXN0dWR5IGkge1xuICB3aWR0aDogMi4zNzVyZW07XG4gIGhlaWdodDogMi4zNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGJhY2tncm91bmQ6ICNFNTZEMDY7XG4gIGNvbG9yOiAjRkZGRkZGO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xufVxuXG5AbWVkaWEgcHJpbnQge1xuICAud3AtYmxvY2staW1hZ2Uge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5oZWxwLW1lbnUgLmhlbHAtbWVudS10b2dnbGUge1xuICBoZWlnaHQ6IDMuNjI1cmVtO1xuICBsaW5lLWhlaWdodDogMy42MjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGJvcmRlcjogMi41cHggc29saWQgIzAwQTRDNDtcbiAgYm9yZGVyLXJhZGl1czogMS44MTI1cmVtO1xuICBwYWRkaW5nOiAwIDEuODc1cmVtIDAgMi4xODc1cmVtO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTU2MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbi5oZWxwLW1lbnUgLmhlbHAtbWVudS10b2dnbGU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIsIHNhbnMtc2VyaWY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgcmlnaHQ6IDEuODc1cmVtO1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBjb2xvcjogIzAwQTRDNDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xufVxuLmhlbHAtbWVudSAuaGVscC1tZW51LXRvZ2dsZS5ob3ZlcjphZnRlciB7XG4gIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG59XG4uaGVscC1tZW51IC5kcm9wZG93bi1wYW5lIHtcbiAgd2lkdGg6IDIzLjVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbiAgbWFyZ2luLXRvcDogMC43NXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwQTRDNDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZDogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjk1KTtcbiAgdG9wOiA2Ljg3NXJlbSAhaW1wb3J0YW50O1xuICBtYXgtaGVpZ2h0OiAxOC43NXJlbTtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWxwLW1lbnUgLmRyb3Bkb3duLXBhbmUge1xuICAgIG1heC1oZWlnaHQ6IDMxLjI1cmVtO1xuICB9XG59XG4uaGVscC1tZW51IC5kcm9wZG93bi1wYW5lIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmhlbHAtbWVudSAuZHJvcGRvd24tcGFuZSB1bCBsaSB7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAyLjE4NzVyZW07XG59XG4uaGVscC1tZW51IC5kcm9wZG93bi1wYW5lIHVsIGxpIGEge1xuICBwYWRkaW5nOiAwO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE1NjI1cmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG4uaGVscC1tZW51IC5kcm9wZG93bi1wYW5lIHVsIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0NDRjBGNztcbn1cbi5oZWxwLW1lbnUgLmRyb3Bkb3duLXBhbmUgdWwgbGk6aG92ZXIgYSB7XG4gIGJvcmRlci1jb2xvcjogIzE3Mzc2Njtcbn1cblxuLnNlYXJjaC1pbnRybyB7XG4gIHBhZGRpbmc6IDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZWFyY2gtaW50cm8ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zZWFyY2gtaW50cm8gLnNlYXJjaC10aXRsZSB7XG4gIG1hcmdpbjogMi41cmVtIDA7XG59XG4uc2VhcmNoLWludHJvIC5zZWFyY2gtdGl0bGUgaDMge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLnNlYXJjaC1pbnRybyAuc2VhcmNoLXRpdGxlIGgzOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjRTU2RDA2O1xufVxuXG4uc2VhcmNoLXJlc3VsdHMtd3JhcHBlciB7XG4gIHBhZGRpbmc6IDAgMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5zZWFyY2gtcmVzdWx0cy13cmFwcGVyIC5wb3N0LWRldGFpbHMge1xuICBwYWRkaW5nOiAwLjkzNzVyZW0gMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkZGQ7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoLXJlc3VsdHMtd3JhcHBlciAucG9zdC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDA7XG4gIH1cbn1cbi5zZWFyY2gtcmVzdWx0cy13cmFwcGVyIC5wb3N0LWRldGFpbHMgaDYgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIgLnBvc3QtZGV0YWlscyBwIHtcbiAgY29sb3I6ICMzMzM7XG59XG5cbi5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMi41cmVtIDEuODc1cmVtIDVyZW0gMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbjogMi41cmVtIDAgNXJlbSAwO1xuICB9XG59XG4uc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5uZXh0IHtcbiAgaGVpZ2h0OiAzLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjE4NzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgcGFkZGluZzogMCAyLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItcmFkaXVzOiAycmVtO1xuICBib3JkZXI6IDIuNXB4IHNvbGlkICNFNTZEMDY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VhcmNoLXJlc3VsdHMgLnBhZ2luYXRpb24gLnBhZ2UtbnVtYmVycy5uZXh0IHtcbiAgICBoZWlnaHQ6IDMuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAzLjg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDIuODEyNXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjkzNzVyZW07XG4gIH1cbn1cbi5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQ6aG92ZXIsIC5zZWFyY2gtcmVzdWx0cyAucGFnaW5hdGlvbiAucGFnZS1udW1iZXJzLm5leHQ6Zm9jdXMge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZDogIzE3Mzc2NjtcbiAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xufVxuXG4uaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OiAwIDAuMTg3NXJlbSAwLjM3NXJlbSByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuLmhlYWRlciAuaGVhZGVyLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB6LWluZGV4OiAxMDA7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDIuMTg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLmhlYWRlci1pbm5lciB7XG4gICAgcGFkZGluZzogMi41cmVtIDAgMi44MTI1cmVtIDA7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXItaW5uZXIgLmxvZ28gYSBpbWcge1xuICBoZWlnaHQ6IDMuNTYyNXJlbTtcbiAgd2lkdGg6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5oZWFkZXItaW5uZXIgLmxvZ28gYSBpbWcge1xuICAgIGhlaWdodDogNi4wMjI1cmVtO1xuICB9XG59XG4uaGVhZGVyIC5oZWFkZXItaW5uZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAubGFuZ3VhZ2VzIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmxhbmd1YWdlcyBhLFxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTU2MjVyZW07XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgbWFyZ2luLWxlZnQ6IDAuOTM3NXJlbTtcbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmxhbmd1YWdlcyBhLmFjdGl2ZSwgLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAubGFuZ3VhZ2VzIGE6aG92ZXIsIC5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmxhbmd1YWdlcyBhOmZvY3VzLFxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUgYS5hY3RpdmUsXG4uaGVhZGVyIC5oZWFkZXItaW5uZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIC50b3AtbWVudSBhOmhvdmVyLFxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUgYTpmb2N1cyB7XG4gIGJvcmRlci1jb2xvcjogIzAwQTRDNDtcbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmhlbHAtbWVudSB7XG4gIHdpZHRoOiAyMy41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDMuMTI1cmVtO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAuaGVscC1tZW51IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAuaGFtYnVyZ2VyLW1lbnUge1xuICBtYXJnaW4tbGVmdDogMi44MTI1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDIuMDYyNXJlbTtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmhhbWJ1cmdlci1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxufVxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAuaGFtYnVyZ2VyLW1lbnUgYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmhhbWJ1cmdlci1tZW51IGEgaSB7XG4gIGZvbnQtc2l6ZTogMS44NzVyZW07XG59XG4uaGVhZGVyIC5oZWFkZXItaW5uZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIC5kb25hdGUtbGluayB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5oZWFkZXItaW5uZXIgLmhlYWRlci1yaWdodC1zZWN0aW9uIC5kb25hdGUtbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLmRvbmF0ZS1saW5rIC5idXR0b24ge1xuICBtYXJnaW46IDAgMi4xODc1cmVtIDAgMi41cmVtO1xufVxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUge1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXIgLmhlYWRlci1pbm5lciAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24gLnRvcC1tZW51IHVsIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLmhlYWRlciAuaGVhZGVyLWlubmVyIC5oZWFkZXItcmlnaHQtc2VjdGlvbiAudG9wLW1lbnUgdWwgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtO1xufVxuLmhlYWRlciAubWFpbi1tZW51IHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDIuMTg3NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xuICBkaXNwbGF5OiBub25lO1xuICB6LWluZGV4OiAxMDAxO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL21lbnUtYmcuanBnXCIpIG5vLXJlcGVhdCBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICB0b3A6IDA7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUge1xuICAgIHBhZGRpbmc6IDIuODEyNXJlbSA2LjI1cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgbWluLWhlaWdodDogMTAwdmg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1pbi1oZWlnaHQ6IGF1dG87XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5zZWFyY2gge1xuICB3aWR0aDogY2FsYygxMDAlIC0gNjBweCk7XG4gIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnNlYXJjaCB7XG4gICAgd2lkdGg6IDMwLjY4NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5zZWFyY2ggZm9ybSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuc2VhcmNoIGZvcm0gaW5wdXQge1xuICBoZWlnaHQ6IDIuOTE4NzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEuODc1cmVtO1xuICBib3gtc2hhZG93OiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDAgMS44NzVyZW0gMCAzLjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNDQ0YwRjc7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuc2VhcmNoIGZvcm0gaW5wdXQge1xuICAgIGJvcmRlcjogMi41cHggc29saWQgIzAwQTRDNDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGhlaWdodDogMy43NXJlbTtcbiAgfVxufVxuLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnNlYXJjaCBmb3JtIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnNlYXJjaCBmb3JtIGJ1dHRvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwLjg3NXJlbTtcbiAgbGVmdDogMC44NzVyZW07XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuc2VhcmNoIGZvcm0gYnV0dG9uIHtcbiAgICB0b3A6IDEuMjVyZW07XG4gICAgbGVmdDogMS4yNXJlbTtcbiAgfVxufVxuLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLmNsb3NlLW1lbnUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuY2xvc2UtbWVudSBhIHtcbiAgd2lkdGg6IDIuODc1cmVtO1xuICBoZWlnaHQ6IDIuODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5jbG9zZS1tZW51IGEge1xuICAgIHdpZHRoOiAzLjY4NzVyZW07XG4gICAgaGVpZ2h0OiAzLjY4NzVyZW07XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5jbG9zZS1tZW51IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzMpO1xufVxuLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLmhlbHAtbWVudSB7XG4gIG1hcmdpbi1ib3R0b206IDIuMTg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5oZWxwLW1lbnUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5oZWxwLW1lbnUgLmRyb3Bkb3duLXBhbmUge1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB0b3A6IDAgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnRoZS1tZW51IC5hY2NvcmRpb24tbWVudSB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM5MkRCRTg7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtID4gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMDtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbSA+IGEge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmb250LXNpemU6IDIuODc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5vcGFjaXR5ID4gYSB7XG4gICAgb3BhY2l0eTogMC40MztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnRoZS1tZW51IC5hY2NvcmRpb24tbWVudSA+IC5tZW51LWl0ZW1bYXJpYS1leHBhbmRlZD10cnVlXSA+IGEge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgfVxufVxuLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLnRoZS1tZW51IC5hY2NvcmRpb24tbWVudSA+IC5tZW51LWl0ZW0uaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50ID4gYTphZnRlciB7XG4gIGJvcmRlcjogbm9uZTtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgcmlnaHQ6IDEuMjVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgdG9wOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCA+IGE6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIHJpZ2h0OiAtMi4xODc1cmVtO1xuICAgIHRvcDogMi41cmVtO1xuICB9XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXSA+IGE6YWZ0ZXIge1xuICB0cmFuc2Zvcm06IG5vbmU7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gIGZvbnQtc2l6ZTogMC4xMjVyZW07XG4gIHRvcDogMi4zNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnRbYXJpYS1leHBhbmRlZD10cnVlXSA+IGE6YWZ0ZXIge1xuICAgIGZvbnQtc2l6ZTogMC4xNTYyNXJlbTtcbiAgICB0b3A6IDNyZW07XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDAuOTM3NXJlbSAwIDEuODc1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgLmlzLWFjY29yZGlvbi1zdWJtZW51IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogNDByZW07XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgLmlzLWFjY29yZGlvbi1zdWJtZW51ID4gbGkgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIG1hcmdpbjogMC42MjVyZW0gMDtcbiAgZm9udC1zaXplOiAxLjA2MjVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAudGhlLW1lbnUgLmFjY29yZGlvbi1tZW51ID4gLm1lbnUtaXRlbS5pcy1hY2NvcmRpb24tc3VibWVudS1wYXJlbnQgLmlzLWFjY29yZGlvbi1zdWJtZW51ID4gbGkgYSB7XG4gICAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICAgIG1hcmdpbjogMS4xMjVyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC50aGUtbWVudSAuYWNjb3JkaW9uLW1lbnUgPiAubWVudS1pdGVtLmlzLWFjY29yZGlvbi1zdWJtZW51LXBhcmVudCAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUgPiBsaSBhOmhvdmVyIHtcbiAgICBib3JkZXItY29sb3I6ICNFNTZEMDY7XG4gIH1cbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5oZWFkZXItbWVudS1saW5rcyB7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuaGVhZGVyLW1lbnUtbGlua3MgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5oZWFkZXItbWVudS1saW5rcyB1bCB7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICB9XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuaGVhZGVyLW1lbnUtbGlua3MgdWwgbGkge1xuICBtYXJnaW46IDAgMS41cmVtIDEuNTYyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmhlYWRlciAubWFpbi1tZW51IC5tYWluLW1lbnUtaW5uZXIgLmhlYWRlci1tZW51LWxpbmtzIHVsIGxpIHtcbiAgICBtYXJnaW46IDAgMCAwLjYyNXJlbSAwO1xuICB9XG59XG4uaGVhZGVyIC5tYWluLW1lbnUgLm1haW4tbWVudS1pbm5lciAuaGVhZGVyLW1lbnUtbGlua3MgdWwgbGkgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5oZWFkZXIgLm1haW4tbWVudSAubWFpbi1tZW51LWlubmVyIC5oZWFkZXItbWVudS1saW5rcyB1bCBsaSBhOmhvdmVyIHtcbiAgYm9yZGVyLWNvbG9yOiAjRTU2RDA2O1xufVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzE3Mzc2NjtcbiAgcGFkZGluZzogMi44MTI1cmVtIDIuMTg3NXJlbTtcbiAgbWFyZ2luLXRvcDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIge1xuICAgIHBhZGRpbmc6IDQuMDYyNXJlbSAwIDMuMTI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgfVxufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAuZm9vdGVyLWxvZ28ge1xuICBtYXJnaW46IDAgMCAyLjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLmZvb3Rlci1sb2dvIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLmZvb3Rlci1sb2dvIGltZyB7XG4gIHdpZHRoOiAxOC44MTI1cmVtO1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5mb290ZXItbG9nbyBpbWcge1xuICAgIHdpZHRoOiAyMy44NzVyZW07XG4gIH1cbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5mb290ZXItbGlua3MsXG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuc29jaWFsIHtcbiAgbWFyZ2luOiAwIDAgMy4xMjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5mb290ZXItbGlua3MsXG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5zb2NpYWwge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAubWVudS1zb2NpYWwgLmZvb3Rlci1saW5rcyB1bCxcbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5zb2NpYWwgdWwge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuZm9vdGVyLWxpbmtzIHVsIGxpIGEsXG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuc29jaWFsIHVsIGxpIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5zb2NpYWwge1xuICBvcmRlcjogMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5zb2NpYWwge1xuICAgIG9yZGVyOiAyO1xuICB9XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuZm9vdGVyLWxpbmtzIHtcbiAgb3JkZXI6IDI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuZm9vdGVyLWxpbmtzIHtcbiAgICBvcmRlcjogMTtcbiAgfVxufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAubWVudS1zb2NpYWwgLmZvb3Rlci1saW5rcyB1bCB7XG4gIGZsZXgtd3JhcDogd3JhcDtcbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5mb290ZXItbGlua3MgdWwgbGkgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxpYnJlIEZyYW5rbGluXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGNvbG9yOiAjZmZmO1xufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAubWVudS1zb2NpYWwgLmZvb3Rlci1saW5rcyB1bCBsaSBhOmFmdGVyIHtcbiAgY29udGVudDogXCJ8XCI7XG4gIG1hcmdpbjogMCAxLjM3NXJlbTtcbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAubG9nby1zb2NpYWwgLm1lbnUtc29jaWFsIC5mb290ZXItbGlua3MgdWwgbGkgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAubWVudS1zb2NpYWwgLmZvb3Rlci1saW5rcyB1bCBsaTpsYXN0LWNoaWxkIGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5sb2dvLXNvY2lhbCAubWVudS1zb2NpYWwgLnNvY2lhbCB1bCBsaSBhIHtcbiAgbWFyZ2luOiAwIDEuNTYyNXJlbSAwIDA7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyIC5mb290ZXItaW5uZXIgLmxvZ28tc29jaWFsIC5tZW51LXNvY2lhbCAuc29jaWFsIHVsIGxpIGEge1xuICAgIG1hcmdpbjogMCAwIDAgMS41NjI1cmVtO1xuICB9XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZvb3RlciAuZm9vdGVyLWlubmVyIC5mb290ZXItbWVudSB7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IHAge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBGcmFua2xpblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luOiAwIDAgMC45Mzc1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IHAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5mb290ZXItbWVudSBwIGEge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAuZm9vdGVyLW1lbnUgcCBhOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IC5tZW51IHtcbiAgZmxleC13cmFwOiB3cmFwO1xufVxuLmZvb3RlciAuZm9vdGVyLWlubmVyIC5mb290ZXItbWVudSAubWVudSBsaSB7XG4gIG1hcmdpbjogMCAwIDAuOTM3NXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZvb3RlciAuZm9vdGVyLWlubmVyIC5mb290ZXItbWVudSAubWVudSBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IC5tZW51IGxpIGEge1xuICBmb250LWZhbWlseTogXCJMaWJyZSBGcmFua2xpblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbiAgcGFkZGluZzogMDtcbn1cbi5mb290ZXIgLmZvb3Rlci1pbm5lciAuZm9vdGVyLW1lbnUgLm1lbnUgbGkgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwifFwiO1xuICBtYXJnaW46IDAgMS4zNzVyZW07XG59XG4uZm9vdGVyIC5mb290ZXItaW5uZXIgLmZvb3Rlci1tZW51IC5tZW51IGxpIGE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5mb290ZXIgLmZvb3Rlci1pbm5lciAuZm9vdGVyLW1lbnUgLm1lbnUgbGk6Zmlyc3QtY2hpbGQgYTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIG1hcmdpbjogMCAxLjM3NXJlbTtcbiAgfVxufVxuXG4vKiBTbGlkZXIgKi9cbi5zbGljay1zbGlkZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1raHRtbC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIHRvdWNoLWFjdGlvbjogcGFuLXk7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5zbGljay1saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuLnNsaWNrLWxpc3Q6Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWxpc3QuZHJhZ2dpbmcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogaGFuZDtcbn1cblxuLnNsaWNrLXNsaWRlciAuc2xpY2stdHJhY2ssXG4uc2xpY2stc2xpZGVyIC5zbGljay1saXN0IHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xufVxuXG4uc2xpY2stdHJhY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2xpY2stdHJhY2s6YmVmb3JlLCAuc2xpY2stdHJhY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbn1cbi5zbGljay10cmFjazphZnRlciB7XG4gIGNsZWFyOiBib3RoO1xufVxuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLXRyYWNrIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4uc2xpY2stc2xpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5bZGlyPXJ0bF0gLnNsaWNrLXNsaWRlIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuLnNsaWNrLXNsaWRlIGltZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLnNsaWNrLXNsaWRlLnNsaWNrLWxvYWRpbmcgaW1nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zbGljay1zbGlkZS5kcmFnZ2luZyBpbWcge1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5zbGljay1sb2FkaW5nIC5zbGljay1zbGlkZSB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5zbGljay12ZXJ0aWNhbCAuc2xpY2stc2xpZGUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiBhdXRvO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cblxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFNsaWRlciAqL1xuLnNsaWNrLWxvYWRpbmcgLnNsaWNrLWxpc3Qge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuXG4vKiBJY29ucyAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvc2xpY2suZW90XCIpO1xuICBzcmM6IHVybChcIi4uL2ZvbnRzL3NsaWNrLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW1iZWRkZWQtb3BlbnR5cGVcIiksIHVybChcIi4uL2ZvbnRzL3NsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvc2xpY2sudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi9mb250cy9zbGljay5zdmcjc2xpY2tcIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4vKiBBcnJvd3MgKi9cbi5zbGljay1wcmV2LFxuLnNsaWNrLW5leHQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEuNzVyZW07XG4gIHdpZHRoOiAxLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgZm9udC1zaXplOiAwcHg7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdG9wOiA1MCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgLTUwJSk7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3V0bGluZTogbm9uZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLnNsaWNrLXByZXY6aG92ZXIsIC5zbGljay1wcmV2OmZvY3VzLFxuLnNsaWNrLW5leHQ6aG92ZXIsXG4uc2xpY2stbmV4dDpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uc2xpY2stcHJldjpob3ZlcjpiZWZvcmUsIC5zbGljay1wcmV2OmZvY3VzOmJlZm9yZSxcbi5zbGljay1uZXh0OmhvdmVyOmJlZm9yZSxcbi5zbGljay1uZXh0OmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpY2stcHJldi5zbGljay1kaXNhYmxlZDpiZWZvcmUsXG4uc2xpY2stbmV4dC5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICBvcGFjaXR5OiAwLjI1O1xufVxuLnNsaWNrLXByZXY6YmVmb3JlLFxuLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgb3BhY2l0eTogMC43NTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5zbGljay1wcmV2IHtcbiAgbGVmdDogMS41NjI1cmVtO1xuICB6LWluZGV4OiA1NTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuW2Rpcj1ydGxdIC5zbGljay1wcmV2IHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IC0yNXB4O1xufVxuLnNsaWNrLXByZXY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiO1xuICBmb250LXNpemU6IDEuODc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuW2Rpcj1ydGxdIC5zbGljay1wcmV2OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4oaSXCI7XG59XG5cbi5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IDEuNTYyNXJlbTtcbn1cbltkaXI9cnRsXSAuc2xpY2stbmV4dCB7XG4gIGxlZnQ6IC0yNXB4O1xuICByaWdodDogYXV0bztcbn1cbi5zbGljay1uZXh0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAzXCI7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIjtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cbltkaXI9cnRsXSAuc2xpY2stbmV4dDpiZWZvcmUge1xuICBjb250ZW50OiBcIuKGkFwiO1xufVxuXG4vKiBEb3RzICovXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLnNsaWNrLWRvdHMgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgaGVpZ2h0OiAyMHB4O1xuICB3aWR0aDogMjBweDtcbiAgbWFyZ2luOiAwIDVweDtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMjBweDtcbiAgd2lkdGg6IDIwcHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAwcHg7XG4gIGZvbnQtc2l6ZTogMHB4O1xuICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDVweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmZvY3VzOmJlZm9yZSB7XG4gIG9wYWNpdHk6IDE7XG59XG4uc2xpY2stZG90cyBsaSBidXR0b246YmVmb3JlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIGNvbnRlbnQ6IFwi4oCiXCI7XG4gIHdpZHRoOiAyMHB4O1xuICBoZWlnaHQ6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiBcInNsaWNrXCI7XG4gIGZvbnQtc2l6ZTogNnB4O1xuICBsaW5lLWhlaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuMjU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbjpiZWZvcmUge1xuICBjb2xvcjogYmxhY2s7XG4gIG9wYWNpdHk6IDAuNzU7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDI4cHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lcltkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDFlbTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lciAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm9yZGVyOiBub25lO1xuICBmb250LXNpemU6IDEwMCU7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgcGFkZGluZzogMDtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICByZXNpemU6IG5vbmU7XG4gIGhlaWdodDogMThweDtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgZm9udC1mYW1pbHk6IHNhbnMtc2VyaWY7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xufVxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG5cbi5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMDAwMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogMTA1MTtcbn1cblxuLnNlbGVjdDItcmVzdWx0cyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBwYWRkaW5nOiA2cHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGxlZnQ6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweDtcbn1cbi5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIHBhZGRpbmc6IDRweDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQ6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG59XG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duLnNlbGVjdDItc2VhcmNoLS1oaWRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlbGVjdDItY2xvc2UtbWFzayB7XG4gIGJvcmRlcjogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICBsZWZ0OiAwO1xuICB0b3A6IDA7XG4gIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xuICB3aWR0aDogYXV0bztcbiAgb3BhY2l0eTogMDtcbiAgei1pbmRleDogOTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0wKTtcbn1cblxuLnNlbGVjdDItaGlkZGVuLWFjY2Vzc2libGUge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWNsaXAtcGF0aDogaW5zZXQoNTAlKSAhaW1wb3J0YW50O1xuICBjbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAxcHggIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICBjb2xvcjogIzQ0NDtcbiAgbGluZS1oZWlnaHQ6IDI4cHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgaGVpZ2h0OiAyNnB4O1xuICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gIHBhZGRpbmctcmlnaHQ6IDBweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3BsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICM5OTk7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGhlaWdodDogMjZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFweDtcbiAgcmlnaHQ6IDFweDtcbiAgd2lkdGg6IDIwcHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHtcbiAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICBib3JkZXItd2lkdGg6IDVweCA0cHggMCA0cHg7XG4gIGhlaWdodDogMDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTRweDtcbiAgbWFyZ2luLXRvcDogLTJweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDA7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBsZWZ0OiAxcHg7XG4gIHJpZ2h0OiBhdXRvO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0LnNlbGVjdDItY29udGFpbmVyLS1kaXNhYmxlZCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyBiIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O1xuICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogdGV4dDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZS5zZWxlY3QyLXNlbGVjdGlvbi0tY2xlYXJhYmxlIHtcbiAgcGFkZGluZy1yaWdodDogMjVweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IDIwcHg7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAwO1xuICBwYWRkaW5nOiAxcHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlNGU0ZTQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHBhZGRpbmctbGVmdDogMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX2Rpc3BsYXkge1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIHBhZGRpbmctbGVmdDogMnB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGNvbG9yOiAjOTk5O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgcGFkZGluZzogMCA0cHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3ZlciwgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gIGNvbG9yOiAjMzMzO1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0W2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHRbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLWZvY3VzIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXI6IHNvbGlkIGJsYWNrIDFweDtcbiAgb3V0bGluZTogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsIC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdC5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24gLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VhcmNoLS1pbmxpbmUgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIG91dGxpbmU6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHMgPiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgbWF4LWhlaWdodDogMjAwcHg7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gIHBhZGRpbmctbGVmdDogMWVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBtYXJnaW4tbGVmdDogLTFlbTtcbiAgcGFkZGluZy1sZWZ0OiAyZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IC0yZW07XG4gIHBhZGRpbmctbGVmdDogM2VtO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBtYXJnaW4tbGVmdDogLTNlbTtcbiAgcGFkZGluZy1sZWZ0OiA0ZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICBtYXJnaW4tbGVmdDogLTRlbTtcbiAgcGFkZGluZy1sZWZ0OiA1ZW07XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgbWFyZ2luLWxlZnQ6IC01ZW07XG4gIHBhZGRpbmctbGVmdDogNmVtO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZ3JvdXAge1xuICBwYWRkaW5nOiAwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWQge1xuICBjb2xvcjogIzk5OTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RhYmxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzU4OTdmYjtcbiAgY29sb3I6IHdoaXRlO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX2dyb3VwIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogNnB4O1xufVxuXG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IoMjQ2LjUsIDI0Ni41LCAyNDYuNSk7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgb3V0bGluZTogMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCB3aGl0ZSA1MCUsICNlZWVlZWUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDUwJSwgI2VlZWVlZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgd2hpdGUgNTAlLCAjZWVlZWVlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9XCIjRkZGRkZGRkZcIiwgZW5kQ29sb3JzdHI9XCIjRkZFRUVFRUVcIiwgR3JhZGllbnRUeXBlPTApO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlOmZvY3VzIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgY29sb3I6ICM0NDQ7XG4gIGxpbmUtaGVpZ2h0OiAyOHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogMjZweDtcbiAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzk5OTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGhlaWdodDogMjZweDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDFweDtcbiAgcmlnaHQ6IDFweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsICNjY2NjY2MgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICNlZWVlZWUgNTAlLCAjY2NjY2NjIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAjZWVlZWVlIDUwJSwgI2NjY2NjYyAxMDAlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI0ZGRUVFRUVFXCIsIGVuZENvbG9yc3RyPVwiI0ZGQ0NDQ0NDXCIsIEdyYWRpZW50VHlwZT0wKTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IGIge1xuICBib3JkZXItY29sb3I6ICM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1zdHlsZTogc29saWQ7XG4gIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDtcbiAgaGVpZ2h0OiAwO1xuICBsZWZ0OiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICBtYXJnaW4tdG9wOiAtMnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICB3aWR0aDogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpY1tkaXI9cnRsXSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGxlZnQ6IDFweDtcbiAgcmlnaHQ6IGF1dG87XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICBib3JkZXI6IDFweCBzb2xpZCAjNTg5N2ZiO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cgYiB7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1hYm92ZSAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sIHdoaXRlIDAlLCAjZWVlZWVlIDUwJSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj1cIiNGRkZGRkZGRlwiLCBlbmRDb2xvcnN0cj1cIiNGRkVFRUVFRVwiLCBHcmFkaWVudFR5cGU9MCk7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMuc2VsZWN0Mi1jb250YWluZXItLW9wZW4uc2VsZWN0Mi1jb250YWluZXItLWJlbG93IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgI2VlZWVlZSA1MCUsIHdoaXRlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAjZWVlZWVlIDUwJSwgd2hpdGUgMTAwJSk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICNlZWVlZWUgNTAlLCB3aGl0ZSAxMDAlKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPVwiI0ZGRUVFRUVFXCIsIGVuZENvbG9yc3RyPVwiI0ZGRkZGRkZGXCIsIEdyYWRpZW50VHlwZT0wKTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgY3Vyc29yOiB0ZXh0O1xuICBvdXRsaW5lOiAwO1xuICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZTpmb2N1cyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM1ODk3ZmI7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U0ZTRlNDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiA1cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgcGFkZGluZzogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xuICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogNHB4O1xuICBjb2xvcjogIzg4ODtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDFlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHBhZGRpbmc6IDAgNHB4O1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZTpob3ZlciB7XG4gIGNvbG9yOiAjNTU1O1xuICBvdXRsaW5lOiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljW2Rpcj1ydGxdIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICBtYXJnaW4tbGVmdDogNXB4O1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gIHBhZGRpbmctbGVmdDogNXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAycHg7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWNbZGlyPXJ0bF0gLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDRweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzU4OTdmYjtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItc2VhcmNoLS1kcm9wZG93biAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgb3V0bGluZTogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgb3V0bGluZTogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWdyb3VwIHtcbiAgcGFkZGluZzogMDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWRpc2FibGVkIHtcbiAgY29sb3I6IGdyZXk7XG59XG4uc2VsZWN0Mi1jb250YWluZXItLWNsYXNzaWMgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMzODc1ZDc7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYyAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDZweDtcbn1cbi5zZWxlY3QyLWNvbnRhaW5lci0tY2xhc3NpYy5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJvcmRlci1jb2xvcjogIzU4OTdmYjtcbn1cblxuLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6IDE5LjM3NXJlbSAyLjE4NzVyZW0gNC4zNzVyZW0gMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDUuNjI1cmVtIDAgNy44MTI1cmVtIDA7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaGVscC1tZW51IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEuMjVyZW07XG4gIGxlZnQ6IDIuMTg3NXJlbTtcbiAgcmlnaHQ6IDIuMTg3NXJlbTtcbiAgei1pbmRleDogNTU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaGVscC1tZW51IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaGVscC1tZW51IC5oZWxwLW1lbnUtdG9nZ2xlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5oZWxwLW1lbnUgLmRyb3Bkb3duLXBhbmUge1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiAzLjc1cmVtICFpbXBvcnRhbnQ7XG59XG4uaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaW50cm8tYmFubmVyLWltYWdlIHtcbiAgd2lkdGg6IDI5Ljc1cmVtO1xuICBoZWlnaHQ6IDI5Ljc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTEzLjEyNXJlbTtcbiAgcmlnaHQ6IC01LjM3NXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5pbnRyby1iYW5uZXItaW1hZ2Uge1xuICAgIHdpZHRoOiA1OS44NzVyZW07XG4gICAgaGVpZ2h0OiA1OS44NzVyZW07XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAtMjMuMTI1cmVtO1xuICB9XG59XG4uaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaW50cm8tYmFubmVyLWltYWdlIGltZyB7XG4gIHdpZHRoOiAyOS43NXJlbTtcbiAgaGVpZ2h0OiAyOS43NXJlbTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaW50cm8tYmFubmVyLWltYWdlIGltZyB7XG4gICAgd2lkdGg6IDU5Ljg3NXJlbTtcbiAgICBoZWlnaHQ6IDU5Ljg3NXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIgLmludHJvLWJhbm5lci1kZXRhaWxzIHtcbiAgICB3aWR0aDogNDEuMjVyZW07XG4gIH1cbn1cbi5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5pbnRyby1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbn1cbi5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5pbnRyby1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgaDQge1xuICBjb2xvcjogIzI2MzY0RTtcbn1cbi5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5pbnRyby1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgcCB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjgxMjVyZW07XG4gIGNvbG9yOiAjMjYzNjRFO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIgLmludHJvLWJhbm5lci1kZXRhaWxzIC5iYW5uZXItZGV0YWlscyBwIHtcbiAgICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuMzc1cmVtO1xuICB9XG59XG4uaW50cm8tYmFubmVyIC5pbnRyby1iYW5uZXItd3JhcHBlciAuaW50cm8tYmFubmVyLWRldGFpbHMgaDEge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogODAwO1xuICBmb250LXNpemU6IDIuODc1cmVtO1xuICBsaW5lLWhlaWdodDogMy4yNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIgLmludHJvLWJhbm5lci1kZXRhaWxzIGgxIHtcbiAgICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiA1LjkzNzVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDUuOTM3NXJlbTtcbiAgfVxufVxuLmludHJvLWJhbm5lciAuaW50cm8tYmFubmVyLXdyYXBwZXIgLmludHJvLWJhbm5lci1kZXRhaWxzIGgxIGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5pbnRyby1iYW5uZXIgLmludHJvLWJhbm5lci13cmFwcGVyIC5pbnRyby1iYW5uZXItZGV0YWlscyBoMSBiciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuLnNlcnZpY2VzLWJsb2NrIHtcbiAgcGFkZGluZzogMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIHtcbiAgICBwYWRkaW5nOiA3LjgxMjVyZW0gMCA0LjM3NXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIHtcbiAgICBtYXgtd2lkdGg6IDc1LjMxMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLmJsb2NrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLmJsb2NrLXRpdGxlIGgxIHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5ibG9jay10aXRsZSBoMTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG4gIGZvbnQtZmFtaWx5OiBcImljb21vb25cIiwgc2Fucy1zZXJpZjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICBjb2xvcjogI0U1NkQwNjtcbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0wLjc1cmVtIDMuNzVyZW0gLTAuNzVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDAuODEyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCB7XG4gICAgd2lkdGg6IDE3LjY4NzVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgaGVpZ2h0OiAxNnJlbTtcbiAgICBtYXJnaW46IDAuODEyNXJlbSAwLjc1cmVtO1xuICB9XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCwgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS41NjI1cmVtIDEuMjVyZW0gMS4yNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMS44NzVyZW07XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBsaW5lYXI7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCwgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjE4NzVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IHtcbiAgYmFja2dyb3VuZDogI0VBRjlGQztcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgc3BhbiB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxLjU2MjVyZW07XG4gICAgcmlnaHQ6IDEuNTYyNXJlbTtcbiAgfVxufVxuLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgc3BhbiBpIHtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuc2VydmljZS1pY29uIHtcbiAgd2lkdGg6IDQuNDM3NXJlbTtcbiAgaGVpZ2h0OiA0LjQzNzVyZW07XG4gIGJhY2tncm91bmQ6ICNCMkU0RUQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07XG4gIGZsZXgtc2hyaW5rOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgLnNlcnZpY2UtaWNvbiB7XG4gICAgd2lkdGg6IDYuMTg3NXJlbTtcbiAgICBoZWlnaHQ6IDYuMTg3NXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICB9XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuc2VydmljZS1pY29uIGltZyB7XG4gIGhlaWdodDogMi4xODc1cmVtO1xuICB3aWR0aDogYXV0bztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IC5zZXJ2aWNlLWljb24gaW1nIHtcbiAgICBoZWlnaHQ6IDMuMTI1cmVtO1xuICB9XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuc2VydmljZS1pY29uLnRyYWluaW5nIGltZyB7XG4gIGhlaWdodDogMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgLnNlcnZpY2UtaWNvbi50cmFpbmluZyBpbWcge1xuICAgIGhlaWdodDogMi4xODc1cmVtO1xuICB9XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCBoNSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgaDUge1xuICAgIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNDQ0YwRjc7XG4gIG9wYWNpdHk6IDA7XG4gIHotaW5kZXg6IC0xO1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWJhY2sgLnNlcnZpY2UtZGVzY3JpcHRpb24gcCB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xufVxuLnNlcnZpY2VzLWJsb2NrIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4uc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1iYWNrIHNwYW4gaSB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGxpbmVhcjtcbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWJhY2sgc3Bhbjpob3ZlciBzdHJvbmcge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2Njtcbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWJhY2sgc3Bhbjpob3ZlciBpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cbi5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQ6aG92ZXIgLmZsaXAtY2FyZC1mcm9udCB7XG4gIG9wYWNpdHk6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc2VydmljZXMtYmxvY2sgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuZmxpcC1jYXJkOmhvdmVyIC5mbGlwLWNhcmQtZnJvbnQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ibG9jayAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5mbGlwLWNhcmQ6aG92ZXIgLmZsaXAtY2FyZC1iYWNrIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHotaW5kZXg6IDE7XG4gIH1cbn1cblxuLmpvaW4tb2N3YSB7XG4gIHBhZGRpbmc6IDIuMTg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5qb2luLW9jd2Ege1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtIDAgMy4xMjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvaW4tb2N3YSAuYmxvY2staW5uZXIge1xuICAgIG1heC13aWR0aDogNzUuMzEyNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG4uam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2staW1hZ2Uge1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2staW1hZ2Uge1xuICAgIHdpZHRoOiAzN3JlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2staW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiAxNS44NzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2staW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDQwLjYyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQge1xuICAgIHdpZHRoOiAzMS4yNXJlbTtcbiAgfVxufVxuLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgaDEge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5qb2luLW9jd2EgLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IGgxOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjRTU2RDA2O1xufVxuLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtO1xufVxuLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGg0IHtcbiAgY29sb3I6ICMyNjM2NEU7XG59XG4uam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDQgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGg0IGJyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGgyIHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4uam9pbi1vY3dhIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDIgYnIge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvaW4tb2N3YSAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGgyIGJyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG4ucGFnZS1pbnRybyB7XG4gIHBhZGRpbmc6IDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWludHJvIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDAgNC4wNjI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWludHJvIC5ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4ucGFnZS1pbnRybyAuYmxvY2staW5uZXIgLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5icmVhZGNydW1icyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi44MTI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGFnZS1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG4ucGFnZS1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLWltYWdlIHtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay1pbWFnZSB7XG4gICAgd2lkdGg6IDM3cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay1pbWFnZSBpbWcge1xuICBoZWlnaHQ6IDEyLjYyNXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2staW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDMyLjEyNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IHtcbiAgICB3aWR0aDogMzEuMjVyZW07XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDMyLjEyNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbi5wYWdlLWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCBoMSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4ucGFnZS1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgaDEud2l0aC13YXZlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjRTU2RDA2O1xufVxuLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IC5ibG9jay1kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogNC4yNXJlbSAwIDIuODEyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IC5ibG9jay1kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwIDAgMi44MTI1cmVtIDA7XG4gIH1cbn1cbi5wYWdlLWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDIsIC5wYWdlLWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDYge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5wYWdlLWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDYge1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50Lm5vLWltYWdlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50Lm5vLWltYWdlIC5ibG9jay10ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtaW4taGVpZ2h0OiAwLjYyNXJlbTtcbiAgfVxufVxuXG4ubWVtYmVycy1hcmNoaXZlIHtcbiAgcGFkZGluZzogMy4xMjVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbWJlcnMtYXJjaGl2ZSB7XG4gICAgcGFkZGluZzogMy43NXJlbSAwIDAgMDtcbiAgfVxufVxuLm1lbWJlcnMtYXJjaGl2ZSAuYmxvY2stdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbWJlcnMtYXJjaGl2ZSAuYmxvY2stdGl0bGUgaDMge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXJzLWFyY2hpdmUgLm1lbWJlcnMgLm1lbWJlcnMtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgbWFyZ2luOiAwIC0wLjYyNXJlbTtcbiAgfVxufVxuLm1lbWJlcnMtYXJjaGl2ZSAubWVtYmVycyAubWVtYmVycy13cmFwcGVyIC5tZW1iZXIge1xuICBtYXJnaW46IDAgMCAxLjg3NXJlbSAwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbWJlcnMtYXJjaGl2ZSAubWVtYmVycyAubWVtYmVycy13cmFwcGVyIC5tZW1iZXIge1xuICAgIHdpZHRoOiAyNC4zMTI1cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbjogMCAwIDYuMjVyZW0gMDtcbiAgfVxufVxuLm1lbWJlcnMtYXJjaGl2ZSAubWVtYmVycyAubWVtYmVycy13cmFwcGVyIC5tZW1iZXIgLmltYWdlIHtcbiAgaGVpZ2h0OiAxMC4zNzVyZW07XG4gIHdpZHRoOiAxMC4zNzVyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm1lbWJlciAuaW1hZ2Uge1xuICAgIGhlaWdodDogMThyZW07XG4gICAgd2lkdGg6IDE4cmVtO1xuICB9XG59XG4ubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm1lbWJlciAuaW1hZ2UgaW1nIHtcbiAgaGVpZ2h0OiAxMC4zNzVyZW07XG4gIHdpZHRoOiAxMC4zNzVyZW07XG4gIG9iamVjdC1maXQ6IGNvdmVyO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBsaW5lYXI7XG4gIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXJzLWFyY2hpdmUgLm1lbWJlcnMgLm1lbWJlcnMtd3JhcHBlciAubWVtYmVyIC5pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMThyZW07XG4gICAgd2lkdGg6IDE4cmVtO1xuICB9XG59XG4ubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm1lbWJlciAuaW5mbyB7XG4gIHBhZGRpbmc6IDEuNTYyNXJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLm1lbWJlcnMtYXJjaGl2ZSAubWVtYmVycyAubWVtYmVycy13cmFwcGVyIC5tZW1iZXIgLmluZm8gaDUge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5tZW1iZXJzLWFyY2hpdmUgLm1lbWJlcnMgLm1lbWJlcnMtd3JhcHBlciAubWVtYmVyIC5pbmZvIHAge1xuICBjb2xvcjogIzE4MjAyQztcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG4ubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm1lbWJlciAuaW5mbyBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4ubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm1lbWJlciAuaW5mbyBzcGFuIGkge1xuICBjb2xvcjogI0U1NkQwNjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xufVxuLm1lbWJlcnMtYXJjaGl2ZSAubWVtYmVycyAubWVtYmVycy13cmFwcGVyIC5tZW1iZXI6aG92ZXIgLmltYWdlIGltZyB7XG4gIHRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbn1cbi5tZW1iZXJzLWFyY2hpdmUgLm1lbWJlcnMgLm1lbWJlcnMtd3JhcHBlciAubWVtYmVyOmhvdmVyIC5pbmZvIHNwYW4gc3Ryb25nIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG59XG4ubWVtYmVycy1hcmNoaXZlIC5tZW1iZXJzIC5tZW1iZXJzLXdyYXBwZXIgLm5vLXJlc3VsdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICB3aWR0aDogMTAwJTtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtZmFtaWx5OiBcIkxpYnJlIEZyYW5rbGluXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgY29sb3I6ICMzMzNDNDI7XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM1LCAyMzUsIDIzNSwgMC45NSk7XG59XG5cbi5tZW1iZXItbW9kYWwge1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICB3aWR0aDogY2FsYygxMDAlIC0gMzBweCk7XG4gIGxlZnQ6IDE1cHg7XG4gIHJpZ2h0OiAxNXB4O1xuICB0b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogI0U5RjZGODtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuMTg3NXJlbSAwLjM3NXJlbSByZ2JhKDAsIDAsIDAsIDAuMTYpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbWJlci1tb2RhbCB7XG4gICAgd2lkdGg6IDc1LjMxMjVyZW07XG4gIH1cbn1cbi5tZW1iZXItbW9kYWwgLmNsb3NlLWJ1dHRvbiB7XG4gIHdpZHRoOiAyLjg3NXJlbTtcbiAgaGVpZ2h0OiAyLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGNvbG9yOiAjMTczNzY2O1xuICB0b3A6IDEuNTYyNXJlbTtcbiAgcmlnaHQ6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbWJlci1tb2RhbCAuY2xvc2UtYnV0dG9uIHtcbiAgICB3aWR0aDogMy42ODc1cmVtO1xuICAgIGhlaWdodDogMy42ODc1cmVtO1xuICB9XG59XG4ubWVtYmVyLW1vZGFsIC5jbG9zZS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzMpO1xufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIHtcbiAgcGFkZGluZzogMy40Mzc1cmVtIDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIge1xuICAgIHBhZGRpbmc6IDMuNDM3NXJlbSA0LjM3NXJlbSAyLjVyZW0gMi4xODc1cmVtO1xuICB9XG59XG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1uYW1lIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMwMDlGQzI7XG4gIG1hcmdpbjogMCAwIDEuNTYyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItbmFtZSB7XG4gICAgbWFyZ2luOiAwIDYuMjVyZW0gMS44NzVyZW0gMDtcbiAgfVxufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItbmFtZSBoNCB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICB9XG59XG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUge1xuICBvcmRlcjogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSB7XG4gICAgb3JkZXI6IDE7XG4gICAgd2lkdGg6IDIyLjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLW9jY3VwYXRpb24sXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1lZHVjYXRpb24sXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1pbnRlcmVzdHMsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1hYm91dC1qb2Ige1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItb2NjdXBhdGlvbiBwLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItZWR1Y2F0aW9uIHAsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1pbnRlcmVzdHMgcCxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLWFib3V0LWpvYiBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci1iaW8ge1xuICBvcmRlcjogMztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci1iaW8ge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbjogMCAyLjE4NzVyZW0gMCAzLjEyNXJlbTtcbiAgICB3aWR0aDogMjIuNXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLWJpbyBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItcGhvdG8ge1xuICBvcmRlcjogMTtcbiAgbWFyZ2luOiAwIDAgMS41NjI1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItcGhvdG8ge1xuICAgIG9yZGVyOiAzO1xuICAgIHdpZHRoOiAxOC43NXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW46IC01cmVtIDAgMCAwO1xuICB9XG59XG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItcGhvdG8gaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAuNjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMS41NjI1cmVtO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci1waG90byBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgd2lkdGg6IDE4Ljc1cmVtO1xuICAgIGhlaWdodDogMTguNzVyZW07XG4gIH1cbn1cbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXIteWVhcixcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXByb3ZpbmNlLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItaGlnaC1zY2hvb2wsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci11bml2ZXJzaXR5LFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItcHJvbm91bixcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXBvc2l0aW9uLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItZW1haWwsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1waG9uZSB7XG4gIGNvbG9yOiAjMzMzQzQyO1xuICBmb250LWZhbWlseTogXCJMaWJyZSBGcmFua2xpblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci15ZWFyIGEsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1wcm92aW5jZSBhLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItaGlnaC1zY2hvb2wgYSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXVuaXZlcnNpdHkgYSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXByb25vdW4gYSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXBvc2l0aW9uIGEsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1lbWFpbCBhLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItcGhvbmUgYSB7XG4gIGNvbG9yOiAjMzMzQzQyO1xufVxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXIteWVhciBhOmhvdmVyLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItcHJvdmluY2UgYTpob3Zlcixcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLWhpZ2gtc2Nob29sIGE6aG92ZXIsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci11bml2ZXJzaXR5IGE6aG92ZXIsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1wcm9ub3VuIGE6aG92ZXIsXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1wb3NpdGlvbiBhOmhvdmVyLFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItZW1haWwgYTpob3Zlcixcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXBob25lIGE6aG92ZXIge1xuICBjb2xvcjogIzAwQjZBMDtcbn1cbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXllYXI6ZW1wdHksXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1wcm92aW5jZTplbXB0eSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLWhpZ2gtc2Nob29sOmVtcHR5LFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItdW5pdmVyc2l0eTplbXB0eSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLXByb25vdW46ZW1wdHksXG4ubWVtYmVyLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1kZXRhaWxzIC5tZW1iZXItdGl0bGUgLm1lbWJlci1wb3NpdGlvbjplbXB0eSxcbi5tZW1iZXItbW9kYWwgLm1lbWJlci1tb2RhbC1pbm5lciAubWVtYmVyLWRldGFpbHMgLm1lbWJlci10aXRsZSAubWVtYmVyLWVtYWlsOmVtcHR5LFxuLm1lbWJlci1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLXRpdGxlIC5tZW1iZXItcGhvbmU6ZW1wdHkge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm1lbWJlci1tb2RhbCNsZWFkZXJzaGlwLW1vZGFsIC5tZW1iZXItbW9kYWwtaW5uZXIgLm1lbWJlci1uYW1lIC5tZW1iZXItb2NjdXBhdGlvbiBwIHtcbiAgZm9udC1mYW1pbHk6IFwiTGlicmUgRnJhbmtsaW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5tZW1iZXItbW9kYWwjbGVhZGVyc2hpcC1tb2RhbCAubWVtYmVyLW1vZGFsLWlubmVyIC5tZW1iZXItZGV0YWlscyAubWVtYmVyLWJpbyB7XG4gICAgd2lkdGg6IDQ2Ljg3NXJlbTtcbiAgICBtYXJnaW46IDAgMi4xODc1cmVtIDAgMDtcbiAgfVxufVxuXG4uaW5mby1ib3hlcyB7XG4gIHBhZGRpbmc6IDVyZW0gMS41NjI1cmVtIDIuNXJlbSAxLjU2MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaW5mby1ib3hlcyB7XG4gICAgcGFkZGluZzogNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuaW5mby1ib3hlcyAuaW5mby1ib3hlcy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uaW5mby1ib3hlcyAuaW5mby1ib3hlcy13cmFwcGVyIC5pbmZvLWJveCB7XG4gIHBhZGRpbmc6IDIuNXJlbSAxLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMi4xODc1cmVtO1xuICBiYWNrZ3JvdW5kOiAjMTczNzY2O1xuICBtYXJnaW46IDAgMCAyLjVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5pbmZvLWJveGVzIC5pbmZvLWJveGVzLXdyYXBwZXIgLmluZm8tYm94IHtcbiAgICB3aWR0aDogMzYuNjI1cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDMuNDM3NXJlbTtcbiAgICBwYWRkaW5nOiA0LjA2MjVyZW0gMy43NXJlbTtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5pbmZvLWJveGVzIC5pbmZvLWJveGVzLXdyYXBwZXIgLmluZm8tYm94IC5pbmZvLWJveC1pbm5lciBoMyB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmluZm8tYm94ZXMgLmluZm8tYm94ZXMtd3JhcHBlciAuaW5mby1ib3ggLmluZm8tYm94LWlubmVyIC5kZXNjcmlwdGlvbiB7XG4gIG1hcmdpbjogMS4yNXJlbSAwIDAgMDtcbn1cbi5pbmZvLWJveGVzIC5pbmZvLWJveGVzLXdyYXBwZXIgLmluZm8tYm94IC5pbmZvLWJveC1pbm5lciAuZGVzY3JpcHRpb24gcCB7XG4gIGNvbG9yOiAjZmZmO1xufVxuLmluZm8tYm94ZXMgLmluZm8tYm94ZXMtd3JhcHBlciAuaW5mby1ib3ggLmluZm8tYm94LWlubmVyIC5kZXNjcmlwdGlvbiBwIGEge1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmZmY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5pbmZvLWJveGVzIC5pbmZvLWJveGVzLXdyYXBwZXIgLmluZm8tYm94IC5pbmZvLWJveC1pbm5lciAuZGVzY3JpcHRpb24gcCBhOmhvdmVyIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmluZm8tYm94ZXMgLmluZm8tYm94ZXMtd3JhcHBlciAuaW5mby1ib3ggLmJ1dHRvbiB7XG4gIG1hcmdpbjogMS44NzVyZW0gMCAwIDA7XG59XG5cbi50d2l0dGVyLWJsb2NrIHtcbiAgcGFkZGluZzogMCAxLjU2MjVyZW0gMy4xMjVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnR3aXR0ZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDAgMCAzLjc1cmVtIDA7XG4gIH1cbn1cbi50d2l0dGVyLWJsb2NrIC5ibG9jay13cmFwcGVyIC50d2l0dGVyLXdyYXBwZXIge1xuICBtYXJnaW46IDAgMCAzLjEyNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2l0dGVyLWljb24ge1xuICBtYXJnaW46IDMuMTI1cmVtIDAgMS44NzVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50d2l0dGVyLWJsb2NrIC5ibG9jay13cmFwcGVyIC50d2l0dGVyLXdyYXBwZXIgLnR3aXR0ZXItaWNvbiB7XG4gICAgbWFyZ2luOiAwIDAgMS44NzVyZW0gMDtcbiAgfVxufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdpdHRlci1pY29uIGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2VldHMgLnR3ZWV0IC50d2VldC1uYW1lIHtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi50d2l0dGVyLWJsb2NrIC5ibG9jay13cmFwcGVyIC50d2l0dGVyLXdyYXBwZXIgLnR3ZWV0cyAudHdlZXQgLnR3ZWV0LW5hbWUgc3BhbiB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDJyZW07XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2VldHMgLnR3ZWV0IC50d2VldC1uYW1lIHNwYW4ubmFtZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2VldHMgLnR3ZWV0IC50d2VldC10ZXh0IHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAycmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbi50d2l0dGVyLWJsb2NrIC5ibG9jay13cmFwcGVyIC50d2l0dGVyLXdyYXBwZXIgLnR3ZWV0cyAudHdlZXQgLnR3ZWV0LXRleHQgYSB7XG4gIGNvbG9yOiAjMTgyMDJDO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC50d2VldCAudHdlZXQtdGV4dCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2VldHMgLnNsaWNrLWRvdHMge1xuICB3aWR0aDogYXV0bztcbiAgYm90dG9tOiAtMi41cmVtO1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIHtcbiAgaGVpZ2h0OiAxcmVtO1xuICB3aWR0aDogMXJlbTtcbn1cbi50d2l0dGVyLWJsb2NrIC5ibG9jay13cmFwcGVyIC50d2l0dGVyLXdyYXBwZXIgLnR3ZWV0cyAuc2xpY2stZG90cyBsaTpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIGJ1dHRvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDFyZW07XG4gIHdpZHRoOiAxcmVtO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjMTczNzY2O1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpob3ZlciwgLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1cyB7XG4gIG91dGxpbmU6IG5vbmU7XG59XG4udHdpdHRlci1ibG9jayAuYmxvY2std3JhcHBlciAudHdpdHRlci13cmFwcGVyIC50d2VldHMgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyOmJlZm9yZSwgLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpmb2N1czpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLnR3aXR0ZXItYmxvY2sgLmJsb2NrLXdyYXBwZXIgLnR3aXR0ZXItd3JhcHBlciAudHdlZXRzIC5zbGljay1kb3RzIGxpLnNsaWNrLWFjdGl2ZSBidXR0b24ge1xuICBiYWNrZ3JvdW5kOiAjMTczNzY2O1xuICBvcGFjaXR5OiAxO1xufVxuXG4uam9iLW9wcG9ydHVuaXRpZXMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIyMiwgMjQxLCAyNDUsIDAuNTIpO1xuICBwYWRkaW5nOiAyLjVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvYi1vcHBvcnR1bml0aWVzIHtcbiAgICBwYWRkaW5nOiA1cmVtIDAgMy4xMjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvYi1vcHBvcnR1bml0aWVzIC5ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5ibG9jay10aXRsZSBoMyB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtO1xuICB9XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIC5jYXJlZXItaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDAuNzVweCBzb2xpZCAjMTczNzY2O1xuICBwYWRkaW5nOiAxLjg3NXJlbSAwO1xuICBjb2xvcjogIzAwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG9wYWNpdHk6IDE7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXRvcDogMC43NXB4IHNvbGlkICMxNzM3NjY7XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIC5jYXJlZXItaXRlbSBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtIHNwYW4ge1xuICAgIHdpZHRoOiAxMi41cmVtO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIC5jYXJlZXItaXRlbSBzcGFuLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmpvYi1vcHBvcnR1bml0aWVzIC5ibG9jay1pbm5lciAub3Bwb3J0dW5pdGllcyAuY2FyZWVyLWl0ZW0gc3Bhbi50aXRsZSB7XG4gICAgd2lkdGg6IDM3LjVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxufVxuLmpvYi1vcHBvcnR1bml0aWVzIC5ibG9jay1pbm5lciAub3Bwb3J0dW5pdGllcyAuY2FyZWVyLWl0ZW0gc3Bhbi52aWV3LW1vcmUge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtIHNwYW4udmlldy1tb3JlIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmpvYi1vcHBvcnR1bml0aWVzIC5ibG9jay1pbm5lciAub3Bwb3J0dW5pdGllcyAuY2FyZWVyLWl0ZW0gc3Bhbi52aWV3LW1vcmUgLmN0YS13aXRoLWFycm93IHtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIC5jYXJlZXItaXRlbSBzcGFuLnZpZXctbW9yZSAuY3RhLXdpdGgtYXJyb3cgc3Ryb25nIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG4uam9iLW9wcG9ydHVuaXRpZXMgLmJsb2NrLWlubmVyIC5vcHBvcnR1bml0aWVzIC5jYXJlZXItaXRlbSBzcGFuLnZpZXctbW9yZSAuY3RhLXdpdGgtYXJyb3cgaSB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTAuMTI1cmVtO1xuICBsZWZ0OiAwLjMxMjVyZW07XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGxpbmVhcjtcbn1cbi5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtOmhvdmVyIHNwYW4udGl0bGUge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtOmhvdmVyIHNwYW4udmlldy1tb3JlIHN0cm9uZyB7XG4gIGJvcmRlci1jb2xvcjogIzE3Mzc2Njtcbn1cbi5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLm9wcG9ydHVuaXRpZXMgLmNhcmVlci1pdGVtOmhvdmVyIHNwYW4udmlldy1tb3JlIGkge1xuICBsZWZ0OiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5qb2Itb3Bwb3J0dW5pdGllcyAuYmxvY2staW5uZXIgLmxvYWQtbW9yZS1vcHBvcnR1bml0aWVzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG59XG5cbi5jb250YWN0LWJsb2NrIHtcbiAgcGFkZGluZzogNC4zNzVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRhY3QtYmxvY2sge1xuICAgIHBhZGRpbmc6IDVyZW0gMDtcbiAgfVxufVxuLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIge1xuICBiYWNrZ3JvdW5kOiAjMTczNzY2O1xuICBib3JkZXItcmFkaXVzOiAxLjU2MjVyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYm9yZGVyLXJhZGl1czogMi4xODc1cmVtO1xuICB9XG59XG4uY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyB7XG4gIG9yZGVyOiAyO1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS44NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyB7XG4gICAgb3JkZXI6IDE7XG4gICAgcGFkZGluZzogMy43NXJlbSAzLjEyNXJlbTtcbiAgfVxufVxuLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgaDMge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgLmNvbnRhY3QtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgLmNvbnRhY3QtY29udGVudCAuYmxvY2stY29udGVudCB7XG4gICAgd2lkdGg6IDIwLjkzNzVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTtcbiAgfVxufVxuLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgLmNvbnRhY3QtY29udGVudCAuYmxvY2stY29udGVudCBwIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyAuY29udGFjdC1jb250ZW50IC5ibG9jay1jb250ZW50IHAgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgI2ZmZjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgLmNvbnRhY3QtY29udGVudCAuYmxvY2stY29udGVudCBwIGE6aG92ZXIge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4uY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyAuY29udGFjdC1jb250ZW50IC5ibG9jay1jb250ZW50IC5idXR0b24ge1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jb250YWN0LWJsb2NrIC5ibG9jay13cmFwcGVyIC5ibG9jay1kZXRhaWxzIC5jb250YWN0LWNvbnRlbnQgLmNvbnRhY3QtaW5mb3JtYXRpb24ge1xuICAgIHdpZHRoOiAyMy40Mzc1cmVtO1xuICB9XG59XG4uY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyAuY29udGFjdC1jb250ZW50IC5jb250YWN0LWluZm9ybWF0aW9uIHAge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jb250YWN0LWJsb2NrIC5ibG9jay13cmFwcGVyIC5ibG9jay1kZXRhaWxzIC5jb250YWN0LWNvbnRlbnQgLmNvbnRhY3QtaW5mb3JtYXRpb24gcCBhIHtcbiAgY29sb3I6ICNmZmY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjZmZmO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4uY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuYmxvY2stZGV0YWlscyAuY29udGFjdC1jb250ZW50IC5jb250YWN0LWluZm9ybWF0aW9uIHAgYTpob3ZlciB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5jb250YWN0LWJsb2NrIC5ibG9jay13cmFwcGVyIC5ibG9jay1kZXRhaWxzIC5jb250YWN0LWNvbnRlbnQgLmNvbnRhY3QtaW5mb3JtYXRpb24gLmJ1dHRvbiB7XG4gIG1hcmdpbi10b3A6IDEuODc1cmVtO1xufVxuLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmltYWdlIHtcbiAgb3JkZXI6IDE7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY29udGFjdC1ibG9jayAuYmxvY2std3JhcHBlciAuaW1hZ2Uge1xuICAgIG9yZGVyOiAzO1xuICAgIHdpZHRoOiAyMy44NzVyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gIH1cbn1cbi5jb250YWN0LWJsb2NrIC5ibG9jay13cmFwcGVyIC5pbWFnZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxNC4wNjI1cmVtO1xuICBvYmplY3QtcG9zaXRpb246IHRvcDtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEuNTYyNXJlbSAxLjU2MjVyZW0gMCAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNvbnRhY3QtYmxvY2sgLmJsb2NrLXdyYXBwZXIgLmltYWdlIGltZyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMS41NjI1cmVtIDEuNTYyNXJlbSAwO1xuICB9XG59XG5cbi52YWx1ZXMtYmxvY2sge1xuICBwYWRkaW5nOiAyLjVyZW0gMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnZhbHVlcy1ibG9jayB7XG4gICAgcGFkZGluZzogNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudmFsdWVzLWJsb2NrIC5ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudmFsdWVzLWJsb2NrIC5ibG9jay1pbm5lciAuaXRlbXMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMC42MjVyZW07XG4gIH1cbn1cbi52YWx1ZXMtYmxvY2sgLmJsb2NrLWlubmVyIC5pdGVtcyAuaXRlbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIG1hcmdpbjogMCAwIDIuNXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnZhbHVlcy1ibG9jayAuYmxvY2staW5uZXIgLml0ZW1zIC5pdGVtIHtcbiAgICB3aWR0aDogMjQuMTg3NXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW46IDAgMC42MjVyZW0gMy40Mzc1cmVtIDAuNjI1cmVtO1xuICB9XG59XG4udmFsdWVzLWJsb2NrIC5ibG9jay1pbm5lciAuaXRlbXMgLml0ZW0gLmltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xufVxuLnZhbHVlcy1ibG9jayAuYmxvY2staW5uZXIgLml0ZW1zIC5pdGVtIC5pbWFnZSBpbWcge1xuICB3aWR0aDogOS4zMTI1cmVtO1xuICBoZWlnaHQ6IDkuMzEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cbi52YWx1ZXMtYmxvY2sgLmJsb2NrLWlubmVyIC5pdGVtcyAuaXRlbSAudGl0bGUgaDQge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgbWFyZ2luLWJvdHRvbTogMS41NjI1cmVtO1xufVxuLnZhbHVlcy1ibG9jayAuYmxvY2staW5uZXIgLml0ZW1zIC5pdGVtIC5kZXNjcmlwdGlvbiB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbi52YWx1ZXMtYmxvY2sgLmJsb2NrLWlubmVyIC5pdGVtcyAuaXRlbSAuZGVzY3JpcHRpb24gcCB7XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuXG4ucGFnZS1iYW5uZXIge1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGFnZS1iYW5uZXIge1xuICAgIHBhZGRpbmc6IDAgMCAzLjc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIge1xuICAgIG1heC13aWR0aDogNzUuMzEyNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBib3JkZXItcmFkaXVzOiAxLjg3NXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1pbi1oZWlnaHQ6IDMzLjQzNzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGluc2V0OiAwO1xuICAgIGJhY2tncm91bmQ6IHJnYigyNCwgMzIsIDQ0KTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoOTBkZWcsIHJnYmEoMjQsIDMyLCA0NCwgMC44KSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICB6LWluZGV4OiAzO1xuICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtYmFubmVyIC5ibG9jay1pbm5lciAuYmxvY2staW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAyO1xuICB9XG59XG4ucGFnZS1iYW5uZXIgLmJsb2NrLWlubmVyIC5ibG9jay1pbWFnZSBpbWcge1xuICBoZWlnaHQ6IDE4LjY1NjI1cmVtO1xuICB3aWR0aDogMTAwJTtcbiAgb2JqZWN0LWZpdDogY292ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtYmFubmVyIC5ibG9jay1pbm5lciAuYmxvY2staW1hZ2UgaW1nIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gIH1cbn1cbi5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA0LjA2MjVyZW07XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIHotaW5kZXg6IDQ7XG4gIH1cbn1cbi5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQge1xuICB3aWR0aDogMjYuODc1cmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQge1xuICAgIG1pbi1oZWlnaHQ6IDMyLjEyNXJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJyZWFkY3J1bWJzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICB9XG59XG4ucGFnZS1iYW5uZXIgLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IGgxIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIG1hcmdpbjogMy4xMjVyZW0gMCAwIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucGFnZS1iYW5uZXIgLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IGgxIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cbi5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgaDEud2l0aC13YXZlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAwLjY4NzVyZW07XG4gIGNvbG9yOiAjRTU2RDA2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnBhZ2UtYmFubmVyIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbjogMCAwIDIuODEyNXJlbSAwO1xuICB9XG59XG4ucGFnZS1iYW5uZXIgLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IC5ibG9jay1kZXNjcmlwdGlvbiBoMiwgLnBhZ2UtYmFubmVyIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCAuYmxvY2stZGVzY3JpcHRpb24gaDYge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGgyLCAucGFnZS1iYW5uZXIgLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay10ZXh0IC5ibG9jay1kZXNjcmlwdGlvbiBoNiB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cbn1cbi5wYWdlLWJhbm5lciAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgLmJsb2NrLWRlc2NyaXB0aW9uIGg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNXJlbTtcbn1cbi5wYWdlLWJhbm5lciAuYnJlYWRjcnVtYnMtd3JhcHBlciB7XG4gIG1heC13aWR0aDogNzUuMzEyNXJlbTtcbiAgbWFyZ2luOiAyLjgxMjVyZW0gYXV0byAwIGF1dG87XG59XG5cbi5sYW5kaW5nLWNvbnRlbnQge1xuICBwYWRkaW5nOiAxLjg3NXJlbSAxLjU2MjVyZW0gMi41cmVtIDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIge1xuICAgIG1heC13aWR0aDogNzUuMzEyNXJlbTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW46IDAgLTAuNzVyZW07XG4gIH1cbn1cbi5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIHdpZHRoOiAxMDAlO1xuICBmbGV4LXNocmluazogMDtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIHtcbiAgICB3aWR0aDogMjMuODc1cmVtO1xuICAgIGhlaWdodDogMjcuMTI1cmVtO1xuICAgIG1hcmdpbjogMC44MTI1cmVtIDAuODEyNXJlbTtcbiAgfVxufVxuLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuOHM7XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQsIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1iYWNrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMS4yNXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCwgLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWJhY2sge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjA2MjVyZW07XG4gIH1cbn1cbi5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCB7XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbn1cbi5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuaXRlbS1pbWFnZSBpbWcge1xuICBoZWlnaHQ6IDkuMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuaXRlbS1pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMTUuNXJlbTtcbiAgfVxufVxuLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IC5pdGVtLXRpdGxlIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICBwYWRkaW5nOiAxLjI1cmVtIDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1mcm9udCAuaXRlbS10aXRsZSB7XG4gICAgaGVpZ2h0OiAxMS41NjI1cmVtO1xuICAgIHBhZGRpbmc6IDAgMS41NjI1cmVtO1xuICB9XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgLml0ZW0tdGl0bGUgaDQge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjY4NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgLml0ZW0tdGl0bGUgaDQge1xuICAgIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBmb250LXNpemU6IDEuODEyNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMi4zMTI1cmVtO1xuICAgIG1heC13aWR0aDogMTcuNXJlbTtcbiAgfVxufVxuLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IC5pdGVtLXRpdGxlIHNwYW4ge1xuICBkaXNwbGF5OiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWZyb250IC5pdGVtLXRpdGxlIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtZnJvbnQgLml0ZW0tdGl0bGUgc3BhbiBpIHtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIHBhZGRpbmc6IDMuMTI1cmVtIDEuODc1cmVtO1xuICBkaXNwbGF5OiBub25lO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiAtMTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkIC5mbGlwLWNhcmQtaW5uZXIgLmZsaXAtY2FyZC1iYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayAuaXRlbS10aXRsZSBoNCB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXgtd2lkdGg6IDE3LjVyZW07XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayAuaXRlbS1kZXNjcmlwdGlvbiBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIG1hcmdpbi10b3A6IGF1dG87XG59XG4ubGFuZGluZy1jb250ZW50IC5ibG9jay1pbm5lciAuaXRlbXMgLmZsaXAtY2FyZCAuZmxpcC1jYXJkLWlubmVyIC5mbGlwLWNhcmQtYmFjayBzcGFuIGkge1xuICBjb2xvcjogI0U1NkQwNjtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBtYXJnaW4tbGVmdDogMC4zMTI1cmVtO1xufVxuLmxhbmRpbmctY29udGVudCAuYmxvY2staW5uZXIgLml0ZW1zIC5mbGlwLWNhcmQgLmZsaXAtY2FyZC1pbm5lciAuZmxpcC1jYXJkLWJhY2sgc3Bhbjpob3ZlciBzdHJvbmcge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2Njtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkOmhvdmVyIC5mbGlwLWNhcmQtZnJvbnQge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sYW5kaW5nLWNvbnRlbnQgLmJsb2NrLWlubmVyIC5pdGVtcyAuZmxpcC1jYXJkOmhvdmVyIC5mbGlwLWNhcmQtYmFjayB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB6LWluZGV4OiAxO1xuICB9XG59XG5cbi50ZXh0LWludHJvIHtcbiAgcGFkZGluZzogMi41cmVtIDIuMTg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50ZXh0LWludHJvIHtcbiAgICBwYWRkaW5nOiAxLjI1cmVtIDAgNC4wNjI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50ZXh0LWludHJvIC5ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4udGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJyZWFkY3J1bWJzIHtcbiAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLWRlc2NyaXB0aW9uIHtcbiAgICB3aWR0aDogNDMuMTI1cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICB9XG59XG4udGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLWRlc2NyaXB0aW9uIGEge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi50ZXh0LWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stZGVzY3JpcHRpb24gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnRleHQtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay1kZXNjcmlwdGlvbiBoMiwgLnRleHQtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay1kZXNjcmlwdGlvbiBoNiB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLnRleHQtaW50cm8gLmJsb2NrLWlubmVyIC5ibG9jay1pbnRyby1jb250ZW50IC5ibG9jay1kZXNjcmlwdGlvbiBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4udGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLWRlc2NyaXB0aW9uIGg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC50ZXh0LWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCB7XG4gICAgd2lkdGg6IDMxLjI1cmVtO1xuICB9XG59XG4udGV4dC1pbnRybyAuYmxvY2staW5uZXIgLmJsb2NrLWludHJvLWNvbnRlbnQgLmJsb2NrLXRleHQgaDEge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi50ZXh0LWludHJvIC5ibG9jay1pbm5lciAuYmxvY2staW50cm8tY29udGVudCAuYmxvY2stdGV4dCBoMS53aXRoLXdhdmU6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIsIHNhbnMtc2VyaWY7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDAuNjg3NXJlbTtcbiAgY29sb3I6ICNFNTZEMDY7XG59XG5cbi5vcGVuLWRhdGEge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS44NzVyZW07XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vcGVuLWRhdGEge1xuICAgIHBhZGRpbmc6IDMuMTI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDc1LjMxMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciB7XG4gIHBhZGRpbmctYm90dG9tOiAzLjc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMge1xuICBmbGV4LXNocmluazogMDtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBtYXJnaW46IDAgMCAxLjg3NXJlbSAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzIHtcbiAgICB3aWR0aDogMTcuMTg3NXJlbTtcbiAgICBtYXJnaW46IDAgMS44NzVyZW0gMCAwO1xuICB9XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMgLnRhYnMtdGl0bGUge1xuICBoZWlnaHQ6IDRyZW07XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQ6ICNDQ0YwRjc7XG4gIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjMxMjVyZW07XG4gIHBhZGRpbmc6IDAgMS4yNXJlbTtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicyAudGFicy10aXRsZSBhIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicyAudGFicy10aXRsZS5pcy1hY3RpdmUsIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicyAudGFicy10aXRsZTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNCMkU0RUQ7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMgLnRhYnMtdGl0bGUuaXMtYWN0aXZlIGEsIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicyAudGFicy10aXRsZTpob3ZlciBhIHtcbiAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xuICBiYWNrZ3JvdW5kOiBub25lO1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA2LjI1cmVtO1xuICB9XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCB7XG4gIHBhZGRpbmc6IDA7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnIGg0IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyA+IGg0IHtcbiAgbWFyZ2luOiAwIDAgMi41cmVtIDA7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyA+IGgzLCAub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyBoNCwgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgaDUsIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnIGg2IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyA+IHAge1xuICBjb2xvcjogIzE4MjAyQztcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnID4gcCBhIHtcbiAgY29sb3I6ICMxODIwMkM7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMTczNzY2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyA+IHAgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnID4gdWwgPiBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnID4gdWwgPiBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXj1wiO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCA+IGxpID4gYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCA+IGxpID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDAuOTM3NXJlbSAwIDAgMS4yNXJlbTtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC53eXNpd3lnID4gdWwgPiBsaSA+IHVsIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjkzNzVyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAud3lzaXd5ZyA+IHVsID4gbGkgPiB1bCBsaTpiZWZvcmUge1xuICBjb250ZW50OiBcIuKXi1wiO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICBmb250LXNpemU6IDAuODc1cmVtO1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCA+IGxpID4gdWwgbGkgYSB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2NjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLnd5c2l3eWcgPiB1bCA+IGxpID4gdWwgbGkgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnRhYnMtY29udGFpbmVyIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwgLmZpbHRlcnMtZm9ybSAuZmlsdGVycy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAuZmlsdGVycy1mb3JtIC5maWx0ZXJzLXdyYXBwZXIgLmZpbHRlciB7XG4gIG1hcmdpbjogMCAwIDEuODc1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAuZmlsdGVycy1mb3JtIC5maWx0ZXJzLXdyYXBwZXIgLmZpbHRlciB7XG4gICAgd2lkdGg6IDE3LjVyZW07XG4gICAgbWFyZ2luOiAwIDIuODEyNXJlbSAzLjEyNXJlbSAwO1xuICB9XG59XG4ub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAudGFicy1jb250YWluZXIgLnRhYnMtY29udGVudCAudGFicy1wYW5lbCAuZmlsdGVycy1mb3JtIC5maWx0ZXJzLXdyYXBwZXIgLmZpbHRlciBsYWJlbCB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC50YWJzLWNvbnRhaW5lciAudGFicy1jb250ZW50IC50YWJzLXBhbmVsIC5maWx0ZXJzLWZvcm0gLnN1Ym1pdC1mb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gIH1cbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC5zZWFyY2gtcmVzdWx0cyB7XG4gIHBhZGRpbmctdG9wOiAzLjc1cmVtO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgIzE3Mzc2NjtcbiAgZGlzcGxheTogZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC5zZWFyY2gtcmVzdWx0cyAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICB3aWR0aDogMTAwJTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC5zZWFyY2gtcmVzdWx0cyAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgIHdpZHRoOiA1Ni4yNXJlbTtcbiAgfVxufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnNlYXJjaC1yZXN1bHRzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC5zZWFyY2gtcmVzdWx0cyAuYWNjb3JkaW9uLXdyYXBwZXIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICBib3JkZXItcmFkaXVzOiAwLjY4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnNlYXJjaC1yZXN1bHRzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA1cmVtIDAuOTM3NXJlbSAxLjY4NzVyZW0gMC45Mzc1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcuOTk4NzVlbSkge1xuICAub3Blbi1kYXRhIC5vcGVuLWRhdGEtd3JhcHBlciAuc2VhcmNoLXJlc3VsdHMgLmFjY29yZGlvbi13cmFwcGVyIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGUgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5vcGVuLWRhdGEgLm9wZW4tZGF0YS13cmFwcGVyIC5zZWFyY2gtcmVzdWx0cyAuYWNjb3JkaW9uLXdyYXBwZXIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi10aXRsZTpob3ZlciwgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnNlYXJjaC1yZXN1bHRzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ3Ljk5ODc1ZW0pIHtcbiAgLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnNlYXJjaC1yZXN1bHRzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDAuOTM3NXJlbTtcbiAgfVxufVxuLm9wZW4tZGF0YSAub3Blbi1kYXRhLXdyYXBwZXIgLnNlYXJjaC1yZXN1bHRzLm5vLXNlYXJjaCAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm9wZW4tZGF0YS5sb2FkaW5nOmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZWZlZmU7XG4gIG9wYWNpdHk6IDAuNztcbiAgY29udGVudDogXCJcIjtcbiAgei1pbmRleDogNTtcbn1cbi5vcGVuLWRhdGEubG9hZGluZzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiIFwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDRyZW07XG4gIGhlaWdodDogNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBib3JkZXI6IDZweCBzb2xpZCAjMTczNzY2O1xuICBib3JkZXItY29sb3I6ICMxNzM3NjYgdHJhbnNwYXJlbnQgIzE3Mzc2NiB0cmFuc3BhcmVudDtcbiAgYW5pbWF0aW9uOiBsZHMtZHVhbC1yaW5nIDEuMnMgbGluZWFyIGluZmluaXRlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogNTAlO1xuICBsZWZ0OiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiAxMDtcbn1cbi5vcGVuLWRhdGEgLm5vLXJlc3VsdHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm9wZW4tZGF0YS5uby1yZXN1bHRzIC5uby1yZXN1bHRzIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbiNvcGVuLWRhdGEtbW9kYWwge1xuICBib3JkZXItcmFkaXVzOiAxLjI1cmVtO1xuICBsZWZ0OiAyMHB4O1xuICByaWdodDogMjBweDtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICB0b3A6IDVyZW0gIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogI0ZGRkZGRjtcbiAgYm9yZGVyOiBub25lO1xuICBib3gtc2hhZG93OiAwIDAuMTg3NXJlbSAwLjM3NXJlbSByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBwYWRkaW5nOiA0LjM3NXJlbSAxLjg3NXJlbSAxLjg3NXJlbSAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICNvcGVuLWRhdGEtbW9kYWwge1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtIDMuNDM3NXJlbTtcbiAgICB3aWR0aDogNTkuMzEyNXJlbTtcbiAgfVxufVxuI29wZW4tZGF0YS1tb2RhbCAubW9kYWwtdGl0bGUge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMDA5RkMyO1xuICBwYWRkaW5nLWJvdHRvbTogMS4yNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuI29wZW4tZGF0YS1tb2RhbCAubW9kYWwtdGl0bGUgaDQge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgbWFyZ2luOiAwO1xufVxuI29wZW4tZGF0YS1tb2RhbCAubW9kYWwtdGl0bGUgLmNsb3NlLWJ1dHRvbiB7XG4gIHdpZHRoOiAyLjg3NXJlbTtcbiAgaGVpZ2h0OiAyLjg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gIGNvbG9yOiAjMTczNzY2O1xuICB0b3A6IDAuOTM3NXJlbTtcbiAgcmlnaHQ6IDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICNvcGVuLWRhdGEtbW9kYWwgLm1vZGFsLXRpdGxlIC5jbG9zZS1idXR0b24ge1xuICAgIHdpZHRoOiAzLjY4NzVyZW07XG4gICAgaGVpZ2h0OiAzLjY4NzVyZW07XG4gICAgdG9wOiAyLjE4NzVyZW07XG4gICAgcmlnaHQ6IDMuNDM3NXJlbTtcbiAgfVxufVxuI29wZW4tZGF0YS1tb2RhbCAubW9kYWwtdGl0bGUgLmNsb3NlLWJ1dHRvbjpob3ZlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4zMyk7XG59XG4jb3Blbi1kYXRhLW1vZGFsIC5tb2RhbC10YWJsZSBoNiB7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG4jb3Blbi1kYXRhLW1vZGFsIC5tb2RhbC10YWJsZSBmb3JtIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuI29wZW4tZGF0YS1tb2RhbCAubW9kYWwtdGFibGUgYnV0dG9uLmJ1dHRvbiB7XG4gIGhlaWdodDogMS44NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjg3NXJlbTtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nOiAwIDFyZW07XG59XG4jb3Blbi1kYXRhLW1vZGFsIC5tb2RhbC10YWJsZSB0YWJsZSB0Ym9keSB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxNzM3NjY7XG59XG4jb3Blbi1kYXRhLW1vZGFsIC5tb2RhbC10YWJsZSB0YWJsZSB0Ym9keSB0ciB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4jb3Blbi1kYXRhLW1vZGFsIC5tb2RhbC10YWJsZSB0YWJsZSB0Ym9keSB0ciB0ZCB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMTczNzY2O1xuICBwYWRkaW5nOiAwLjc1cmVtIDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMC45Mzc1cmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cblxuQGtleWZyYW1lcyBsZHMtZHVhbC1yaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sge1xuICBwYWRkaW5nOiAyLjVyZW0gMi4xODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayB7XG4gICAgcGFkZGluZzogMCAwIDMuNzVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHdpZHRoOiA3Ni4yNXJlbTtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHVibGljYXRpb25zLWJsb2NrIC5ibG9jay1pbm5lciAucHVibGljYXRpb25zLXdyYXBwZXIgLnRheG9ub215LWZpbHRlcnMge1xuICAgIHdpZHRoOiAxNy4xODc1cmVtO1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG1hcmdpbjogMCAxLjg3NXJlbSAwIDA7XG4gIH1cbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAudGFicyB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAudGFicyBsaSB7XG4gIGhlaWdodDogNHJlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI0NDRjBGNztcbiAgYm9yZGVyLXJhZGl1czogMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDAuMzEyNXJlbTtcbiAgcGFkZGluZzogMCAxLjI1cmVtO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC50YWJzIGxpIGEge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjI1cmVtO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyMTI1cmVtO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC50YWJzIGxpLmlzLWFjdGl2ZSwgLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC50YWJzIGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI0IyRTRFRDtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAudGFicyBsaS5pcy1hY3RpdmUgYSwgLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC50YWJzIGxpOmhvdmVyIGEge1xuICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5ibG9jay1pbm5lciAucHVibGljYXRpb25zLXdyYXBwZXIgLnRheG9ub215LWZpbHRlcnMgLmFjY29yZGlvbiB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5ibG9jay1pbm5lciAucHVibGljYXRpb25zLXdyYXBwZXIgLnRheG9ub215LWZpbHRlcnMgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzkyREJFODtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgYm9yZGVyOiBub25lO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMS44NzVyZW0gMS4yNXJlbSAwO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6aG92ZXIsIC5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICBmb250LWZhbWlseTogXCJpY29tb29uXCIsIHNhbnMtc2VyaWY7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBmb250LXdlaWdodDogNDAwO1xuICB0b3A6IDEuNTYyNXJlbTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAycmVtO1xuICBoZWlnaHQ6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC50YXhvbm9teS1maWx0ZXJzIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCB7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgcGFkZGluZzogMCAwIDEuODc1cmVtIDA7XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5ibG9jay1pbm5lciAucHVibGljYXRpb25zLXdyYXBwZXIgLnRheG9ub215LWZpbHRlcnMgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAudGF4b25vbXktZmlsdGVycyAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbS5pcy1hY3RpdmUgLmFjY29yZGlvbi10aXRsZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5ibG9jay1pbm5lciAucHVibGljYXRpb25zLXdyYXBwZXIgLnRheG9ub215LWZpbHRlcnMgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0uaXMtYWN0aXZlIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbiAgZm9udC1zaXplOiAwLjA5Mzc1cmVtO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC5wdWJsaWNhdGlvbnMgLnRhYnMtY29udGVudCB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLmJsb2NrLWlubmVyIC5wdWJsaWNhdGlvbnMtd3JhcHBlciAucHVibGljYXRpb25zIC50YWJzLWNvbnRlbnQgLnRhYnMtcGFuZWwge1xuICBwYWRkaW5nOiAwO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAuYmxvY2staW5uZXIgLnB1YmxpY2F0aW9ucy13cmFwcGVyIC5wdWJsaWNhdGlvbnMgLmxvYWQtbW9yZS1wdWJsaWNhdGlvbnMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLnB1YmxpY2F0aW9ucy1pdGVtcyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtYXJnaW46IDAgLTAuNjI1cmVtO1xuICB9XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW0ge1xuICB3aWR0aDogOC43NXJlbTtcbiAgbWFyZ2luOiAwIDAgMi41cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW0ge1xuICAgIHdpZHRoOiAxNy45Mzc1cmVtO1xuICAgIG1hcmdpbjogMCAwLjYyNXJlbSA0LjA2MjVyZW0gMC42MjVyZW07XG4gIH1cbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLnB1YmxpY2F0aW9ucy1pdGVtcyAucHVibGljYXRpb24taXRlbSAucHVibGljYXRpb24taW1hZ2Uge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBoZWlnaHQ6IDEycmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtIC5wdWJsaWNhdGlvbi1pbWFnZSB7XG4gICAgaGVpZ2h0OiAyMi41cmVtO1xuICB9XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW0gLnB1YmxpY2F0aW9uLWltYWdlIGltZyB7XG4gIGhlaWdodDogMTJyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgbGluZWFyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtIC5wdWJsaWNhdGlvbi1pbWFnZSBpbWcge1xuICAgIGhlaWdodDogMjIuNXJlbTtcbiAgfVxufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtIC5wdWJsaWNhdGlvbi1kZXRhaWxzIHtcbiAgcGFkZGluZzogMC45Mzc1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW0gLnB1YmxpY2F0aW9uLWRldGFpbHMge1xuICAgIHBhZGRpbmc6IDEuMzc1cmVtO1xuICAgIGJhY2tncm91bmQ6ICNDQ0YwRjc7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDEuMjVyZW0gMS4yNXJlbTtcbiAgfVxufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtIC5wdWJsaWNhdGlvbi1kZXRhaWxzIC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLnB1YmxpY2F0aW9ucy1pdGVtcyAucHVibGljYXRpb24taXRlbSAucHVibGljYXRpb24tZGV0YWlscyAudGl0bGUgaDYge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5wdWJsaWNhdGlvbnMtYmxvY2sgLnB1YmxpY2F0aW9ucy1pdGVtcyAucHVibGljYXRpb24taXRlbSAucHVibGljYXRpb24tZGV0YWlscyAuZG93bmxvYWQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtIC5wdWJsaWNhdGlvbi1kZXRhaWxzIC5kb3dubG9hZCBzcGFuIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5wdWJsaWNhdGlvbnMtYmxvY2sgLnB1YmxpY2F0aW9ucy1pdGVtcyAucHVibGljYXRpb24taXRlbSAucHVibGljYXRpb24tZGV0YWlscyAuZG93bmxvYWQgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICB9XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW0gLnB1YmxpY2F0aW9uLWRldGFpbHMgLmRvd25sb2FkIGkge1xuICBmb250LXNpemU6IDAuNjI1cmVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogI0U1NkQwNjtcbiAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xufVxuLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtOmhvdmVyIC5wdWJsaWNhdGlvbi1pbWFnZSBpbWcge1xuICB0cmFuc2Zvcm06IHNjYWxlKDEuMDUpO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnB1YmxpY2F0aW9ucy1ibG9jayAucHVibGljYXRpb25zLWl0ZW1zIC5wdWJsaWNhdGlvbi1pdGVtOmhvdmVyIC5wdWJsaWNhdGlvbi1kZXRhaWxzIHtcbiAgICBiYWNrZ3JvdW5kOiAjQjJFNEVEO1xuICB9XG59XG4ucHVibGljYXRpb25zLWJsb2NrIC5wdWJsaWNhdGlvbnMtaXRlbXMgLnB1YmxpY2F0aW9uLWl0ZW06aG92ZXIgLnB1YmxpY2F0aW9uLWRldGFpbHMgLmRvd25sb2FkIHNwYW4ge1xuICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG59XG5cbi5sb2NhdGlvbnMtY29udGFjdHMge1xuICBwYWRkaW5nOiAxLjU2MjVyZW0gMS4yNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbnMtY29udGFjdHMge1xuICAgIHBhZGRpbmc6IDQuMzc1cmVtIDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9jYXRpb25zLWNvbnRhY3RzIC5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICB9XG59XG4ubG9jYXRpb25zLWNvbnRhY3RzIC5ibG9jay10aXRsZSBoMyB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9ucy1jb250YWN0cyAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgIHdpZHRoOiA0Mi44NzVyZW07XG4gIH1cbn1cbi5sb2NhdGlvbnMtY29udGFjdHMgLmFjY29yZGlvbi13cmFwcGVyIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiBub25lO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmxvY2F0aW9ucy1jb250YWN0cyAuYWNjb3JkaW9uLXdyYXBwZXIgLmFjY29yZGlvbiAuYWNjb3JkaW9uLWl0ZW0gLmFjY29yZGlvbi1jb250ZW50IC5sb2NhdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbjogMCAtMiU7XG4gIH1cbn1cbi5sb2NhdGlvbnMtY29udGFjdHMgLmFjY29yZGlvbi13cmFwcGVyIC5hY2NvcmRpb24gLmFjY29yZGlvbi1pdGVtIC5hY2NvcmRpb24tY29udGVudCAubG9jYXRpb25zIC5sb2NhdGlvbiB7XG4gIG1hcmdpbjogMCAwIDEuODc1cmVtIDA7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubG9jYXRpb25zLWNvbnRhY3RzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmxvY2F0aW9ucyAubG9jYXRpb24ge1xuICAgIHdpZHRoOiA0NiU7XG4gICAgbWFyZ2luOiAwIDIlIDEuODc1cmVtIDIlO1xuICB9XG59XG4ubG9jYXRpb25zLWNvbnRhY3RzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmxvY2F0aW9ucyAubG9jYXRpb24gcCBhIHtcbiAgY29sb3I6ICMxODIwMkM7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjMTczNzY2O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3MgZWFzZS1pbi1vdXQ7XG59XG4ubG9jYXRpb25zLWNvbnRhY3RzIC5hY2NvcmRpb24td3JhcHBlciAuYWNjb3JkaW9uIC5hY2NvcmRpb24taXRlbSAuYWNjb3JkaW9uLWNvbnRlbnQgLmxvY2F0aW9ucyAubG9jYXRpb24gcCBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG4ubG9jYXRpb25zLWNvbnRhY3RzIC5wcmludC1ibG9jayB7XG4gIHdpZHRoOiA1LjEyNXJlbTtcbiAgaGVpZ2h0OiA1LjEyNXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYmFja2dyb3VuZDogI0U1NkQwNjtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMi41cmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5sb2NhdGlvbnMtY29udGFjdHMgLnByaW50LWJsb2NrIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDUuMzc1cmVtO1xuICAgIHRvcDogMTMuMTI1cmVtO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLmZvcm0tYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmc6IDIuNXJlbSAyLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9ybS1ibG9jayB7XG4gICAgcGFkZGluZzogMy43NXJlbSAwIDMuNDM3NXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9ybS1ibG9jayAuYmxvY2staW5uZXIge1xuICAgIG1heC13aWR0aDogNzUuMzEyNXJlbSAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDM7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6IDU2LjI1cmVtO1xuICB9XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5ibG9jay1kZXRhaWxzIHtcbiAgbWF4LXdpZHRoOiAzNy41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5ibG9jay1kZXRhaWxzIGgzIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuYmxvY2stZGV0YWlscyBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIC5nZm9ybV92YWxpZGF0aW9uX2Vycm9ycyB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCB7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgbGVnZW5kIHtcbiAgbGluZS1oZWlnaHQ6IDEuODtcbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdmaWVsZF9sYWJlbCxcbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdmb3JtLWZpZWxkLWxhYmVsIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgZm9udC1zaXplOiAxLjVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5nZmllbGRfbGFiZWwgLmdmaWVsZF9yZXF1aXJlZCAuZ2ZpZWxkX3JlcXVpcmVkX3RleHQsXG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5nZm9ybS1maWVsZC1sYWJlbCAuZ2ZpZWxkX3JlcXVpcmVkIC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50O1xuICB3aWR0aDogMXB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIC5nZmllbGRfbGFiZWwgLmdmaWVsZF9yZXF1aXJlZDphZnRlcixcbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgLmdmb3JtLWZpZWxkLWxhYmVsIC5nZmllbGRfcmVxdWlyZWQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIipcIjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPXRleHRdLFxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPWVtYWlsXSxcbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXRbdHlwZT1udW1iZXJdLFxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPXRlbF0sXG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHRleHRhcmVhIHtcbiAgaGVpZ2h0OiA0LjM3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMCAwLjkzNzVyZW07XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIsXG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9bnVtYmVyXTo6cGxhY2Vob2xkZXIsXG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9dGVsXTo6cGxhY2Vob2xkZXIsXG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIHRleHRhcmVhOjpwbGFjZWhvbGRlciB7XG4gIG9wYWNpdHk6IDE7XG4gIGNvbG9yOiAjMTgyMDJDO1xufVxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBzZWxlY3Qge1xuICBoZWlnaHQ6IDQuMzc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBib3gtc2hhZG93OiBub25lO1xuICBwYWRkaW5nOiAwIDAuOTM3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogOTklIGNlbnRlcjtcbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgdGV4dGFyZWEge1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG4gIGhlaWdodDogMTMuNXJlbTtcbiAgcmVzaXplOiBub25lO1xufVxuLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZmllbGQtLXR5cGUtcmFkaW8gLmdjaG9pY2UsIC5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQuZ2ZpZWxkLS10eXBlLWNoZWNrYm94IC5nY2hvaWNlIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmaWVsZC0tdHlwZS1yYWRpbyAuZ2Nob2ljZSBsYWJlbCwgLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZmllbGQtLXR5cGUtY2hlY2tib3ggLmdjaG9pY2UgbGFiZWwge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgY29sb3I6ICMxODIwMkM7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkLmdmaWVsZC0tdHlwZS1yYWRpbyAuZ2Nob2ljZSBpbnB1dCwgLmZvcm0tYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZC5nZmllbGQtLXR5cGUtY2hlY2tib3ggLmdjaG9pY2UgaW5wdXQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBhY2NlbnQtY29sb3I6ICMwMEE0QzQ7XG4gIHdpZHRoOiAxLjI1cmVtO1xuICBoZWlnaHQ6IDEuMjVyZW07XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG59XG4uZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciBpbnB1dCB7XG4gIGhlaWdodDogMy44NzVyZW07XG4gIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgcGFkZGluZzogMCAyLjgxMjVyZW07XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBib3JkZXItcmFkaXVzOiAxLjkzNzVyZW07XG4gIGJvcmRlcjogMi41cHggc29saWQgI0U1NkQwNjtcbn1cbi5mb3JtLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyIGlucHV0OmhvdmVyLCAuZm9ybS1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtX2Zvb3RlciBpbnB1dDpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmO1xuICBiYWNrZ3JvdW5kOiAjMTczNzY2O1xuICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG59XG5cbi5uZXdzbGV0dGVyLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nOiAyLjVyZW0gMi4xODc1cmVtO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm5ld3NsZXR0ZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDYuMjVyZW0gMDtcbiAgfVxufVxuLm5ld3NsZXR0ZXItYmxvY2s6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICByaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIGJhY2tncm91bmQ6IHJnYigyMywgNTUsIDEwMik7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyMywgNTUsIDEwMiwgMC43KSA0MCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgei1pbmRleDogMjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzbGV0dGVyLWJsb2NrIC5ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLm5ld3NsZXR0ZXItYmxvY2sgLmZvcm0td3JhcHBlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIge1xuICAgIG1heC13aWR0aDogNTYuMjVyZW07XG4gIH1cbn1cbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMge1xuICAgIG1heC13aWR0aDogMzcuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gIH1cbn1cbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmJsb2NrLWRldGFpbHMgaDMge1xuICBjb2xvcjogI2ZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG59XG4ubmV3c2xldHRlci1ibG9jayAuZm9ybS13cmFwcGVyIC5ibG9jay1kZXRhaWxzIHAge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX2NvbmZpcm1hdGlvbl93cmFwcGVyIHtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS44NzVyZW07XG59XG4ubmV3c2xldHRlci1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIC5nZm9ybV92YWxpZGF0aW9uX2Vycm9ycyB7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICBwYWRkaW5nOiAxcmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLm5ld3NsZXR0ZXItYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAubmV3c2xldHRlci1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkge1xuICAgIHdpZHRoOiA0My40Mzc1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogMy43NXJlbTtcbiAgfVxufVxuLm5ld3NsZXR0ZXItYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGZvbnQtc2l6ZTogMS4xODc1cmVtO1xuICBjb2xvcjogI2ZmZjtcbn1cbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXRbdHlwZT10ZXh0XSxcbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm0tYm9keSAuZ2Zvcm1fZmllbGRzIC5nZmllbGQgaW5wdXRbdHlwZT1lbWFpbF0ge1xuICBoZWlnaHQ6IDMuNzVyZW07XG4gIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgcGFkZGluZzogMCAxLjg3NXJlbTtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjE4NzVyZW07XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG59XG4ubmV3c2xldHRlci1ibG9jayAuZm9ybS13cmFwcGVyIC5nZm9ybV93cmFwcGVyIGZvcm0gLmdmb3JtLWJvZHkgLmdmb3JtX2ZpZWxkcyAuZ2ZpZWxkIGlucHV0W3R5cGU9dGV4dF06OnBsYWNlaG9sZGVyLFxuLm5ld3NsZXR0ZXItYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybS1ib2R5IC5nZm9ybV9maWVsZHMgLmdmaWVsZCBpbnB1dFt0eXBlPWVtYWlsXTo6cGxhY2Vob2xkZXIge1xuICBvcGFjaXR5OiAxO1xuICBjb2xvcjogIzE4MjAyQztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyIGlucHV0IHtcbiAgaGVpZ2h0OiAzLjg3NXJlbTtcbiAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDFyZW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxODc1cmVtO1xuICBwYWRkaW5nOiAwIDIuODEyNXJlbTtcbiAgY29sb3I6ICNmZmY7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDEuOTM3NXJlbTtcbiAgYm9yZGVyOiAyLjVweCBzb2xpZCAjRTU2RDA2O1xufVxuLm5ld3NsZXR0ZXItYmxvY2sgLmZvcm0td3JhcHBlciAuZ2Zvcm1fd3JhcHBlciBmb3JtIC5nZm9ybV9mb290ZXIgaW5wdXQ6aG92ZXIsIC5uZXdzbGV0dGVyLWJsb2NrIC5mb3JtLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgZm9ybSAuZ2Zvcm1fZm9vdGVyIGlucHV0OmZvY3VzIHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlci1jb2xvcjogI2ZmZjtcbn1cblxuLnNlcnZpY2VzLWdyaWQge1xuICBwYWRkaW5nOiAzLjc1cmVtIDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ncmlkIHtcbiAgICBwYWRkaW5nOiA1LjYyNXJlbSAwIDQuMzc1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciB7XG4gICAgbWF4LXdpZHRoOiA3NS4zMTI1cmVtO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4uc2VydmljZXMtZ3JpZCAuc2VydmljZXMtYmxvY2staW5uZXIgLmJsb2NrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMy4xMjVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuYmxvY2stdGl0bGUgaDIge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogOHB4IHNvbGlkICNCMkU0RUQ7XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTtcbiAgbWFyZ2luOiAwO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2Uge1xuICBiYWNrZ3JvdW5kOiAjRUFGOUZDO1xuICBwYWRkaW5nOiAxLjU2MjVyZW07XG4gIG1hcmdpbjogMC44MTI1cmVtIDA7XG4gIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2Uge1xuICAgIHdpZHRoOiAyNHJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxufVxuLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZSAuc2VydmljZS1pY29uIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIHdpZHRoOiAzLjVyZW07XG4gIGhlaWdodDogMy41cmVtO1xuICBiYWNrZ3JvdW5kOiAjQjJFNEVEO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZSAuc2VydmljZS1pY29uIHtcbiAgICB3aWR0aDogNC42MjVyZW07XG4gICAgaGVpZ2h0OiA0LjYyNXJlbTtcbiAgfVxufVxuLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZSAuc2VydmljZS1pY29uIGltZyB7XG4gIGhlaWdodDogMS42MjVyZW07XG4gIHdpZHRoOiBhdXRvO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZSAuc2VydmljZS1pY29uIGltZyB7XG4gICAgaGVpZ2h0OiAyLjVyZW07XG4gIH1cbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2UgLnNlcnZpY2UtaWNvbi50cmFpbmluZyBpbWcge1xuICBoZWlnaHQ6IDEuODc1cmVtO1xufVxuLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZSAuc2VydmljZS10aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2UgLnNlcnZpY2UtdGl0bGUgaDUge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgbWFyZ2luLXRvcDogMC42MjVyZW07XG59XG4uc2VydmljZXMtZ3JpZCAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5zZXJ2aWNlIC5zZXJ2aWNlLXRpdGxlIHNwYW4gc3Ryb25nIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTg3NXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4uc2VydmljZXMtZ3JpZCAuc2VydmljZXMtYmxvY2staW5uZXIgLnNlcnZpY2VzIC5zZXJ2aWNlIC5zZXJ2aWNlLXRpdGxlIHNwYW4gaSB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG4gIHRyYW5zaXRpb246IGFsbCAwLjFzIGxpbmVhcjtcbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2U6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjQ0NGMEY3O1xufVxuLnNlcnZpY2VzLWdyaWQgLnNlcnZpY2VzLWJsb2NrLWlubmVyIC5zZXJ2aWNlcyAuc2VydmljZTpob3ZlciAuc2VydmljZS1pY29uIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2U6aG92ZXIgLnNlcnZpY2UtdGl0bGUgc3BhbiBzdHJvbmcge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2Njtcbn1cbi5zZXJ2aWNlcy1ncmlkIC5zZXJ2aWNlcy1ibG9jay1pbm5lciAuc2VydmljZXMgLnNlcnZpY2U6aG92ZXIgLnNlcnZpY2UtdGl0bGUgc3BhbiBpIHtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTtcbn1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNpZGViYXItYmxvY2sge1xuICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICB9XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIHtcbiAgYm9yZGVyLXRvcDogOHB4IHNvbGlkICNCMkU0RUQ7XG4gIG1hcmdpbi1ib3R0b206IDMuNzVyZW07XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC5zaWRlYmFyLXRpdGxlIHtcbiAgcGFkZGluZzogMS44NzVyZW0gMDtcbn1cbi5zaWRlYmFyLWJsb2NrIC5zaWRlYmFyLWl0ZW0gLnNpZGViYXItdGl0bGUgaDUge1xuICBtYXJnaW46IDA7XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC53eXNpd3lnIGEge1xuICBjb2xvcjogIzE4MjAyQztcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5zaWRlYmFyLWJsb2NrIC5zaWRlYmFyLWl0ZW0gLnd5c2l3eWcgYTpob3ZlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNpZGViYXItYmxvY2sgLnNpZGViYXItaXRlbSAud3lzaXd5ZyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5zaWRlYmFyLWJsb2NrIC5zaWRlYmFyLWl0ZW0gLnd5c2l3eWcgdWwgbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC53eXNpd3lnIHVsIGxpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwi4pePXCI7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC5maWxlIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuLnNpZGViYXItYmxvY2sgLnNpZGViYXItaXRlbSAuZmlsZSBhIHNwYW4ge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbn1cbi5zaWRlYmFyLWJsb2NrIC5zaWRlYmFyLWl0ZW0gLmZpbGUgYSBpIHtcbiAgZm9udC1zaXplOiAwLjYyNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIG1hcmdpbi1sZWZ0OiAwLjYyNXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IC0wLjE4NzVyZW07XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC5maWxlIGE6aG92ZXIgc3BhbiB7XG4gIGJvcmRlci1jb2xvcjogIzE3Mzc2Njtcbn1cbi5zaWRlYmFyLWJsb2NrIC5zaWRlYmFyLWl0ZW0gLmZpbGUgYTpob3ZlciBpIHtcbiAgdG9wOiAwO1xufVxuLnNpZGViYXItYmxvY2sgLnNpZGViYXItaXRlbSAubnVtYmVyIHtcbiAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG59XG4uc2lkZWJhci1ibG9jayAuc2lkZWJhci1pdGVtIC5udW1iZXIgLnRoZS1udW1iZXIge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDQuNjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDQuMTg3NXJlbTtcbiAgY29sb3I6ICMwMDQ5OTA7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIge1xuICBwYWRkaW5nOiAxLjg3NXJlbSAwLjMxMjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgIHBhZGRpbmc6IDMuMTI1cmVtIDA7XG4gIH1cbn1cbi5hY2NvcmRpb24td3JhcHBlciAuYmxvY2stdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5hY2NvcmRpb24td3JhcHBlciAuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICB9XG59XG4uYWNjb3JkaW9uLXdyYXBwZXIgLmJsb2NrLXRpdGxlIGg0IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG5cbi5maWxlcy1ibG9jayB7XG4gIHBhZGRpbmc6IDAgMC45Mzc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZpbGVzLWJsb2NrIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG59XG4uZmlsZXMtYmxvY2sgLmJsb2NrLXRpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG59XG4uZmlsZXMtYmxvY2sgLmJsb2NrLXRpdGxlIGg0IHtcbiAgY29sb3I6ICMxNzM3NjY7XG59XG4uZmlsZXMtYmxvY2sgLmZpbGVzIHtcbiAgbWFyZ2luOiAwIDAgMi44MTI1cmVtIDA7XG59XG4uZmlsZXMtYmxvY2sgLmZpbGVzIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXItdG9wOiAxcHggc29saWQgI0I0QkVDRTtcbn1cbi5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkge1xuICBwYWRkaW5nOiAxLjI1cmVtIDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjQjRCRUNFO1xuICBkaXNwbGF5OiBmbGV4O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZpbGVzLWJsb2NrIC5maWxlcyB1bCBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkgYSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDIxMjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmZpbGVzLWJsb2NrIC5maWxlcyB1bCBsaSBhIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICB9XG59XG4uZmlsZXMtYmxvY2sgLmZpbGVzIHVsIGxpIGkge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbWFyZ2luLXJpZ2h0OiAxLjEyNXJlbTtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAwLjI1cmVtO1xuICB3aWR0aDogMC45Mzc1cmVtO1xuICBmbGV4LXNocmluazogMDtcbn1cbi5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkgc3BhbiB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDA7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkgc3BhbiB7XG4gICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGk6aG92ZXIgYSB7XG4gICAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuZmlsZXMtYmxvY2sgLmZpbGVzIHVsIGxpOmhvdmVyIHNwYW4ge1xuICAgIHRvcDogMC4xMjVyZW07XG4gIH1cbn1cbi5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkubGluayBzcGFuIHtcbiAgdHJhbnNmb3JtOiByb3RhdGUoMjI1ZGVnKTtcbn1cbi5maWxlcy1ibG9jayAuZmlsZXMgdWwgbGkubGluazpob3ZlciBzcGFuIHtcbiAgdG9wOiAtMC4xODc1cmVtO1xufVxuXG4udmlkZW8tYmxvY2sge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC52aWRlby1ibG9jayB7XG4gICAgcGFkZGluZzogMi41cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC52aWRlby1ibG9jayAucm93IHtcbiAgICB3aWR0aDogNzVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgfVxufVxuLnZpZGVvLWJsb2NrIC52aWRlby13cmFwcGVyIGEge1xuICBoZWlnaHQ6IDE0LjgxMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgei1pbmRleDogMTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAudmlkZW8tYmxvY2sgLnZpZGVvLXdyYXBwZXIgYSB7XG4gICAgaGVpZ2h0OiAyNy4zMTI1cmVtO1xuICB9XG59XG4udmlkZW8tYmxvY2sgLnZpZGVvLXdyYXBwZXIgYTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgaW5zZXQ6IDA7XG4gIGJhY2tncm91bmQ6IHJnYmEoMTEsIDMyLCA2NCwgMC40Nik7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG4gIHotaW5kZXg6IDM7XG59XG4udmlkZW8tYmxvY2sgLnZpZGVvLXdyYXBwZXIgYSBpbWcge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICBoZWlnaHQ6IDE0LjgxMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgYm9yZGVyLXJhZGl1czogMi4xODc1cmVtO1xuICB6LWluZGV4OiAyO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnZpZGVvLWJsb2NrIC52aWRlby13cmFwcGVyIGEgaW1nIHtcbiAgICBoZWlnaHQ6IDI3LjMxMjVyZW07XG4gIH1cbn1cbi52aWRlby1ibG9jayAudmlkZW8td3JhcHBlciBhIGkge1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB6LWluZGV4OiA0O1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiA0LjM3NXJlbTtcbn1cbi52aWRlby1ibG9jayAudmlkZW8td3JhcHBlciBhOmhvdmVyIGkge1xuICBiYWNrZ3JvdW5kOiAjRTU2RDA2O1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xufVxuLnZpZGVvLWJsb2NrIC5ibG9jay10ZXh0IHtcbiAgbWFyZ2luLXRvcDogMS41NjI1cmVtO1xufVxuXG4jdmlkZW8tbW9kYWwge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIHRvcDogNXJlbSAhaW1wb3J0YW50O1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgI3ZpZGVvLW1vZGFsIHtcbiAgICB3aWR0aDogNzUuMzc1cmVtO1xuICB9XG59XG4jdmlkZW8tbW9kYWwgLmNsb3NlLWJ1dHRvbiB7XG4gIHdpZHRoOiAzLjY4NzVyZW07XG4gIGhlaWdodDogMy42ODc1cmVtO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xufVxuI3ZpZGVvLW1vZGFsIC5jbG9zZS1idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjQzRDNEM0O1xufVxuI3ZpZGVvLW1vZGFsIC5mdWxsd2lkdGgtdmlkZW8sXG4jdmlkZW8tbW9kYWwgLnJlc3BvbnNpdmUtZW1iZWQge1xuICBtYXJnaW4tdG9wOiA2LjI1cmVtO1xufVxuI3ZpZGVvLW1vZGFsIC5mdWxsd2lkdGgtdmlkZW8gdmlkZW8sXG4jdmlkZW8tbW9kYWwgLmZ1bGx3aWR0aC12aWRlbyBpZnJhbWUsXG4jdmlkZW8tbW9kYWwgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4jdmlkZW8tbW9kYWwgLnJlc3BvbnNpdmUtZW1iZWQgaWZyYW1lIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDEuNTYyNXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gICN2aWRlby1tb2RhbCAuZnVsbHdpZHRoLXZpZGVvIHZpZGVvLFxuICAjdmlkZW8tbW9kYWwgLmZ1bGx3aWR0aC12aWRlbyBpZnJhbWUsXG4gICN2aWRlby1tb2RhbCAucmVzcG9uc2l2ZS1lbWJlZCB2aWRlbyxcbiAgI3ZpZGVvLW1vZGFsIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSB7XG4gICAgaGVpZ2h0OiA0MXJlbTtcbiAgICBib3JkZXItcmFkaXVzOiAyLjE4NzVyZW07XG4gIH1cbn1cblxuLmNhc2UtYmFubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FzZS1iYW5uZXIge1xuICAgIGhlaWdodDogNDUuNjI1cmVtO1xuICB9XG59XG4uY2FzZS1iYW5uZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGluc2V0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogNnJlbTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC43MykgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FzZS1iYW5uZXI6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgwLCAwLCAwLCAwLjczKSAwJSwgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAxMDAlKTtcbiAgICB3aWR0aDogODAlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGhlaWdodDogNDUuNjI1cmVtO1xuICB9XG59XG4uY2FzZS1iYW5uZXIgaW1nIHtcbiAgaGVpZ2h0OiAxNy4xMjVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3Zlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXNlLWJhbm5lciBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBpbnNldDogMDtcbiAgICB6LWluZGV4OiAyO1xuICAgIGhlaWdodDogNDUuNjI1cmVtO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIHotaW5kZXg6IDQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhc2UtYmFubmVyIC5jYXNlLWJhbm5lci13cmFwcGVyIC5jYXNlLWJhbm5lci1kZXRhaWxzIHtcbiAgICBtYXgtd2lkdGg6IDc1LjMxMjVyZW0gIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDIuMTg3NXJlbSAwIDAgMDtcbiAgfVxufVxuLmNhc2UtYmFubmVyIC5jYXNlLWJhbm5lci13cmFwcGVyIC5jYXNlLWJhbm5lci1kZXRhaWxzIC5icmVhZGNydW1icyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxLjg3NXJlbTtcbiAgbGVmdDogMi4xODc1cmVtO1xuICByaWdodDogMi4xODc1cmVtO1xuICB6LWluZGV4OiA0O1xuICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJyZWFkY3J1bWJzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA2LjI1cmVtO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbn1cbi5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYnJlYWRjcnVtYnMgPiBzcGFuIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJyZWFkY3J1bWJzID4gc3BhbiA+IHNwYW4ge1xuICBjb2xvcjogI2ZmZjtcbn1cbi5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYnJlYWRjcnVtYnMgPiBzcGFuID4gc3BhbiBhIHtcbiAgY29sb3I6ICNmZmY7XG59XG4uY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmZlYXR1cmVkLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAyLjE4NzVyZW07XG4gIGJhY2tncm91bmQ6ICM5MkRCRTg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIHBhZGRpbmc6IDAuNjI1cmVtIDIuMTg3NXJlbTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNDAwO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuZmVhdHVyZWQtdGV4dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNC42ODc1cmVtO1xuICAgIGhlaWdodDogMy42MjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDMuODc1cmVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nOiAwIDMuMTI1cmVtIDAgMDtcbiAgICBib3JkZXItcmFkaXVzOiAwIDEuODEyNXJlbSAxLjgxMjVyZW0gMDtcbiAgfVxufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhc2UtYmFubmVyIC5jYXNlLWJhbm5lci13cmFwcGVyIC5jYXNlLWJhbm5lci1kZXRhaWxzIC5mZWF0dXJlZC10ZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBoZWlnaHQ6IDMuNjI1cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IC0xMjVyZW07XG4gICAgYmFja2dyb3VuZDogIzkyREJFODtcbiAgICB3aWR0aDogMTI1cmVtO1xuICB9XG59XG4uY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJhbm5lci1kZXRhaWxzIGgxLCAuY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJhbm5lci1kZXRhaWxzIGg0IHtcbiAgY29sb3I6ICMxNzM3NjY7XG4gIG1hcmdpbjogMi4xODc1cmVtIDIuMTg3NXJlbTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgaDEsIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgaDQge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIG1hcmdpbjogMCAwIDIuMTg3NXJlbSAwO1xuICB9XG59XG4uY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJhbm5lci1kZXRhaWxzIGgxIGJyLCAuY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIgLmNhc2UtYmFubmVyLWRldGFpbHMgLmJhbm5lci1kZXRhaWxzIGg0IGJyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgaDEgYnIsIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlciAuY2FzZS1iYW5uZXItZGV0YWlscyAuYmFubmVyLWRldGFpbHMgaDQgYnIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG5cbkBtZWRpYSBwcmludCB7XG4gIC5jYXNlLWJhbm5lciB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbiAgLmNhc2UtYmFubmVyOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5jYXNlLWJhbm5lciBpbWcge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgaGVpZ2h0OiAyNXJlbTtcbiAgfVxuICAuY2FzZS1iYW5uZXIgLmNhc2UtYmFubmVyLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gIH1cbiAgLmNhc2UtYmFubmVyIC5jYXNlLWJhbm5lci13cmFwcGVyIC5jYXNlLWJhbm5lci1kZXRhaWxzIC5icmVhZGNydW1icyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLnNlY3Rpb24tYmxvY2sge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnNlY3Rpb24tYmxvY2sge1xuICAgIHBhZGRpbmc6IDVyZW0gMCAwIDA7XG4gIH1cbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay10aXRsZSB7XG4gIGJvcmRlci10b3A6IDRweCBzb2xpZCAjRTU2RDA2O1xufVxuLnNlY3Rpb24tYmxvY2sgLmJsb2NrLXRpdGxlIGg2IHtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4wMTU2MjVyZW07XG4gIHBhZGRpbmc6IDEuNTYyNXJlbSAwIDIuNXJlbSAwO1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gaDMsIC5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gaDQsIC5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gaDUsIC5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gaDYge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG59XG4uc2VjdGlvbi1ibG9jayAuYmxvY2stY29udGVudCA+IHVsID4gbGkge1xuICBwYWRkaW5nLWxlZnQ6IDAuOTM3NXJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG59XG4uc2VjdGlvbi1ibG9jayAuYmxvY2stY29udGVudCA+IHVsID4gbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil49cIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwgPiBsaSA+IGEge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwgPiBsaSA+IGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwgPiBsaSA+IHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwLjkzNzVyZW0gMCAwIDEuMjVyZW07XG59XG4uc2VjdGlvbi1ibG9jayAuYmxvY2stY29udGVudCA+IHVsID4gbGkgPiB1bCBsaSB7XG4gIHBhZGRpbmctbGVmdDogMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xufVxuLnNlY3Rpb24tYmxvY2sgLmJsb2NrLWNvbnRlbnQgPiB1bCA+IGxpID4gdWwgbGk6YmVmb3JlIHtcbiAgY29udGVudDogXCLil4tcIjtcbiAgY29sb3I6ICNFNTZEMDY7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwgPiBsaSA+IHVsIGxpIGEge1xuICBjb2xvcjogIzE3Mzc2NjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMxNzM3NjY7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMC4zcyBlYXNlLWluLW91dDtcbn1cbi5zZWN0aW9uLWJsb2NrIC5ibG9jay1jb250ZW50ID4gdWwgPiBsaSA+IHVsIGxpIGE6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLnNlY3Rpb24tYmxvY2sge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG59XG4uc3RhdHMtYmxvY2sge1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMS41NjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLnN0YXRzLWJsb2NrIHtcbiAgICBwYWRkaW5nOiA0LjA2MjVyZW0gMCA2LjI1cmVtIDA7XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zdGF0cy1ibG9jay5yZWR1Y2VkLXBhZGRpbmcge1xuICAgIHBhZGRpbmc6IDQuMDYyNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuc3RhdHMtYmxvY2sgLm51bWJlcnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBtYXJnaW46IDAgLTAuOTM3NXJlbTtcbiAgfVxufVxuLnN0YXRzLWJsb2NrIC5udW1iZXJzIC5udW1iZXIge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMS4yNXJlbSAwO1xuICBib3JkZXItcmFkaXVzOiAwIDAgMS44NzVyZW0gMDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zdGF0cy1ibG9jayAubnVtYmVycyAubnVtYmVyIHtcbiAgICB3aWR0aDogMjIuNXJlbTtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXJnaW46IDAuOTM3NXJlbSAwLjkzNzVyZW0gMi41cmVtIDAuOTM3NXJlbTtcbiAgfVxufVxuLnN0YXRzLWJsb2NrIC5udW1iZXJzIC5udW1iZXIgLnRoZS1udW1iZXIge1xuICBmb250LWZhbWlseTogXCJMZWFndWUgU3BhcnRhblwiLCBzYW5zLXNlcmlmO1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogIzAwNDk5MDtcbiAgZm9udC1zaXplOiAyLjY4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAzLjEyNXJlbTtcbiAgZGlzcGxheTogZmxleDtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zdGF0cy1ibG9jayAubnVtYmVycyAubnVtYmVyIC50aGUtbnVtYmVyIHtcbiAgICBmb250LXNpemU6IDMuMzc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiA0LjE4NzVyZW07XG4gIH1cbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5zdGF0cy1ibG9jayAubnVtYmVycyAubnVtYmVyIC5kZXNjcmlwdGlvbiB7XG4gICAgd2lkdGg6IDE3LjMxMjVyZW07XG4gIH1cbn1cbi5zdGF0cy1ibG9jayAubnVtYmVycyAubnVtYmVyIC5kZXNjcmlwdGlvbiBwIHtcbiAgZm9udC1mYW1pbHk6IFwiTGVhZ3VlIFNwYXJ0YW5cIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG1hcmdpbjogMDtcbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLnN0YXRzLWJsb2NrIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sge1xuICBwYWRkaW5nOiAyLjE4NzVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FyZWVycy1zbGlkZXItYmxvY2sge1xuICAgIHBhZGRpbmc6IDAgMCAzLjEyNXJlbSAwO1xuICB9XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIHtcbiAgICBtYXgtd2lkdGg6IDc1LjMxMjVyZW07XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuY2FyZWVycy10aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXRpdGxlIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogNC4zNzVyZW07XG4gIH1cbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuY2FyZWVycy10aXRsZSBoMyB7XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciB7XG4gIHBhZGRpbmctYm90dG9tOiA2LjI1cmVtO1xufVxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4ZW0pIHtcbiAgLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciB7XG4gICAgbWFyZ2luOiAwIC0wLjgxMjVyZW07XG4gIH1cbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuY2FyZWVycy1zbGlkZXIgLmNhcmVlciB7XG4gIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gIGJvcmRlci1yYWRpdXM6IDEuODc1cmVtO1xuICBwYWRkaW5nOiAxLjg3NXJlbSAxLjU2MjVyZW07XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLmNhcmVlcnMtc2xpZGVyIC5jYXJlZXIge1xuICAgIGJvcmRlci1yYWRpdXM6IDIuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAzLjc1cmVtIDMuMTI1cmVtO1xuICAgIG1hcmdpbjogMCAwLjYyNXJlbTtcbiAgfVxufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciAuY2FyZWVyIGg0IHtcbiAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciAuY2FyZWVyIGg0IGEge1xuICBjb2xvcjogIzE3Mzc2Njtcbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuY2FyZWVycy1zbGlkZXIgLmNhcmVlciBwIHtcbiAgY29sb3I6ICMxODIwMkM7XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciAuY2FyZWVyIHAgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLmNhcmVlcnMtc2xpZGVyIC5jYXJlZXIgLnZpZXctbW9yZSB7XG4gIGZvbnQtZmFtaWx5OiBcIkxlYWd1ZSBTcGFydGFuXCIsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDE4NzVyZW07XG4gIGNvbG9yOiAjMTczNzY2O1xufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5jYXJlZXJzLXNsaWRlciAuY2FyZWVyIC52aWV3LW1vcmUgaSB7XG4gIGNvbG9yOiAjRTU2RDA2O1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIG1hcmdpbi1sZWZ0OiAwLjMxMjVyZW07XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLmNhcmVlcnMtc2xpZGVyIC5jYXJlZXIgLnZpZXctbW9yZTpob3ZlciBzdHJvbmcge1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgIzE3Mzc2Njtcbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuY2FyZWVycy1jdGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogNC4zNzVyZW07XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLnNsaWNrLWFycm93IHtcbiAgYm90dG9tOiAwO1xuICB0b3A6IGF1dG87XG4gIHRyYW5zZm9ybTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMi43NXJlbTtcbiAgaGVpZ2h0OiAyLjc1cmVtO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuc2xpY2stYXJyb3cge1xuICAgIHdpZHRoOiAzLjY4NzVyZW07XG4gICAgaGVpZ2h0OiAzLjY4NzVyZW07XG4gIH1cbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgZm9udC1mYW1pbHk6IFwiaWNvbW9vblwiLCBzYW5zLXNlcmlmO1xuICB3aWR0aDogMi43NXJlbTtcbiAgaGVpZ2h0OiAyLjc1cmVtO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICBib3JkZXI6IDIuNXB4IHNvbGlkICM5MkRCRTg7XG4gIGNvbG9yOiAjMTczNzY2O1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBvcGFjaXR5OiAxO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0OGVtKSB7XG4gIC5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuc2xpY2stYXJyb3c6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgd2lkdGg6IDMuNjg3NXJlbTtcbiAgICBoZWlnaHQ6IDMuNjg3NXJlbTtcbiAgfVxufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5zbGljay1hcnJvdy5zbGljay1uZXh0IHtcbiAgcmlnaHQ6IGNhbGMoNTAlIC0gMy4xMnJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLnNsaWNrLWFycm93LnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiBjYWxjKDUwJSAtIDQuMThyZW0pO1xuICB9XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLnNsaWNrLWFycm93LnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuc2xpY2stYXJyb3cuc2xpY2stcHJldiB7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMy4xMnJlbSk7XG59XG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDhlbSkge1xuICAuY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLnNsaWNrLWFycm93LnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IGNhbGMoNTAlIC0gNC4xOHJlbSk7XG4gIH1cbn1cbi5jYXJlZXJzLXNsaWRlci1ibG9jayAuYmxvY2staW5uZXIgLmNhcmVlcnMtd3JhcHBlciAuc2xpY2stYXJyb3cuc2xpY2stcHJldjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xufVxuLmNhcmVlcnMtc2xpZGVyLWJsb2NrIC5ibG9jay1pbm5lciAuY2FyZWVycy13cmFwcGVyIC5zbGljay1hcnJvdy5zbGljay1kaXNhYmxlZDpiZWZvcmUge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItY29sb3I6IHJnYmEoMTQ2LCAyMTksIDIzMiwgMC4zMSk7XG59XG4uY2FyZWVycy1zbGlkZXItYmxvY2sgLmJsb2NrLWlubmVyIC5jYXJlZXJzLXdyYXBwZXIgLnNsaWNrLWFycm93OmhvdmVyOmJlZm9yZSB7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIGJvcmRlci1jb2xvcjogcmdiYSgxNDYsIDIxOSwgMjMyLCAwLjMxKTtcbn0iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuOS4wXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyAtLS0gRGVwZW5kZW5jaWVzIC0tLVxuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2UsXG4gICR4eS1ncmlkOiAkeHktZ3JpZFxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaWYgJHh5LWdyaWQge1xuICAgICR4eS1ncmlkOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzMj9mYW1pbHk9TGVhZ3VlK1NwYXJ0YW46d2dodEA0MDA7NTAwOzYwMDs3MDA7ODAwJmZhbWlseT1MaWJyZStGcmFua2xpbiZkaXNwbGF5PXN3YXAnKTtcblxuQG1peGluIHByaW1hcnktZm9udCgkd2VpZ2h0OjQwMCkge1xuICBmb250LWZhbWlseTogJ0xlYWd1ZSBTcGFydGFuJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG59XG5cbkBtaXhpbiBzZWNvbmRhcnktZm9udCgkd2VpZ2h0OjQwMCkge1xuICBmb250LWZhbWlseTogJ0xpYnJlIEZyYW5rbGluJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6ICR3ZWlnaHQ7XG59XG5cblxuXG5cbkBtaXhpbiBhbGlnbmZ1bGwoKSB7XG4gIG1hcmdpbi1sZWZ0ICA6IGNhbGMoIC0xMDB2dyAvIDIgKyAxMDAlIC8gMiApO1xuICBtYXJnaW4tcmlnaHQgOiBjYWxjKCAtMTAwdncgLyAyICsgMTAwJSAvIDIgKTtcbiAgbWF4LXdpZHRoICAgIDogMTAwdnc7XG59XG5cbkBmdW5jdGlvbiBmb250LXJlbSgkc2l6ZSkge1xuICBAcmV0dXJuIHJlbS1jYWxjKCRzaXplICogMSk7XG59XG5cbi5hbGlnbmZ1bGwge1xuICBAaW5jbHVkZSBhbGlnbmZ1bGwoKTtcbn1cbmJvZHksXG5odG1sIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBzY3JvbGwtYmVoYXZpb3I6IHNtb290aDtcbiAgJi5tZW51LWV4cGFuZGVkIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgfVxuICAgIC5oZWFkZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICB9XG5cbiAgICAgIC5tYWluLW1lbnUge1xuICAgICAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgwKTtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4uYnV0dG9uIHtcbiAgaGVpZ2h0OiByZW0tY2FsYyg1MSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXJlbSg1MSk7XG4gIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMyk7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMCAzNSk7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgY29sb3I6IzE3Mzc2NjtcbiAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMik7XG4gIGJvcmRlcjoyLjVweCBzb2xpZCAjRTU2RDA2O1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGhlaWdodDogcmVtLWNhbGMoNjIpO1xuICAgIGxpbmUtaGVpZ2h0OiBmb250LXJlbSg2Mik7XG4gICAgcGFkZGluZzpyZW0tY2FsYygwIDQ1KTtcbiAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDMxKTtcbiAgfVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjojZmZmO1xuICAgIGJhY2tncm91bmQ6IzE3Mzc2NjtcbiAgICBib3JkZXItY29sb3I6IzE3Mzc2NjtcbiAgfVxuXG4gICYuZGFyayB7XG4gICAgY29sb3I6I2ZmZjtcbiAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgfVxuICB9XG59XG5cbiN3cGFkbWluYmFyIHtcbiAgcG9zaXRpb246Zml4ZWQ7XG59XG5cbi53cC1ibG9jay1idXR0b25zIHtcbiAgLndwLWJsb2NrLWJ1dHRvbiB7XG4gICAgbWFyZ2luOnJlbS1jYWxjKDAgMCAzMCAwKTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6YXV0bztcbiAgICB9XG4gICAgLndwLWVsZW1lbnQtYnV0dG9uIHtcbiAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xuICAgICAgbGluZS1oZWlnaHQ6IGZvbnQtcmVtKDUxKTtcbiAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zKTtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAzNSk7XG4gICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMik7XG4gICAgICBib3JkZXI6Mi41cHggc29saWQgI0U1NkQwNjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjIpO1xuICAgICAgICBsaW5lLWhlaWdodDogZm9udC1yZW0oNjIpO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgNDUpO1xuICAgICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDMxKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgYmFja2dyb3VuZDojMTczNzY2O1xuICAgICAgICBib3JkZXItY29sb3I6IzE3Mzc2NjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmlubmVyLXBhZ2UtY29udGVudCB7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMCAyNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzowO1xuICB9XG4gIC5hbGlnbmZ1bGwge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tbGVmdCAgOiBjYWxjKCAtMTAwdncgLyAyICsgMTM0LjUlIC8gMiApO1xuICAgICAgd2lkdGg6IDEwMHZ3O1xuICAgIH1cbiAgfVxuICA+IHVsIHtcbiAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgcGFkZGluZzowO1xuICAgIG1hcmdpbjowO1xuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygxNSk7XG4gICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjUpO1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50Oifil48nO1xuICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud3AtYmxvY2staGVhZGluZyB7XG4gIGNvbG9yOiMxNzM3NjY7XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6cmdiYSgwLDAsMCwwLjUpICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtYmxlbmQtbW9kZTogbXVsdGlwbHk7XG59XG5cbi5pcy1yZXZlYWwtb3BlbiB7XG4gIGhlYWRlciwgI21haW4sIGZvb3RlciB7XG4gICAgZmlsdGVyOmJsdXIoNXB4KTtcbiAgfVxufVxuXG4jbWFpbiB7XG4gICAgJiA+IC5yb3cge1xuICAgICAgICAmID4gLmNvbHVtbnMubGFyZ2UtMTIge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyggMjUgKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyggMjUgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAubm8tcGFkZGluZyB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICB9XG59IiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLXNpemU6IG51bGw7XG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgXCJzbWFsbFwiOiAwLFxuICBcIm1lZGl1bVwiOiA2NDBweCxcbiAgXCJsYXJnZVwiOiAxMDI0cHgsXG4gIFwieGxhcmdlXCI6IDEyMDBweCxcbiAgXCJ4eGxhcmdlXCI6IDE0NDBweCxcbikgIWRlZmF1bHQ7XG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgSGlEUEkgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMgZm9yIHJlc29sdXRpb25zLlxuLy8vIFZhbHVlcyBtdXN0IHJlcHJlc2VudCB0aGUgZGV2aWNlIHBpeGVscyAvIHdlYiBwaXhlbHMgcmF0aW9uIGFuZCBiZSB1bml0bGVzcyBvciBpbiBEUFBYLlxuLy8vIEB0eXBlIE1hcFxuJGJyZWFrcG9pbnRzLWhpZHBpOiAoXG4gIFwiaGlkcGktMVwiOiAxLFxuICBcImhpZHBpLTEtNVwiOiAxLjUsXG4gIFwiaGlkcGktMlwiOiAyLFxuICBcInJldGluYVwiOiAyLFxuICBcImhpZHBpLTNcIjogM1xuKSAhZGVmYXVsdDtcblxuLy8vIFRoZSBsYXJnZXN0IG5hbWVkIGJyZWFrcG9pbnQgaW4gd2hpY2ggdG8gaW5jbHVkZSBwcmludCBhcyBhIG1lZGlhIHR5cGVcbi8vLyBAdHlwZSBLZXl3b3JkXG4kcHJpbnQtYnJlYWtwb2ludDogbGFyZ2UgIWRlZmF1bHQ7XG5cbiQtemYtemVyby1icmVha3BvaW50OiBzbWFsbCAhZGVmYXVsdDtcblxuJC16Zi1icmVha3BvaW50cy1rZXlzOiBtYXAtdG8tbGlzdCgkYnJlYWtwb2ludHMsICdrZXlzJyk7XG5cbkBpZiBudGgobWFwLXZhbHVlcygkYnJlYWtwb2ludHMpLCAxKSAhPSAwIHtcbiAgQGVycm9yICdUaGUgZmlyc3Qga2V5IGluIHRoZSAkYnJlYWtwb2ludHMgbWFwIG11c3QgaGF2ZSBhIHZhbHVlIG9mIFwiMFwiLic7XG59XG5AZWxzZSB7XG4gICQtemYtemVyby1icmVha3BvaW50OiBudGgobWFwLWtleXMoJGJyZWFrcG9pbnRzKSwgMSk7XG59XG5cbi8vLyBBbGwgb2YgdGhlIG5hbWVzIGluIHRoaXMgbGlzdCB3aWxsIGJlIG91dHB1dCBhcyBjbGFzc2VzIGluIHlvdXIgQ1NTLCBsaWtlIGAuc21hbGwtMTJgLCBgLm1lZGl1bS02YCwgYW5kIHNvIG9uLiBFYWNoIHZhbHVlIGluIHRoaXMgbGlzdCBtdXN0IGFsc28gYmUgaW4gdGhlIGAkYnJlYWtwb2ludHNgIG1hcC5cbi8vLyBAdHlwZSBMaXN0XG4kYnJlYWtwb2ludC1jbGFzc2VzOiAoc21hbGwgbWVkaXVtIGxhcmdlKSAhZGVmYXVsdDtcblxuLy8vIEdlbmVyYXRlcyBhIG1lZGlhIHF1ZXJ5IHN0cmluZyBtYXRjaGluZyB0aGUgaW5wdXQgdmFsdWUuIFJlZmVyIHRvIHRoZSBkb2N1bWVudGF0aW9uIGZvciB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdG8gc2VlIHdoYXQgdGhlIHBvc3NpYmxlIGlucHV0cyBhcmUuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsIFtzbWFsbF0gLSBCcmVha3BvaW50IG5hbWUsIG9yIHB4LCByZW0sIG9yIGVtIHZhbHVlIHRvIHByb2Nlc3MuXG5AZnVuY3Rpb24gYnJlYWtwb2ludCgkdmFsOiAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAvLyBXZWIgc3RhbmRhcmQgUGl4ZWxzIHBlciBpbmNoLiAoMWRkcHggLyAkc3RkLXdlYi1kcGkpID0gMWRwaVxuICAvLyBTZWUgaHR0cHM6Ly93d3cudzMub3JnL1RSL2Nzcy12YWx1ZXMtMy8jYWJzb2x1dGUtbGVuZ3Roc1xuICAkc3RkLXdlYi1kcGk6IDk2O1xuXG4gIC8vIFNpemUgb3Iga2V5d29yZFxuICAkYnA6IG50aCgkdmFsLCAxKTtcbiAgLy8gVmFsdWUgb2YgdGhlIGZvbGxvd2luZyBicmVha3BvaW50XG4gICRicC1uZXh0OiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWF4LXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1pbjogbnVsbDtcbiAgLy8gVmFsdWUgZm9yIG1pbi13aWR0aCBtZWRpYSBxdWVyaWVzXG4gICRicC1tYXg6IG51bGw7XG4gIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICRkaXI6IGlmKGxlbmd0aCgkdmFsKSA+IDEsIG50aCgkdmFsLCAyKSwgdXApO1xuICAvLyBJZiBuYW1lZCwgbmFtZSBvZiB0aGUgYnJlYWtwb2ludFxuICAkbmFtZTogbnVsbDtcbiAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSBIaURQSSBicmVha3BvaW50XG4gICRoaWRwaTogZmFsc2U7XG5cbiAgLy8gT3JpZW50YXRpb24gbWVkaWEgcXVlcmllcyBoYXZlIGEgdW5pcXVlIHN5bnRheFxuICBAaWYgJGJwID09ICdsYW5kc2NhcGUnIG9yICRicCA9PSAncG9ydHJhaXQnIHtcbiAgICBAcmV0dXJuICcob3JpZW50YXRpb246ICN7JGJwfSknO1xuICB9XG5cbiAgLy8gSWYgYSBicmVha3BvaW50IG5hbWUgaXMgZ2l2ZW4sIGdldCBpdHMgdmFsdWUgZnJvbSB0aGUgJGJyZWFrcG9pbnRzLyRicmVha3BvaW50cy1oaWRwaSBtYXAuXG4gIEBpZiB0eXBlLW9mKCRicCkgPT0gJ3N0cmluZycge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICRicCkge1xuICAgICAgJG5hbWU6ICRicDtcbiAgICAgICRicDogbWFwLWdldCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICAgICRicC1uZXh0OiAtemYtbWFwLW5leHQoJGJyZWFrcG9pbnRzLCAkbmFtZSk7XG4gICAgfVxuICAgIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cy1oaWRwaSwgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cy1oaWRwaSwgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dC1udW1iZXIoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApO1xuICAgICAgJGhpZHBpOiB0cnVlO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICAkYnA6IDA7XG4gICAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBcIiN7JHZhbH1cIiBpcyBub3QgZGVmaW5lZCBpbiB5b3VyIGAkYnJlYWtwb2ludHNgIG9yIGAkYnJlYWtwb2ludHMtaGlkcGlgIHNldHRpbmcuJztcbiAgICB9XG4gIH1cblxuICBAaWYgbm90ICRuYW1lIGFuZCAkZGlyID09ICdvbmx5JyB7XG4gICAgQHdhcm4gJ2JyZWFrcG9pbnQoKTogT25seSBuYW1lZCBtZWRpYSBxdWVyaWVzIGNhbiBoYXZlIGFuIGBvbmx5YCByYW5nZS4nO1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8vIE9ubHkgJ29ubHknIGFuZCAndXAnIGhhdmUgYSBtaW4gbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICd1cCcge1xuICAgICRicC1taW46IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gIH1cbiAgLy8gT25seSAnb25seScgYW5kICdkb3duJyBoYXZlIGEgbWF4IGxpbWl0LlxuICBAaWYgJGRpciA9PSAnb25seScgb3IgJGRpciA9PSAnZG93bicge1xuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIGEgdmFsdWUsIHVzZSBpdCBhcyBtYXggbGltaXQuXG4gICAgQGlmIG5vdCAkbmFtZSB7XG4gICAgICAkYnAtbWF4OiBpZigkaGlkcGksIHN0cmlwLXVuaXQoJGJwKSwgLXpmLWJwLXRvLWVtKCRicCkpO1xuICAgIH1cbiAgICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBuYW1lZCwgdGhlIG1heCBsaW1pdCBpcyB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnQgLSAxcHguXG4gICAgQGVsc2UgaWYgJGJwLW5leHQge1xuICAgICAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAgICAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9pc3N1ZXMvMTEzMTNcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgJGJwLW5leHQgLSBkaXZpZGUoMSwgJHN0ZC13ZWItZHBpKSwgLXpmLWJwLXRvLWVtKCRicC1uZXh0KSAtIDAuMDAxMjUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEdlbmVyYXRlIHRoZSBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSBtaW4gYW5kIG1heCBsaW1pdHMuXG4gIEBpZiAkaGlkcGkge1xuICAgIC8vIEdlbmVyYXRlIHZhbHVlcyBpbiBEUEkgaW5zdGVhZCBvZiBEUFBYIGZvciBhbiBJRTktMTEvT3BlcmEgbWluaSBjb21wYXRpYmlsaXR5LlxuICAgIC8vIFNlZSBodHRwczovL2Nhbml1c2UuY29tLyNmZWF0PWNzcy1tZWRpYS1yZXNvbHV0aW9uXG4gICAgJGJwLW1pbi1kcGk6IGlmKCRicC1taW4sICRicC1taW4gKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWluKTtcbiAgICAkYnAtbWF4LWRwaTogaWYoJGJwLW1heCwgJGJwLW1heCAqICRzdGQtd2ViLWRwaSAqIDFkcGksICRicC1tYXgpO1xuICAgIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgICAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4LCAnLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvJywgJy13ZWJraXQtbWF4LWRldmljZS1waXhlbC1yYXRpbycpLFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbi1kcGksICRicC1tYXgtZHBpLCAnbWluLXJlc29sdXRpb24nLCAnbWF4LXJlc29sdXRpb24nKSxcbiAgICAgICcsICcpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIC16Zi1icC1qb2luKCRicC1taW4sICRicC1tYXgpO1xuICB9XG59XG5cbi8vLyBXcmFwcyBhIG1lZGlhIHF1ZXJ5IGFyb3VuZCB0aGUgY29udGVudCB5b3UgcHV0IGluc2lkZSB0aGUgbWl4aW4uIFRoaXMgbWl4aW4gYWNjZXB0cyBhIG51bWJlciBvZiB2YWx1ZXM6XG4vLy8gIC0gSWYgYSBzdHJpbmcgaXMgcGFzc2VkLCB0aGUgbWl4aW4gd2lsbCBsb29rIGZvciBpdCBpbiB0aGUgYCRicmVha3BvaW50c2AgYW5kIGAkYnJlYWtwb2ludHMtaGlkcGlgIG1hcHMsIGFuZCB1c2UgYSBtZWRpYSBxdWVyeSB0aGVyZS5cbi8vLyAgLSBJZiBhIHBpeGVsIHZhbHVlIGlzIHBhc3NlZCwgaXQgd2lsbCBiZSBjb252ZXJ0ZWQgdG8gYW4gZW0gdmFsdWUgdXNpbmcgYCRnbG9iYWwtZm9udC1zaXplYCBhcyB0aGUgYmFzZS5cbi8vLyAgLSBJZiBhIHJlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB1bml0IHdpbGwgYmUgY2hhbmdlZCB0byBlbS5cbi8vLyAgLSBJZiBhbiBlbSB2YWx1ZSBpcyBwYXNzZWQsIHRoZSB2YWx1ZSB3aWxsIGJlIHVzZWQgYXMtaXMuXG4vLy9cbi8vLyBJZiBtdWx0aXBsZSB2YWx1ZXMgYXJlIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgZ2VuZXJhdGUgYSBtZWRpYSBxdWVyeSBmb3IgZWFjaCBvZiB0aGVtIGFzIGRlc2NyaWJlZCBhYm92ZS5cbi8vLyBTaW5jZSB0aGUgY29udGVudCBpcyBkdXBsaWNhdGVkIGZvciBlYWNoIGJyZWFrcG9pbnQsIHRoaXMgbWl4aW4gc2hvdWxkIG9ubHkgYmUgdXNlZCB3aXRoIHByb3BlcnRpZXMgdGhhdFxuLy8vIGNoYW5nZSBhY3Jvc3MgYnJlYWtwb2ludHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkdmFsdWVzLi4uIC0gQnJlYWtwb2ludCBuYW1lIG9yIHB4L3JlbS9lbSB2YWx1ZSB0byBwcm9jZXNzLlxuLy8vXG4vLy8gQG91dHB1dCBJZiB0aGUgYnJlYWtwb2ludCBpcyBcIjBweCBhbmQgbGFyZ2VyXCIsIG91dHB1dHMgdGhlIGNvbnRlbnQgYXMtaXMuIE90aGVyd2lzZSwgb3V0cHV0cyB0aGUgY29udGVudCB3cmFwcGVkIGluIGEgbWVkaWEgcXVlcnkuXG5AbWl4aW4gYnJlYWtwb2ludCgkdmFsdWVzLi4uKSB7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCR2YWx1ZXMpIHtcbiAgICAkdmFsdWU6IG50aCgkdmFsdWVzLCAkaSk7XG4gICAgJHN0cjogYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgICRicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCBudGgoJHZhbHVlLCAxKSk7XG4gICAgJHBicDogaW5kZXgoJC16Zi1icmVha3BvaW50cy1rZXlzLCAkcHJpbnQtYnJlYWtwb2ludCk7XG4gICAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgICAkZGlyOiBpZihsZW5ndGgoJHZhbHVlKSA+IDEsIG50aCgkdmFsdWUsIDIpLCB1cCk7XG5cbiAgICAkb2xkLXpmLXNpemU6IG51bGw7XG5cbiAgICAvLyBNYWtlIGJyZWFrcG9pbnQgc2l6ZSBhdmFpbGFibGUgYXMgYSB2YXJpYWJsZVxuICAgIEBpZiBnbG9iYWwtdmFyaWFibGUtZXhpc3RzKC16Zi1zaXplKSB7XG4gICAgICAkb2xkLXpmLXNpemU6ICQtemYtc2l6ZTtcbiAgICB9XG4gICAgJC16Zi1zaXplOiBudGgoJHZhbHVlLCAxKSAhZ2xvYmFsOyAvLyBnZXQgdGhlIGZpcnN0IHZhbHVlIHRvIGFjY291bnQgZm9yIGBvbmx5YCBhbmQgYGRvd25gIGtleXdvcmRzXG5cbiAgICAvLyBJZiAkc3RyIGlzIHN0aWxsIGFuIGVtcHR5IHN0cmluZywgbm8gbWVkaWEgcXVlcnkgaXMgbmVlZGVkXG4gICAgQGlmICRzdHIgPT0gJycge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgLy8gT3RoZXJ3aXNlLCB3cmFwIHRoZSBjb250ZW50IGluIGEgbWVkaWEgcXVlcnlcbiAgICBAZWxzZSB7XG4gICAgICAvLyBGb3IgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuIG9yIGVxdWFsIHRvICRwcmludC1icmVha3BvaW50LCBhZGQgcHJpbnQgdG8gdGhlIG1lZGlhIHR5cGVzXG4gICAgICAvLyBnZW5lcmF0ZSBwcmludCBpZiB0aGUgYnJlYWtwb2ludCBhZmZlY3RzIHRoZSBwcmludC1icmVha3BvaW50IChvciBzbWFsbGVyKS5cbiAgICAgIC8vIFRoaXMgbWVhbnMgdGhlIGN1cnJlbnQgY29uZGl0aW9uIG9ubHkgbmVlZHMgdG8gYmUgZXh0ZW5kZWQgc28gJ2Rvd24nIGFsd2F5cyBnZW5lcmF0ZXMgcHJpbnQuXG4gICAgICBAaWYgJGJwICE9IG51bGwgYW5kICgkYnAgPD0gJHBicCBvciAkZGlyID09IGRvd24pIHtcbiAgICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kICN7JHN0cn0ge1xuICAgICAgICAgIEBjb250ZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gQ29udmVydHMgdGhlIGJyZWFrcG9pbnRzIG1hcCB0byBhIFVSTC1lbmNvZGVkIHN0cmluZywgbGlrZSB0aGlzOiBga2V5MT12YWx1ZTEma2V5Mj12YWx1ZTJgLiBUaGUgdmFsdWUgaXMgdGhlbiBkcm9wcGVkIGludG8gdGhlIENTUyBmb3IgYSBzcGVjaWFsIGA8bWV0YT5gIHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0LiBUaGlzIGlzIGhvdyB3ZSB0cmFuc2ZlciB2YWx1ZXMgZnJvbSBTYXNzIHRvIEphdmFTY3JpcHQsIHNvIHRoZXkgY2FuIGJlIGRlZmluZWQgaW4gb25lIHBsYWNlLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gY29udmVydC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IEEgc3RyaW5nIGNvbnRhaW5pbmcgdGhlIG1hcCdzIGNvbnRlbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC1zZXJpYWxpemUoJG1hcCkge1xuICAkc3RyOiAnJztcbiAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICRzdHI6ICRzdHIgKyAka2V5ICsgJz0nICsgLXpmLWJwLXRvLWVtKCR2YWx1ZSkgKyAnJic7XG4gIH1cbiAgJHN0cjogc3RyLXNsaWNlKCRzdHIsIDEsIC0yKTtcblxuICBAcmV0dXJuICRzdHI7XG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IGtleSBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRrZXkgLSBLZXkgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSB2YWx1ZSBmb3IgdGhlIGtleSBhZnRlciBgJGtleWAsIGlmIGAka2V5YCB3YXMgZm91bmQuIElmIGAka2V5YCB3YXMgbm90IGZvdW5kLCBvciBgJGtleWAgd2FzIHRoZSBsYXN0IHZhbHVlIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dCgkbWFwLCAka2V5KSB7XG5cbiAgLy8gU3RvcmUgdGhlIGtleXMgb2YgdGhlIG1hcCBhcyBhIGxpc3RcbiAgJHZhbHVlczogbWFwLWtleXMoJG1hcCk7XG5cbiAgJGk6IDA7XG5cbiAgLy8gSWYgdGhlIEtleSBFeGlzdHMsIEdldCB0aGUgaW5kZXggb2YgdGhlIGtleSB3aXRoaW4gdGhlIG1hcCBhbmQgYWRkIDEgdG8gaXQgZm9yIHRoZSBuZXh0IGJyZWFrcG9pbnQgaW4gdGhlIG1hcFxuICBAaWYgKG1hcC1oYXMta2V5KCRtYXAsICRrZXkpKSB7XG4gICAgJGk6IGluZGV4KCR2YWx1ZXMsICRrZXkpICsgMTtcbiAgfVxuXG4gIC8vIElmIHRoZSBrZXkgZG9lc24ndCBleGlzdCwgb3IgaXQncyB0aGUgbGFzdCBrZXkgaW4gdGhlIG1hcCwgcmV0dXJuIG51bGxcbiAgQGlmICgkaSA+IGxlbmd0aCgkbWFwKSBvciAkaSA9PSAwKSB7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgcmV0dXJuIHRoZSB2YWx1ZVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsIG50aCgkdmFsdWVzLCAkaSkpO1xuICB9XG5cbn1cblxuLy8vIEZpbmQgdGhlIG5leHQgbnVtYmVyIGluIGEgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtNYXB9ICRtYXAgLSBNYXAgdG8gdHJhdmVyc2UuXG4vLy8gQHBhcmFtIHtNaXhlZH0gJG51bWJlciAtIE51bWJlciB0byB1c2UgYXMgYSBzdGFydGluZyBwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtNaXhlZH0gVGhlIG51bWJlciBmb2xsb3dpbmcgYCRudW1iZXJgLCBpZiBgJG51bWJlcmAgd2FzIGZvdW5kLiBJZiBgJG51bWJlcmAgd2FzIG5vdCBmb3VuZCwgb3IgYCRudW1iZXJgIHdhcyB0aGUgYmlnZ2VzdCBudW1iZXIgaW4gdGhlIG1hcCwgcmV0dXJucyBgbnVsbGAuXG5AZnVuY3Rpb24gLXpmLW1hcC1uZXh0LW51bWJlcigkbWFwLCAkbnVtYmVyKSB7XG5cbiAgJG5leHQtbnVtYmVyOiBudWxsO1xuXG4gIEBlYWNoICRrLCAkdiBpbiAkbWFwIHtcbiAgICBAaWYgdHlwZS1vZigkdikgPT0gJ251bWJlcicgYW5kICR2ID4gJG51bWJlciBhbmQgKCRuZXh0LW51bWJlciA9PSBudWxsIG9yICR2IDwgJG5leHQtbnVtYmVyKSB7XG4gICAgICAkbmV4dC1udW1iZXI6ICR2O1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5leHQtbnVtYmVyO1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBsYXN0IGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigka2V5KSB7XG4gICRsaXN0OiAoKTtcbiAgJGZvdW5kLWtleTogZmFsc2U7XG5cbiAgQGVhY2ggJG5hbWUgaW4gJC16Zi1icmVha3BvaW50cy1rZXlzIHtcbiAgICBAaWYgKCRuYW1lID09ICRrZXkpIHtcbiAgICAgICRmb3VuZC1rZXk6IHRydWU7XG4gICAgfVxuICAgIEBpZiBub3QgJGZvdW5kLWtleSB7XG4gICAgICAkbGlzdDogYXBwZW5kKCRsaXN0LCAkbmFtZSk7XG4gICAgfVxuICB9XG4gIEByZXR1cm4gJGxpc3Q7XG59XG5cbi8vLyBSZXR1cm4gYSBsaXN0IG9mIG91ciBuYW1lZCBicmVha3BvaW50cyBsZXNzIHRoYW4gJGtleS4gVXNlZnVsIGZvciBkZWFsaW5nIHdpdGhcbi8vLyByZXNwb25zaXZlIGd1dHRlcnMgZm9yIHRoZSBncmlkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IC0gYSBuYW1lZCBvciBub24tbmFtZWQgYnJlYWtwb2ludC5cbi8vL1xuLy8vIEByZXR1cm5zIHtBcnJheX0gVGhlIGxpc3Qgb2YgYnJlYWtwb2ludHMgdXAgdG8gYW5kLiBJZiAka2V5IGlzIGF1dG8sIHJldHVybnMgYnJlYWtwb2ludHMgYWJvdmUgdGhlIHplcm9cbkBmdW5jdGlvbiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCRicmVha3BvaW50KSB7XG4gICRsYXN0OiAkLXpmLXplcm8tYnJlYWtwb2ludDtcbiAgJGZvdW5kOiBmYWxzZTtcblxuICAkdmFsdWU6IHVuaXRsZXNzLWNhbGMoJGJyZWFrcG9pbnQsIDFweCk7XG4gIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICBAaWYgdW5pdGxlc3MtY2FsYygkdmFsKSA+ICR2YWx1ZSB7XG4gICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgIH0gQGVsc2Uge1xuICAgICAgICAkbGFzdDogJGtleTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRsYXN0O1xufVxuXG4vLy8gR2V0IGEgdmFsdWUgZm9yIGEgYnJlYWtwb2ludCBmcm9tIGEgcmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBzaW5nbGUgdmFsdWUsIHJldHVybiBpdCByZWdhcmRsZXNzIG9mIGAkdmFsdWVgLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgaGFzIHRoZSBrZXkgYCR2YWx1ZWAsIHRoZSBleGFjdCBicmVha3BvaW50IHZhbHVlIGlzIHJldHVybmVkLlxuLy8vIC0gSWYgdGhlIGNvbmZpZyBpcyBhIG1hcCBhbmQgZG9lcyAqbm90KiBoYXZlIHRoZSBicmVha3BvaW50LCB0aGUgdmFsdWUgbWF0Y2hpbmcgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgaW4gdGhlIGNvbmZpZyBtYXAgaXMgcmV0dXJuZWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRtYXAgLSBSZXNwb25zaXZlIGNvbmZpZyBtYXAgb3Igc2luZ2xlIHZhbHVlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIC0gQnJlYWtwb2ludCBuYW1lIHRvIHVzZS5cbi8vL1xuLy8vIEByZXR1cm4ge01peGVkfSBUaGUgY29ycmVzcG9uZGluZyBicmVha3BvaW50IHZhbHVlLlxuQGZ1bmN0aW9uIC16Zi1nZXQtYnAtdmFsKCRtYXAsICR2YWx1ZSkge1xuICAvLyBJZiB0aGUgZ2l2ZW4gbWFwIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXRcbiAgQGlmIHR5cGUtb2YoJG1hcCkgPT0gJ251bWJlcicge1xuICAgIEByZXR1cm4gJG1hcDtcbiAgfVxuXG5cbiAgLy8gQ2hlY2sgaWYgdGhlIGJyZWFrcG9pbnQgbmFtZSBleGlzdHMgZ2xvYmFsbHlcbiAgQGlmIG5vdCBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsICR2YWx1ZSkge1xuICAgIEBpZiB0eXBlLW9mKCR2YWx1ZSkgPT0gJ251bWJlcicge1xuICAgICAgJHZhbHVlOiAtemYtY2xvc2VzdC1uYW1lZC1icmVha3BvaW50KCR2YWx1ZSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICBAcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGluIHRoZSBsb2NhbCBjb25maWcgbWFwXG4gIEBlbHNlIGlmIG1hcC1oYXMta2V5KCRtYXAsICR2YWx1ZSkge1xuICAgIC8vIElmIGl0IGRvZXMsIGp1c3QgcmV0dXJuIHRoZSB2YWx1ZVxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkdmFsdWUpO1xuICB9XG4gIC8vIE90aGVyd2lzZSwgZmluZCB0aGUgbmV4dCBsb3dlc3QgYnJlYWtwb2ludCBhbmQgcmV0dXJuIHRoYXQgdmFsdWVcbiAgQGVsc2Uge1xuICAgICRhbmNob3I6IG51bGw7XG4gICAgJGZvdW5kOiBmYWxzZTtcblxuICAgIEBlYWNoICRrZXksICR2YWwgaW4gJGJyZWFrcG9pbnRzIHtcbiAgICAgIEBpZiBub3QgJGZvdW5kIHtcbiAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRtYXAsICRrZXkpIHtcbiAgICAgICAgICAkYW5jaG9yOiAka2V5O1xuICAgICAgICB9XG4gICAgICAgIEBpZiAka2V5ID09ICR2YWx1ZSB7XG4gICAgICAgICAgJGZvdW5kOiB0cnVlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQHJldHVybiBtYXAtZ2V0KCRtYXAsICRhbmNob3IpO1xuICB9XG59XG5cbi8vLyBSZXR1cm4gdGhlIGJlc3QgYnJlYWtwb2ludCB0byB1c2UgYWNjb3JkaW5nIHRvIHRoZSBjYWxsaW5nIGNvbnRleHQuIEl0IHJldHVybnMgaW4gb3JkZXI6XG4vLy8gMS4gdGhlIGdpdmVuIGAkdmFsdWVgIGFyZ3VtZW50IGlmIGl0IGlzIG5vdCBudWxsLlxuLy8vIDIuIHRoZSBnbG9iYWwgYnJlYWtwb2ludCBjb250ZXh0IGAkLXpmLXNpemVgIGlmIGl0IGlzIG5vdCBudWxsIChsaWtlIGlmIGNhbGxlZCBpbnNpZGUgdGhlbiBgYnJlYWtwb2ludCgpYCBtaXhpbilcbi8vLyAzLiB0aGUgZ2l2ZW4gYCRkZWZhdWx0YCBhcmd1bWVudC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHZhbHVlIFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGluIHByaW9yaXR5IGlmIG5vbi1udWxsLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRlZmF1bHQgW251bGxdIC0gQnJlYWtwb2ludCB0byB1c2UgYnkgZGVmYXVsdCBpZiBubyBvdGhlciB2YWx1ZSBjYW4gYmUgdXNlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0tleXdvcmR9IFRoZSByZXNvbHZlZCBicmVha3BvaW50LlxuQGZ1bmN0aW9uIC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJHZhbHVlOiBudWxsLCAkZGVmYXVsdDogbnVsbCkge1xuICBAaWYgKCR2YWx1ZSAhPSBudWxsKSB7XG4gICAgQHJldHVybiAkdmFsdWU7XG4gIH1cbiAgQGVsc2UgaWYgKHZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkgYW5kIHR5cGUtb2YoJC16Zi1zaXplKSAhPSAnbnVtYmVyJykgYW5kICQtemYtc2l6ZSAhPSBudWxsIHtcbiAgICBAcmV0dXJuICQtemYtc2l6ZTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAkZGVmYXVsdDtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIG1lZGlhIHF1ZXJ5IHN0cmluZyBmcm9tIHRoZSBnaXZlbiBtaW4gYW5kL29yIG1heCBsaW1pdHMuXG4vLy8gSWYgYSBsaW1pdCBpcyBlcXVhbCB0byBgbnVsbGAgb3IgYDBgLCBpdCBpcyBpZ25vcmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtaW4gWzBdIC0gTWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWF4IFswXSAtIE1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG1pbi1uYW1lIFsnbWluLXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtaW4gbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRkZWxpbWl0ZXIgWydtYXgtd2lkdGgnXSAtIE5hbWUgb2YgdGhlIG1heCBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vL1xuLy8vIEByZXR1cm5zIHtTdHJpbmd9IE1lZGlhIFF1ZXJ5IHN0cmluZy5cbkBmdW5jdGlvbiAtemYtYnAtam9pbihcbiAgJG1pbjogMCxcbiAgJG1heDogMCxcbiAgJG1pbi1uYW1lOiAnbWluLXdpZHRoJyxcbiAgJG1heC1uYW1lOiAnbWF4LXdpZHRoJ1xuKSB7XG4gIEByZXR1cm4gemYtc3RyLWpvaW4oXG4gICAgaWYoJG1pbiBhbmQgJG1pbiA+IDAsICcoI3skbWluLW5hbWV9OiAjeyRtaW59KScsIG51bGwpLFxuICAgIGlmKCRtYXggYW5kICRtYXggPiAwLCAnKCN7JG1heC1uYW1lfTogI3skbWF4fSknLCBudWxsKSxcbiAgICAnIGFuZCAnKTtcbn1cblxuJHNtYWxsLXVwOiAnJztcbiRzbWFsbC1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgc21hbGwpIHtcbiAgJHNtYWxsLXVwOiBzY3JlZW47XG4gICRzbWFsbC1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChzbWFsbCBvbmx5KX0nKTtcbn1cblxuJG1lZGl1bS11cDogJyc7XG4kbWVkaXVtLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBtZWRpdW0pIHtcbiAgJG1lZGl1bS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtKX0nKTtcbiAgJG1lZGl1bS1vbmx5OiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludChtZWRpdW0gb25seSl9Jyk7XG59XG5cbiRsYXJnZS11cDogJyc7XG4kbGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIGxhcmdlKSB7XG4gICRsYXJnZS11cDogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2UpfScpO1xuICAkbGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobGFyZ2Ugb25seSl9Jyk7XG59XG5cbiR4bGFyZ2UtdXA6ICcnO1xuJHhsYXJnZS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgeGxhcmdlKSB7XG4gICR4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSl9Jyk7XG4gICR4bGFyZ2Utb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoeGxhcmdlIG9ubHkpfScpO1xufVxuXG4keHhsYXJnZS11cDogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHh4bGFyZ2UpIHtcbiAgJHh4bGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHh4bGFyZ2UpfScpO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHJldmVhbFxuLy8vL1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgbW9kYWwuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB3aWR0aCBvZiBhIG1vZGFsLCB3aXRoIG5vIGNsYXNzIGFwcGxpZWQuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXdpZHRoOiA2MDBweCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbWF4aW11bSB3aWR0aCBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgaW5zaWRlIGEgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZyAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3IgbW9kYWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vLyB6LWluZGV4IGZvciBtb2RhbHMuIFRoZSBvdmVybGF5IHVzZXMgdGhpcyB2YWx1ZSwgd2hpbGUgdGhlIG1vZGFsIGl0c2VsZiB1c2VzIHRoaXMgdmFsdWUgcGx1cyBvbmUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kcmV2ZWFsLXppbmRleDogMTAwNSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgb3ZlcmxheXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC40NSkgIWRlZmF1bHQ7XG5cblxuLy8gUGxhY2Vob2xkZXIgc2VsZWN0b3IgZm9yIG1lZGl1bS1hbmQtdXAgbW9kYWxzXG4vLyBQcmV2ZW50cyBkdXBsaWNhdGUgQ1NTIHdoZW4gZGVmaW5pbmcgbXVsdGlwbGUgUmV2ZWFsIHNpemVzXG4vLyBUaGlzIHNob3VsZCBiZSBpbiB0aGUgc2FtZSBicmVha3BvaW50IHRoZW4gYEBtaXhpbiByZXZlYWwtbW9kYWwtd2lkdGhgXG5AaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAlcmV2ZWFsLWNlbnRlcmVkIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG5cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIG1vZGFsIG92ZXJsYXkuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kXSAtIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIG92ZXJsYXkuXG5AbWl4aW4gcmV2ZWFsLW92ZXJsYXkoJGJhY2tncm91bmQ6ICRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kKSB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleDtcblxuICBkaXNwbGF5OiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xufVxuXG4vLy8gQWRkcyBiYXNlIHN0eWxlcyBmb3IgYSBtb2RhbC5cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSB7XG4gIHotaW5kZXg6ICRyZXZlYWwtemluZGV4ICsgMTtcbiAgLy8gV29ya2Fyb3VuZCBhbmRyb2lkIGJyb3dzZXIgei1pbmRleCBidWdcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuXG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRyZXZlYWwtcGFkZGluZztcblxuICBib3JkZXI6ICRyZXZlYWwtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJldmVhbC1iYWNrZ3JvdW5kO1xuXG4gIEBpbmNsdWRlIGRpc2FibGUtbW91c2Utb3V0bGluZTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgLy8gRXh0ZW5kcyBtdXN0IGJlIG1hZGUgb3V0c2lkZSBvZiBicmVha3BvaW50cyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5ld2VyIFNhc3MgdmVyc2lvbnMgKGxpYnNhc3MgdjMuNSlcbiAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG5cbiAgLy8vIERpc2FibGVzIHRoZSBzY3JvbGwgd2hlbiBSZXZlYWwgaXMgc2hvd24gdG8gcHJldmVudCB0aGUgYmFja2dyb3VuZCBmcm9tIHNoaWZ0aW5nXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmLnpmLWhhcy1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIH1cblxuICAgIGJvZHkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMTAwcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCIvLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuQG1peGluIGZvdW5kYXRpb24tbm9ybWFsaXplKCkge1xuICAvKiEgbm9ybWFsaXplLmNzcyB2OC4wLjAgfCBNSVQgTGljZW5zZSB8IGdpdGh1Yi5jb20vbmVjb2xhcy9ub3JtYWxpemUuY3NzICovXG5cbiAgLy8gRG9jdW1lbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBsaW5lIGhlaWdodCBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFByZXZlbnQgYWRqdXN0bWVudHMgb2YgZm9udCBzaXplIGFmdGVyIG9yaWVudGF0aW9uIGNoYW5nZXMgaW4gaU9TLlxuXG4gIGh0bWwge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE1OyAvLyAxXG4gICAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIH1cblxuICAvLyBTZWN0aW9uc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgbWFyZ2luIGluIGFsbCBicm93c2Vycy5cblxuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBmb250IHNpemUgYW5kIG1hcmdpbiBvbiBgaDFgIGVsZW1lbnRzIHdpdGhpbiBgc2VjdGlvbmAgYW5kXG4gIC8vIGBhcnRpY2xlYCBjb250ZXh0cyBpbiBDaHJvbWUsIEZpcmVmb3gsIGFuZCBTYWZhcmkuXG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIG1hcmdpbjogMC42N2VtIDA7XG4gIH1cblxuICAvLyBHcm91cGluZyBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQWRkIHRoZSBjb3JyZWN0IGJveCBzaXppbmcgaW4gRmlyZWZveC5cbiAgLy8gMi4gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gRWRnZSBhbmQgSUUuXG5cbiAgaHIge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94OyAvLyAxXG4gICAgaGVpZ2h0OiAwOyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IC8vIDJcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBwcmUge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBUZXh0LWxldmVsIHNlbWFudGljc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgZ3JheSBiYWNrZ3JvdW5kIG9uIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cblxuICBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIC8vIDEuIFJlbW92ZSB0aGUgYm90dG9tIGJvcmRlciBpbiBDaHJvbWUgNTctXG4gIC8vIDIuIEFkZCB0aGUgY29ycmVjdCB0ZXh0IGRlY29yYXRpb24gaW4gQ2hyb21lLCBFZGdlLCBJRSwgT3BlcmEsIGFuZCBTYWZhcmkuXG5cbiAgYWJiclt0aXRsZV0ge1xuICAgIGJvcmRlci1ib3R0b206IDA7IC8vIDFcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHdlaWdodCBpbiBDaHJvbWUsIEVkZ2UsIGFuZCBTYWZhcmkuXG5cbiAgYixcbiAgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGNvZGUsXG4gIGtiZCxcbiAgc2FtcCB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHNtYWxsIHtcbiAgICBmb250LXNpemU6IDgwJTtcbiAgfVxuXG4gIC8vIFByZXZlbnQgYHN1YmAgYW5kIGBzdXBgIGVsZW1lbnRzIGZyb20gYWZmZWN0aW5nIHRoZSBsaW5lIGhlaWdodCBpblxuICAvLyBhbGwgYnJvd3NlcnMuXG5cbiAgc3ViLFxuICBzdXAge1xuICAgIGZvbnQtc2l6ZTogNzUlO1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICBzdWIge1xuICAgIGJvdHRvbTogLTAuMjVlbTtcbiAgfVxuXG4gIHN1cCB7XG4gICAgdG9wOiAtMC41ZW07XG4gIH1cblxuICAvLyBFbWJlZGRlZCBjb250ZW50XG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBib3JkZXIgb24gaW1hZ2VzIGluc2lkZSBsaW5rcyBpbiBJRSAxMC5cblxuICBpbWcge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIC8vIEZvcm1zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gMS4gQ2hhbmdlIHRoZSBmb250IHN0eWxlcyBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIFJlbW92ZSB0aGUgbWFyZ2luIGluIEZpcmVmb3ggYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIGlucHV0LFxuICBvcHRncm91cCxcbiAgc2VsZWN0LFxuICB0ZXh0YXJlYSB7XG4gICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7IC8vIDFcbiAgICBmb250LXNpemU6IDEwMCU7IC8vIDFcbiAgICBsaW5lLWhlaWdodDogMS4xNTsgLy8gMVxuICAgIG1hcmdpbjogMDsgLy8gMlxuICB9XG5cbiAgLy8gU2hvdyB0aGUgb3ZlcmZsb3cgaW4gSUUuXG4gIC8vIDEuIFNob3cgdGhlIG92ZXJmbG93IGluIEVkZ2UuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCB7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5oZXJpdGFuY2Ugb2YgdGV4dCB0cmFuc2Zvcm0gaW4gRWRnZSwgRmlyZWZveCwgYW5kIElFLlxuICAvLyAxLiBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uLFxuICBzZWxlY3QgeyAvLyAxXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuXG4gIGJ1dHRvbixcbiAgW3R5cGU9XCJidXR0b25cIl0sXG4gIFt0eXBlPVwicmVzZXRcIl0sXG4gIFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IGJ1dHRvbjtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgYm9yZGVyIGFuZCBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuICBbdHlwZT1cImJ1dHRvblwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJyZXNldFwiXTo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlci1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLy8gUmVzdG9yZSB0aGUgZm9jdXMgc3R5bGVzIHVuc2V0IGJ5IHRoZSBwcmV2aW91cyBydWxlLlxuXG4gIGJ1dHRvbjotbW96LWZvY3VzcmluZyxcbiAgW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwicmVzZXRcIl06LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwic3VibWl0XCJdOi1tb3otZm9jdXNyaW5nIHtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7XG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBwYWRkaW5nIGluIEZpcmVmb3guXG5cbiAgZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAuMzVlbSAwLjc1ZW0gMC42MjVlbTtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIHRleHQgd3JhcHBpbmcgaW4gRWRnZSBhbmQgSUUuXG4gIC8vIDIuIENvcnJlY3QgdGhlIGNvbG9yIGluaGVyaXRhbmNlIGZyb20gYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBJRS5cbiAgLy8gMy4gUmVtb3ZlIHRoZSBwYWRkaW5nIHNvIGRldmVsb3BlcnMgYXJlIG5vdCBjYXVnaHQgb3V0IHdoZW4gdGhleSB6ZXJvIG91dFxuICAvLyAgICBgZmllbGRzZXRgIGVsZW1lbnRzIGluIGFsbCBicm93c2Vycy5cblxuICBsZWdlbmQge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBjb2xvcjogaW5oZXJpdDsgLy8gMlxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAxXG4gICAgbWF4LXdpZHRoOiAxMDAlOyAvLyAxXG4gICAgcGFkZGluZzogMDsgLy8gM1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7IC8vIDFcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCB2ZXJ0aWNhbCBhbGlnbm1lbnQgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG5cbiAgcHJvZ3Jlc3Mge1xuICAgIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgMTArLlxuXG4gIHRleHRhcmVhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIDEuIEFkZCB0aGUgY29ycmVjdCBib3ggc2l6aW5nIGluIElFIDEwLlxuICAvLyAyLiBSZW1vdmUgdGhlIHBhZGRpbmcgaW4gSUUgMTAuXG5cbiAgW3R5cGU9XCJjaGVja2JveFwiXSxcbiAgW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDJcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGN1cnNvciBzdHlsZSBvZiBpbmNyZW1lbnQgYW5kIGRlY3JlbWVudCBidXR0b25zIGluIENocm9tZS5cblxuICBbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIG9kZCBhcHBlYXJhbmNlIGluIENocm9tZSBhbmQgU2FmYXJpLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBvdXRsaW5lIHN0eWxlIGluIFNhZmFyaS5cblxuICBbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgICBvdXRsaW5lLW9mZnNldDogLTJweDsgLy8gMlxuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBpbm5lciBwYWRkaW5nIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIG1hY09TLlxuXG4gIFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIHR5cGVzIGluIGlPUyBhbmQgU2FmYXJpLlxuICAvLyAyLiBDaGFuZ2UgZm9udCBwcm9wZXJ0aWVzIHRvIGBpbmhlcml0YCBpbiBTYWZhcmkuXG5cbiAgOjotd2Via2l0LWZpbGUtdXBsb2FkLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDFcbiAgICBmb250OiBpbmhlcml0OyAvLyAyXG4gIH1cblxuICAvLyBJbnRlcmFjdGl2ZVxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIEVkZ2UsIElFIDEwKywgYW5kIEZpcmVmb3guXG5cbiAgZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbGlzdC1pdGVtO1xuICB9XG5cbiAgLy8gTWlzY1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwKy5cblxuICB0ZW1wbGF0ZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIEFkZCB0aGUgY29ycmVjdCBkaXNwbGF5IGluIElFIDEwLlxuXG4gIFtoaWRkZW5dIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gRGlzYWJsZSBvdXRsaW5lIHdoZW4gaW50ZW50IGlzIGNsZWFybHkgbW91c2UgYW5kIHRvdWNoXG4gIFtkYXRhLXdoYXRpbnRlbnQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGludGVudD1cInRvdWNoXCJdLFxuICBbZGF0YS13aGF0aW5wdXQ9XCJtb3VzZVwiXSxcbiAgW2RhdGEtd2hhdGlucHV0PVwidG91Y2hcIl0ge1xuICAgICosICo6Zm9jdXMge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlIGlPUyBjYWxsb3V0cyB3aGVuIGRyYWdnYWJsZSBpcyBmYWxzZVxuICBbZHJhZ2dhYmxlPWZhbHNlXSB7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0OiBub25lO1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gc2Fzcy1saW50OmRpc2FibGUgbm8tY29sb3ItbGl0ZXJhbHMsIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcblxuLy8vL1xuLy8vIEBncm91cCBnbG9iYWxcbi8vLy9cblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8vIEZvbnQgc2l6ZSBhdHRyaWJ1dGUgYXBwbGllZCB0byBgPGh0bWw+YCBhbmQgYDxib2R5PmAuIFdlIHVzZSAxMDAlIGJ5IGRlZmF1bHQgc28gdGhlIHZhbHVlIGlzIGluaGVyaXRlZCBmcm9tIHRoZSB1c2VyJ3MgYnJvd3NlciBzZXR0aW5ncy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHdpZHRoIG9mIHlvdXIgc2l0ZS4gVXNlZCBieSB0aGUgZ3JpZCB0byBkZXRlcm1pbmUgcm93IHdpZHRoLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGxpbmUgaGVpZ2h0IGZvciBhbGwgdHlwZS4gYCRnbG9iYWwtbGluZWhlaWdodGAgaXMgMjRweCB3aGlsZSBgJGdsb2JhbC1mb250LXNpemVgIGlzIDE2cHhcbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbGluZWhlaWdodDogMS41ICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JzIHVzZWQgZm9yIGJ1dHRvbnMsIGNhbGxvdXRzLCBsaW5rcywgZXRjLiBUaGVyZSBtdXN0IGFsd2F5cyBiZSBhIGNvbG9yIGNhbGxlZCBgcHJpbWFyeWAuXG4vLy8gQHR5cGUgTWFwXG4kZm91bmRhdGlvbi1wYWxldHRlOiAoXG4gIFwicHJpbWFyeVwiOiAjMTc3OWJhLFxuICBcInNlY29uZGFyeVwiOiAjNzY3Njc2LFxuICBcInN1Y2Nlc3NcIjogIzNhZGI3NixcbiAgXCJ3YXJuaW5nXCI6ICNmZmFlMDAsXG4gIFwiYWxlcnRcIjogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIHNhZmUgcGFkZGluZyBvbiB0aGUgYm9keSBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRldmljZXMgKGkuZS4gcGhvbmVzIHdpdGggbm90Y2hlcylcbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1zYWZlLXBhZGRpbmc6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgYW50aWFsaWFzZWQgdHlwZSwgdXNpbmcgdGhlIGAtd2Via2l0LWZvbnQtc21vb3RoaW5nYCBhbmQgYC1tb3otb3N4LWZvbnQtc21vb3RoaW5nYCBDU1MgcHJvcGVydGllcy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYm9keS1hbnRpYWxpYXNlZDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBtYXJnaW4gb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIHBhZGRpbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwb3NpdGlvbmluZyBvbiBjb21wb25lbnRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1wb3NpdGlvbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBub3JtYWwgdHlwZS5cbi8vLyBAdHlwZSBLZXl3b3JkIHwgTnVtYmVyXG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCBmb250IHdlaWdodCB1c2VkIGZvciBib2xkIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgZWxlbWVudHMgdGhhdCBoYXZlIGEgYm9yZGVyIHJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcmFkaXVzOiAwICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gQ2FuIGJlIG92ZXJ3cml0dGVuIGF0IGluZGl2aWR1YWwgbWVudSBjb21wb25lbnQgbGV2ZWwuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1lbnUtcGFkZGluZzogMC43cmVtIDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIG1lbnUgc3R5bGVzLiBOZXN0ZWQgbWFyZ2luIGZvciBzdWJtZW51LlxuJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW46IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTZXRzIHRoZSB0ZXh0IGRpcmVjdGlvbiBvZiB0aGUgQ1NTLiBDYW4gYmUgZWl0aGVyIGBsdHJgIG9yIGBydGxgLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtdGV4dC1kaXJlY3Rpb246IGx0ciAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgZmxleGJveCBmb3IgY29tcG9uZW50cyB0aGF0IHN1cHBvcnQgaXQuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gRW5hYmxlZCByZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBwcm90b3R5cGVzIGlmIGFwcGxpY2FibGVcbi8vLyBAdHlwZSBCb29sZWFuXG4kZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50czogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vLyBCdXR0b24gY3Vyc29yJ3MgdmFsdWUsIGBhdXRvYCBieSBkZWZhdWx0XG4vLy8gQHR5cGUgS2V5d29yZFxuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvICFkZWZhdWx0O1xuXG5AaWYgbm90IG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpIHtcbiAgQGVycm9yICdJbiAkZm91bmRhdGlvbi1wYWxldHRlLCB5b3UgbXVzdCBoYXZlIGEgY29sb3IgbmFtZWQgXCJwcmltYXJ5XCIuJztcbn1cblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIHRleHQgZGlyZWN0aW9uXG4kZ2xvYmFsLWxlZnQ6IGlmKCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCByaWdodCwgbGVmdCk7XG4kZ2xvYmFsLXJpZ2h0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgbGVmdCwgcmlnaHQpO1xuXG4vLyBJbnRlcm5hbCB2YXJpYWJsZSB0aGF0IGNvbnRhaW5zIHRoZSBmbGV4IGp1c3RpZnlpbmcgb3B0aW9uc1xuJC16Zi1mbGV4LWp1c3RpZnk6IC16Zi1mbGV4LWp1c3RpZnkoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbik7XG5cbi8vLyBHbG9iYWwgdG9sZXJhbmNlIGZvciBjb2xvciBwaWNrIGNvbnRyYXN0LlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMCAhZGVmYXVsdDtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGVzIHVzZWQgZm9yIGNvbG9yc1xuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG5AbWl4aW4gZm91bmRhdGlvbi1nbG9iYWwtc3R5bGVzIHtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1ub3JtYWxpemU7XG5cbiAgLy8gVGhlc2Ugc3R5bGVzIGFyZSBhcHBsaWVkIHRvIGEgPG1ldGE+IHRhZywgd2hpY2ggaXMgcmVhZCBieSB0aGUgRm91bmRhdGlvbiBKYXZhU2NyaXB0XG4gIC5mb3VuZGF0aW9uLW1xIHtcbiAgICBmb250LWZhbWlseTogJyN7LXpmLWJwLXNlcmlhbGl6ZSgkYnJlYWtwb2ludHMpfSc7XG4gIH1cblxuICBodG1sIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGZvbnQtc2l6ZTogJGdsb2JhbC1mb250LXNpemU7XG4gIH1cblxuICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAqLFxuICAqOjpiZWZvcmUsXG4gICo6OmFmdGVyIHtcbiAgICBib3gtc2l6aW5nOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gRGVmYXVsdCBib2R5IHN0eWxlc1xuICBib2R5IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpZiAoJGJvZHktc2FmZS1wYWRkaW5nKSB7XG4gICAgICAvLyB1c2luZyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgdG8gYWNjb3VudCBmb3Igbm9uLXJlY3Rhbmd1bGFyIGRpc3BsYXlzIGUuZy4gcGhvbmVzIHdpdGggbm90Y2hlc1xuICAgICAgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpO1xuICAgICAgcGFkZGluZy1ib3R0b206IGVudihzYWZlLWFyZWEtaW5zZXQtYm90dG9tKTtcbiAgICAgIHBhZGRpbmctbGVmdDogZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KTtcbiAgICB9XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gIH1cblxuICAvLyBNYWtlIHJlc2V0IGluaGVyaXQgZm9udC1mYW1pbHkgaW5zdGVhZCBvZiBzZXR0aW5ncyBzYW5zLXNlcmlmXG4gIGJ1dHRvbixcbiAgaW5wdXQsXG4gIG9wdGdyb3VwLFxuICBzZWxlY3QsXG4gIHRleHRhcmVhIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIEludGVybmFsIGNsYXNzZXMgdG8gc2hvdy9oaWRlIGVsZW1lbnRzIGluIEphdmFTY3JpcHRcbiAgLmlzLXZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaXMtaGlkZGVuIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vICBGb3VuZGF0aW9uIGZvciBTaXRlcyBTZXR0aW5nc1xuLy8gIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vL1xuLy8gIFRhYmxlIG9mIENvbnRlbnRzOlxuLy9cbi8vICAgMS4gR2xvYmFsXG4vLyAgIDIuIEJyZWFrcG9pbnRzXG4vLyAgIDMuIFRoZSBHcmlkXG4vLyAgIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gICA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vICAgNi4gQWJpZGVcbi8vICAgNy4gQWNjb3JkaW9uXG4vLyAgIDguIEFjY29yZGlvbiBNZW51XG4vLyAgIDkuIEJhZGdlXG4vLyAgMTAuIEJyZWFkY3J1bWJzXG4vLyAgMTEuIEJ1dHRvblxuLy8gIDEyLiBCdXR0b24gR3JvdXBcbi8vICAxMy4gQ2FsbG91dFxuLy8gIDE0LiBDYXJkXG4vLyAgMTUuIENsb3NlIEJ1dHRvblxuLy8gIDE2LiBEcmlsbGRvd25cbi8vICAxNy4gRHJvcGRvd25cbi8vICAxOC4gRHJvcGRvd24gTWVudVxuLy8gIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gIDIwLiBGb3Jtc1xuLy8gIDIxLiBMYWJlbFxuLy8gIDIyLiBNZWRpYSBPYmplY3Rcbi8vICAyMy4gTWVudVxuLy8gIDI0LiBNZXRlclxuLy8gIDI1LiBPZmYtY2FudmFzXG4vLyAgMjYuIE9yYml0XG4vLyAgMjcuIFBhZ2luYXRpb25cbi8vICAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAgMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vICAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAgMzMuIFByb3RvdHlwZSBEaXNwbGF5XG4vLyAgMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vICAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vICAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAgMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAgMzkuIFByb3RvdHlwZSBTZXBhcmF0b3Jcbi8vICA0MC4gUHJvdG90eXBlIFNoYWRvd1xuLy8gIDQxLiBQcm90b3R5cGUgU2l6aW5nXG4vLyAgNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAgNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vICA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vICA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAgNDYuIFJlc3BvbnNpdmUgRW1iZWRcbi8vICA0Ny4gUmV2ZWFsXG4vLyAgNDguIFNsaWRlclxuLy8gIDQ5LiBTd2l0Y2hcbi8vICA1MC4gVGFibGVcbi8vICA1MS4gVGFic1xuLy8gIDUyLiBUaHVtYm5haWxcbi8vICA1My4gVGl0bGUgQmFyXG4vLyAgNTQuIFRvb2x0aXBcbi8vICA1NS4gVG9wIEJhclxuLy8gIDU2LiBYeSBHcmlkXG5cbkBpbXBvcnQgJ3V0aWwvdXRpbCc7XG5cbi8vIDEuIEdsb2JhbFxuLy8gLS0tLS0tLS0tXG5cbiRnbG9iYWwtZm9udC1zaXplOiAxMDAlO1xuJGdsb2JhbC13aWR0aDogcmVtLWNhbGMoMTIwMCk7XG4kZ2xvYmFsLWxpbmVoZWlnaHQ6IDEuNTtcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG4kbGlnaHQtZ3JheTogI2U2ZTZlNjtcbiRtZWRpdW0tZ3JheTogI2NhY2FjYTtcbiRkYXJrLWdyYXk6ICM4YThhOGE7XG4kYmxhY2s6ICMwYTBhMGE7XG4kd2hpdGU6ICNmZWZlZmU7XG4kYm9keS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYm9keS1mb250LWNvbG9yOiAkYmxhY2s7XG4kYm9keS1mb250LWZhbWlseTogJ0hlbHZldGljYSBOZXVlJywgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDc2OHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuKTtcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pO1xuJHByaW50LWJyZWFrcG9pbnQ6IGxhcmdlO1xuJGJyZWFrcG9pbnQtY2xhc3NlczogKHNtYWxsIG1lZGl1bSBsYXJnZSk7XG5cbi8vIDMuIFRoZSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4kZ3JpZC1yb3ctd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW4tY291bnQ6IDEyO1xuJGdyaWQtY29sdW1uLWd1dHRlcjogKFxuICBzbWFsbDogMjBweCxcbiAgbWVkaXVtOiAzMHB4LFxuKTtcbiRncmlkLWNvbHVtbi1hbGlnbi1lZGdlOiB0cnVlO1xuJGdyaWQtY29sdW1uLWFsaWFzOiAnY29sdW1ucyc7XG4kYmxvY2stZ3JpZC1tYXg6IDg7XG5cbi8vIDQuIEJhc2UgVHlwb2dyYXBoeVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIENvdXJpZXIsIG1vbm9zcGFjZTtcbiRoZWFkZXItY29sb3I6IGluaGVyaXQ7XG4kaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNDtcbiRoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtO1xuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pO1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5O1xuJHNtYWxsLWZvbnQtc2l6ZTogODAlO1xuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kcGFyYWdyYXBoLWxpbmVoZWlnaHQ6IDEuNjtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNjtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbTtcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQic7XG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYWNjb3JkaW9uLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJGxpZ2h0LWdyYXk7XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuJGFjY29yZGlvbi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGw7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODVlbSAxZW07XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDA7XG4kYnV0dG9uLWZpbGw6IHNvbGlkO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlcjogc2NhbGUtY29sb3IoJGJ1dHRvbi1iYWNrZ3JvdW5kLCAkbGlnaHRuZXNzOiAtMTUlKTtcbiRidXR0b24tY29sb3I6ICR3aGl0ZTtcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2s7XG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYnV0dG9uLWJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoOiAxcHg7XG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlO1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tei1pbmRleDogMTA7XG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW07XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogMXB4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogJGZvcm0tc3BhY2luZyAvIDI7XG4kaW5wdXQtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgkYmxhY2ssIDAuMSk7XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheTtcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuJGlucHV0LXRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZTtcbiRpbnB1dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGZvcm0tYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDIxLiBMYWJlbFxuLy8gLS0tLS0tLS0tXG5cbiRsYWJlbC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcbiRsYWJlbC1jb2xvcjogJHdoaXRlO1xuJGxhYmVsLWNvbG9yLWFsdDogJGJsYWNrO1xuJGxhYmVsLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGU7XG4kbGFiZWwtZm9udC1zaXplOiAwLjhyZW07XG4kbGFiZWwtcGFkZGluZzogMC4zMzMzM3JlbSAwLjVyZW07XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjIuIE1lZGlhIE9iamVjdFxuLy8gLS0tLS0tLS0tLS0tLS0tLVxuXG4kbWVkaWFvYmplY3QtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kbWVkaWFvYmplY3Qtc2VjdGlvbi1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kbWVkaWFvYmplY3QtaW1hZ2Utd2lkdGgtc3RhY2tlZDogMTAwJTtcblxuLy8gMjMuIE1lbnVcbi8vIC0tLS0tLS0tXG5cbiRtZW51LW1hcmdpbjogMDtcbiRtZW51LW5lc3RlZC1tYXJnaW46ICRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luO1xuJG1lbnUtaXRlbXMtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kbWVudS1zaW1wbGUtbWFyZ2luOiAxcmVtO1xuJG1lbnUtaXRlbS1jb2xvci1hY3RpdmU6ICR3aGl0ZTtcbiRtZW51LWl0ZW0tY29sb3ItYWx0LWFjdGl2ZTogJGJsYWNrO1xuJG1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJG1lbnUtaWNvbi1zcGFjaW5nOiAwLjI1cmVtO1xuJG1lbnUtc3RhdGUtYmFjay1jb21wYXQ6IHRydWU7XG4kbWVudS1jZW50ZXJlZC1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWljb25zLWJhY2stY29tcGF0OiB0cnVlO1xuXG4vLyAyNC4gTWV0ZXJcbi8vIC0tLS0tLS0tLVxuXG4kbWV0ZXItaGVpZ2h0OiAxcmVtO1xuJG1ldGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kbWV0ZXItYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG1ldGVyLWZpbGwtZ29vZDogJHN1Y2Nlc3MtY29sb3I7XG4kbWV0ZXItZmlsbC1tZWRpdW06ICR3YXJuaW5nLWNvbG9yO1xuJG1ldGVyLWZpbGwtYmFkOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI1LiBPZmYtY2FudmFzXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kb2ZmY2FudmFzLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLXZlcnRpY2FsLXNpemVzOiAoXG4gIHNtYWxsOiAyNTBweCxcbik7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJG9mZmNhbnZhcy1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLCAwLjcpO1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctc2l6ZTogMjBweDtcbiRvZmZjYW52YXMtaW5uZXItc2hhZG93LWNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSk7XG4kb2ZmY2FudmFzLW92ZXJsYXktemluZGV4OiAxMTtcbiRvZmZjYW52YXMtcHVzaC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy1vdmVybGFwLXppbmRleDogMTM7XG4kb2ZmY2FudmFzLXJldmVhbC16aW5kZXg6IDEyO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLWxlbmd0aDogMC41cztcbiRvZmZjYW52YXMtdHJhbnNpdGlvbi10aW1pbmc6IGVhc2U7XG4kb2ZmY2FudmFzLWZpeGVkLXJldmVhbDogdHJ1ZTtcbiRvZmZjYW52YXMtZXhpdC1iYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC4yNSk7XG4kbWFpbmNvbnRlbnQtY2xhc3M6ICdvZmYtY2FudmFzLWNvbnRlbnQnO1xuXG4vLyAyNi4gT3JiaXRcbi8vIC0tLS0tLS0tLVxuXG4kb3JiaXQtYnVsbGV0LWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZC1hY3RpdmU6ICRkYXJrLWdyYXk7XG4kb3JiaXQtYnVsbGV0LWRpYW1ldGVyOiAxLjJyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbjogMC4xcmVtO1xuJG9yYml0LWJ1bGxldC1tYXJnaW4tdG9wOiAwLjhyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi1ib3R0b206IDAuOHJlbTtcbiRvcmJpdC1jYXB0aW9uLWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNhcHRpb24tcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJGJsYWNrLCAwLjUpO1xuJG9yYml0LWNvbnRyb2wtcGFkZGluZzogMXJlbTtcbiRvcmJpdC1jb250cm9sLXppbmRleDogMTA7XG5cbi8vIDI3LiBQYWdpbmF0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiRwYWdpbmF0aW9uLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24taXRlbS1wYWRkaW5nOiByZW0tY2FsYygzIDEwKTtcbiRwYWdpbmF0aW9uLWl0ZW0tc3BhY2luZzogcmVtLWNhbGMoMSk7XG4kcGFnaW5hdGlvbi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheTtcbiRwYWdpbmF0aW9uLWl0ZW0tYmFja2dyb3VuZC1jdXJyZW50OiAkcHJpbWFyeS1jb2xvcjtcbiRwYWdpbmF0aW9uLWl0ZW0tY29sb3ItY3VycmVudDogJHdoaXRlO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJHBhZ2luYXRpb24tZWxsaXBzaXMtY29sb3I6ICRibGFjaztcbiRwYWdpbmF0aW9uLW1vYmlsZS1pdGVtczogZmFsc2U7XG4kcGFnaW5hdGlvbi1tb2JpbGUtY3VycmVudC1pdGVtOiBmYWxzZTtcbiRwYWdpbmF0aW9uLWFycm93czogdHJ1ZTtcbiRwYWdpbmF0aW9uLWFycm93LXByZXZpb3VzOiAnXFwwMEFCJztcbiRwYWdpbmF0aW9uLWFycm93LW5leHQ6ICdcXDAwQkInO1xuXG4vLyAyOC4gUHJvZ3Jlc3MgQmFyXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm9ncmVzcy1oZWlnaHQ6IDFyZW07XG4kcHJvZ3Jlc3MtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHByb2dyZXNzLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHByb2dyZXNzLW1ldGVyLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb2dyZXNzLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDI5LiBQcm90b3R5cGUgQXJyb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1hcnJvdy1kaXJlY3Rpb25zOiAoXG4gIGRvd24sXG4gIHVwLFxuICByaWdodCxcbiAgbGVmdFxuKTtcbiRwcm90b3R5cGUtYXJyb3ctc2l6ZTogMC40Mzc1cmVtO1xuJHByb3RvdHlwZS1hcnJvdy1jb2xvcjogJGJsYWNrO1xuXG4vLyAzMC4gUHJvdG90eXBlIEJvcmRlci1Cb3hcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWJvcmRlci1ib3gtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMS4gUHJvdG90eXBlIEJvcmRlci1Ob25lXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLW5vbmUtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuXG4vLyAzMi4gUHJvdG90eXBlIEJvcmRlcmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyZWQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1ib3JkZXItd2lkdGg6IHJlbS1jYWxjKDEpO1xuJHByb3RvdHlwZS1ib3JkZXItdHlwZTogc29saWQ7XG4kcHJvdG90eXBlLWJvcmRlci1jb2xvcjogJG1lZGl1bS1ncmF5O1xuXG4vLyAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWRpc3BsYXktYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1kaXNwbGF5OiAoXG4gIGlubGluZSxcbiAgaW5saW5lLWJsb2NrLFxuICBibG9jayxcbiAgdGFibGUsXG4gIHRhYmxlLWNlbGxcbik7XG5cbi8vIDM0LiBQcm90b3R5cGUgRm9udC1TdHlsaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWZvbnQtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS13aWRlLWxldHRlci1zcGFjaW5nOiByZW0tY2FsYyg0KTtcbiRwcm90b3R5cGUtZm9udC1ub3JtYWw6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRwcm90b3R5cGUtZm9udC1ib2xkOiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuXG4vLyAzNS4gUHJvdG90eXBlIExpc3QtU3R5bGUtVHlwZVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1saXN0LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS11bm9yZGVyZWQ6IChcbiAgZGlzYyxcbiAgY2lyY2xlLFxuICBzcXVhcmVcbik7XG4kcHJvdG90eXBlLXN0eWxlLXR5cGUtb3JkZXJlZDogKFxuICBkZWNpbWFsLFxuICBsb3dlci1hbHBoYSxcbiAgbG93ZXItbGF0aW4sXG4gIGxvd2VyLXJvbWFuLFxuICB1cHBlci1hbHBoYSxcbiAgdXBwZXItbGF0aW4sXG4gIHVwcGVyLXJvbWFuXG4pO1xuXG4vLyAzNi4gUHJvdG90eXBlIE92ZXJmbG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtb3ZlcmZsb3ctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1vdmVyZmxvdzogKFxuICB2aXNpYmxlLFxuICBoaWRkZW4sXG4gIHNjcm9sbFxuKTtcblxuLy8gMzcuIFByb3RvdHlwZSBQb3NpdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXBvc2l0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtcG9zaXRpb246IChcbiAgc3RhdGljLFxuICByZWxhdGl2ZSxcbiAgYWJzb2x1dGUsXG4gIGZpeGVkXG4pO1xuJHByb3RvdHlwZS1wb3NpdGlvbi16LWluZGV4OiA5NzU7XG5cbi8vIDM4LiBQcm90b3R5cGUgUm91bmRlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcm91bmRlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDMpO1xuXG4vLyAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zZXBhcmF0b3ItYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYWxpZ246IGNlbnRlcjtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWhlaWdodDogcmVtLWNhbGMoMik7XG4kcHJvdG90eXBlLXNlcGFyYXRvci13aWR0aDogM3JlbTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItbWFyZ2luLXRvcDogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNoYWRvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJveC1zaGFkb3c6IDAgMnB4IDVweCAwIHJnYmEoMCwwLDAsLjE2KSxcbiAgICAgICAgICAgICAgICAgICAgICAgMCAycHggMTBweCAwIHJnYmEoMCwwLDAsLjEyKTtcblxuLy8gNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2l6aW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc2l6aW5nOiAoXG4gIHdpZHRoLFxuICBoZWlnaHRcbik7XG4kcHJvdG90eXBlLXNpemVzOiAoXG4gIDI1OiAyNSUsXG4gIDUwOiA1MCUsXG4gIDc1OiA3NSUsXG4gIDEwMDogMTAwJVxuKTtcblxuLy8gNDIuIFByb3RvdHlwZSBTcGFjaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zcGFjaW5nLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtc3BhY2Vycy1jb3VudDogMztcblxuLy8gNDMuIFByb3RvdHlwZSBUZXh0LURlY29yYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGVjb3JhdGlvbi1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtZGVjb3JhdGlvbjogKFxuICBvdmVybGluZSxcbiAgdW5kZXJsaW5lLFxuICBsaW5lLXRocm91Z2gsXG4pO1xuXG4vLyA0NC4gUHJvdG90eXBlIFRleHQtVHJhbnNmb3JtYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXRyYW5zZm9ybWF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC10cmFuc2Zvcm1hdGlvbjogKFxuICBsb3dlcmNhc2UsXG4gIHVwcGVyY2FzZSxcbiAgY2FwaXRhbGl6ZVxuKTtcblxuLy8gNDUuIFByb3RvdHlwZSBUZXh0LVV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXV0aWxpdGllcy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuXG4vLyA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHJlc3BvbnNpdmUtZW1iZWQtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTYpO1xuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbik7XG5cbi8vIDQ3LiBSZXZlYWxcbi8vIC0tLS0tLS0tLS1cblxuJHJldmVhbC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kcmV2ZWFsLXdpZHRoOiA2MDBweDtcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoO1xuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmc7XG4kcmV2ZWFsLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheTtcbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRyZXZlYWwtemluZGV4OiAxMDA1O1xuJHJldmVhbC1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjQ1KTtcblxuLy8gNDguIFNsaWRlclxuLy8gLS0tLS0tLS0tLVxuXG4kc2xpZGVyLXdpZHRoLXZlcnRpY2FsOiAwLjVyZW07XG4kc2xpZGVyLXRyYW5zaXRpb246IGFsbCAwLjJzIGVhc2UtaW4tb3V0O1xuJHNsaWRlci1oZWlnaHQ6IDAuNXJlbTtcbiRzbGlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kc2xpZGVyLWZpbGwtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHNsaWRlci1oYW5kbGUtaGVpZ2h0OiAxLjRyZW07XG4kc2xpZGVyLWhhbmRsZS13aWR0aDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kc2xpZGVyLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjU7XG4kc2xpZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG5cbi8vIDQ5LiBTd2l0Y2hcbi8vIC0tLS0tLS0tLS1cblxuJHN3aXRjaC1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kc3dpdGNoLWJhY2tncm91bmQtYWN0aXZlOiAkcHJpbWFyeS1jb2xvcjtcbiRzd2l0Y2gtaGVpZ2h0OiAycmVtO1xuJHN3aXRjaC1oZWlnaHQtdGlueTogMS41cmVtO1xuJHN3aXRjaC1oZWlnaHQtc21hbGw6IDEuNzVyZW07XG4kc3dpdGNoLWhlaWdodC1sYXJnZTogMi41cmVtO1xuJHN3aXRjaC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJHN3aXRjaC1tYXJnaW46ICRnbG9iYWwtbWFyZ2luO1xuJHN3aXRjaC1wYWRkbGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHN3aXRjaC1wYWRkbGUtb2Zmc2V0OiAwLjI1cmVtO1xuJHN3aXRjaC1wYWRkbGUtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb246IGFsbCAwLjI1cyBlYXNlLW91dDtcbiRzd2l0Y2gtb3BhY2l0eS1kaXNhYmxlZDogLjU7XG4kc3dpdGNoLWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG5cbi8vIDUwLiBUYWJsZVxuLy8gLS0tLS0tLS0tXG5cbiR0YWJsZS1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFibGUtY29sb3Itc2NhbGU6IDUlO1xuJHRhYmxlLWJvcmRlcjogMXB4IHNvbGlkIHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXBhZGRpbmc6IHJlbS1jYWxjKDggMTAgMTApO1xuJHRhYmxlLWhvdmVyLXNjYWxlOiAyJTtcbiR0YWJsZS1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWhvdmVyLXNjYWxlKTtcbiR0YWJsZS1yb3ctc3RyaXBlLWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSArICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaXMtc3RyaXBlZDogdHJ1ZTtcbiR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUpO1xuJHRhYmxlLXN0cmlwZTogZXZlbjtcbiR0YWJsZS1oZWFkLWJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgLyAyKTtcbiR0YWJsZS1oZWFkLXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1oZWFkLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtZm9vdC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1mb290LXJvdy1ob3ZlcjogZGFya2VuKCR0YWJsZS1mb290LWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtaGVhZC1mb250LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRzaG93LWhlYWRlci1mb3Itc3RhY2tlZDogZmFsc2U7XG4kdGFibGUtc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1MS4gVGFic1xuLy8gLS0tLS0tLS1cblxuJHRhYi1tYXJnaW46IDA7XG4kdGFiLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXk7XG4kdGFiLWFjdGl2ZS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kdGFiLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kdGFiLWl0ZW0tYmFja2dyb3VuZC1ob3ZlcjogJHdoaXRlO1xuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuJHRhYi1jb250ZW50LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5O1xuJHRhYi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuJHRhYi1jb250ZW50LXBhZGRpbmc6IDFyZW07XG5cbi8vIDUyLiBUaHVtYm5haWxcbi8vIC0tLS0tLS0tLS0tLS1cblxuJHRodW1ibmFpbC1ib3JkZXI6IDRweCBzb2xpZCAkd2hpdGU7XG4kdGh1bWJuYWlsLW1hcmdpbi1ib3R0b206ICRnbG9iYWwtbWFyZ2luO1xuJHRodW1ibmFpbC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywgMC4yKTtcbiR0aHVtYm5haWwtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLCAwLjUpO1xuJHRodW1ibmFpbC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDIwMG1zIGVhc2Utb3V0O1xuJHRodW1ibmFpbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1My4gVGl0bGUgQmFyXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aXRsZWJhci1iYWNrZ3JvdW5kOiAkYmxhY2s7XG4kdGl0bGViYXItY29sb3I6ICR3aGl0ZTtcbiR0aXRsZWJhci1wYWRkaW5nOiAwLjVyZW07XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZDtcbiR0aXRsZWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItaWNvbi1jb2xvci1ob3ZlcjogJG1lZGl1bS1ncmF5O1xuJHRpdGxlYmFyLWljb24tc3BhY2luZzogMC4yNXJlbTtcblxuLy8gNTQuIFRvb2x0aXBcbi8vIC0tLS0tLS0tLS0tXG5cbiRoYXMtdGlwLWN1cnNvcjogaGVscDtcbiRoYXMtdGlwLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuJGhhcy10aXAtYm9yZGVyLWJvdHRvbTogZG90dGVkIDFweCAkZGFyay1ncmF5O1xuJHRvb2x0aXAtYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuJHRvb2x0aXAtY29sb3I6ICR3aGl0ZTtcbiR0b29sdGlwLXBhZGRpbmc6IDAuNzVyZW07XG4kdG9vbHRpcC1tYXgtd2lkdGg6IDEwcmVtO1xuJHRvb2x0aXAtZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuJHRvb2x0aXAtcGlwLXdpZHRoOiAwLjc1cmVtO1xuJHRvb2x0aXAtcGlwLWhlaWdodDogJHRvb2x0aXAtcGlwLXdpZHRoICogMC44NjY7XG4kdG9vbHRpcC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA1NS4gVG9wIEJhclxuLy8gLS0tLS0tLS0tLS1cblxuJHRvcGJhci1wYWRkaW5nOiAwLjVyZW07XG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHRvcGJhci1zdWJtZW51LWJhY2tncm91bmQ6ICR0b3BiYXItYmFja2dyb3VuZDtcbiR0b3BiYXItdGl0bGUtc3BhY2luZzogMC41cmVtIDFyZW0gMC41cmVtIDA7XG4kdG9wYmFyLWlucHV0LXdpZHRoOiAyMDBweDtcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW07XG5cbi8vIDU2LiBYeSBHcmlkXG4vLyAtLS0tLS0tLS0tLVxuXG4keHktZ3JpZDogdHJ1ZTtcbiRncmlkLWNvbnRhaW5lcjogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbnM6IDEyO1xuJGdyaWQtbWFyZ2luLWd1dHRlcnM6IChcbiAgc21hbGw6IDIwcHgsXG4gIG1lZGl1bTogMzBweFxuKTtcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItcGFkZGluZzogJGdyaWQtcGFkZGluZy1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcbiR4eS1ibG9jay1ncmlkLW1heDogODtcblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG5AdXNlIFwic2Fzczpjb2xvclwiO1xuXG4vLyBQYXRjaCB0byBmaXggaXNzdWUgIzEyMDgwXG4kLXpmLWJwLXZhbHVlOiBudWxsO1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgYm9yZGVyLXdpZHRoOiAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGxlZnQpIHtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogZGl2aWRlKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSwgJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmVkICAgOiByb3VuZChjb2xvci5jaGFubmVsKCRjb2xvciwgXCJyZWRcIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGdyZWVuIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiZ3JlZW5cIiwgJHNwYWNlOiByZ2IpKTtcbiAgJGJsdWUgIDogcm91bmQoY29sb3IuY2hhbm5lbCgkY29sb3IsIFwiYmx1ZVwiLCAkc3BhY2U6IHJnYikpO1xuICAkcmdiICAgOiAncmdiJTI4I3skcmVkfSwgI3skZ3JlZW59LCAjeyRibHVlfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWw7dXRmOCw8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB2ZXJzaW9uPVwiMS4xXCIgd2lkdGg9XCIzMlwiIGhlaWdodD1cIjI0XCIgdmlld0JveD1cIjAgMCAzMiAyNFwiPjxwb2x5Z29uIHBvaW50cz1cIjAsMCAzMiwwIDE2LDI0XCIgc3R5bGU9XCJmaWxsOiAjeyRyZ2J9XCI+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+IC4jeyRjb250ZW50fSB7XG4gICAgbWFyZ2luLSN7JHBvc2l0aW9ufTogLXpmLWdldC1icC12YWwoJG9mZmNhbnZhcy1zaXplcywgJGJyZWFrcG9pbnQpO1xuICB9XG59XG5cbi8vLyBPdmVycmlkZXMgdGhlIG9mZi1jYW52YXMgc3R5bGVzXG5AbWl4aW4gaW4tY2FudmFzKCkge1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHBvc2l0aW9uOiBzdGF0aWM7XG4gIGJhY2tncm91bmQ6IG5vbmU7XG4gIHdpZHRoOiBhdXRvO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcblxuICAvLyBJbmNyZWFzZSBDU1Mgc3BlY2lmaWNpdHlcbiAgJi5wb3NpdGlvbi1sZWZ0LFxuICAmLnBvc2l0aW9uLXJpZ2h0LFxuICAmLnBvc2l0aW9uLXRvcCxcbiAgJi5wb3NpdGlvbi1ib3R0b20ge1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLmNsb3NlLWJ1dHRvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1vZmYtY2FudmFzIHtcbiAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNpY3M7XG5cbiAgLy8gT2ZmLWNhbnZhcyB3cmFwcGVyXG4gIC5vZmYtY2FudmFzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcHBlcjtcbiAgfVxuXG4gIC8vIE9mZi1jYW52YXMgY29udGFpbmVyXG4gIC5vZmYtY2FudmFzIHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWJhc2U7XG5cbiAgICAvLyBGb3JjZSBwb3NpdGlvbiBhYnNvbHV0ZSBmb3IgbmVzdGVkIG9mZi1jYW52YXMgYmVjYXVzZSBmaXhlZCBkb2Vzbid0IHdvcmsgZm9yIHB1c2ggdHJhbnNpdGlvbiB3aXRoaW4gdGhlIHRyYW5zZm9ybSBzY29wZS5cbiAgICAvLyBAYXQtcm9vdCAuI3skbWFpbmNvbnRlbnQtY2xhc3N9ICYge1xuICAgIC8vICAgLy8gTk9URTogc2luY2Ugb3ZlcmxhcCB0cmFuc2l0aW9uIGlzIGN1cnJlbnRseSBmb3JjZWQgaWYgbmVzdGVkLCB0aGVyZSdzIG5vIG5lZWQgdG8gZm9yY2UgcG9zaXRpb24gYWJzb2x1dGUgdW50aWwgbmVzdGVkIHB1c2ggdHJhbnNpdGlvbiBpcyBzdXBwb3J0ZWQuXG4gICAgLy8gICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgLy8gfVxuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBjb250YWluZXIgd2l0aCBhYnNvbHV0ZSBwb3NpdGlvblxuICAub2ZmLWNhbnZhcy1hYnNvbHV0ZSB7XG4gICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1iYXNlKCRmaXhlZDogZmFsc2UpO1xuICB9XG5cbiAgLy8gT2ZmLWNhbnZhcyBwb3NpdGlvbiBjbGFzc2VzXG4gIC5wb3NpdGlvbi1sZWZ0ICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihsZWZ0LCAgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi1yaWdodCAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbihyaWdodCwgIGhvcml6b250YWwpOyB9XG4gIC5wb3NpdGlvbi10b3AgICAgIHsgQGluY2x1ZGUgb2ZmLWNhbnZhcy1wb3NpdGlvbih0b3AsICAgIHZlcnRpY2FsKTsgfVxuICAucG9zaXRpb24tYm90dG9tICB7IEBpbmNsdWRlIG9mZi1jYW52YXMtcG9zaXRpb24oYm90dG9tLCB2ZXJ0aWNhbCk7IH1cblxuICAub2ZmLWNhbnZhcy1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBvZmYtY2FudmFzLWNvbnRlbnQ7XG4gIH1cblxuICAvLyBSZXZlYWwgb2ZmLWNhbnZhcyBwYW5lbCBvbiBsYXJnZXIgc2NyZWVuc1xuICBAZWFjaCAkbmFtZSwgJHZhbHVlIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbmFtZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRuYW1lKSB7XG4gICAgICAgIC5wb3NpdGlvbi1sZWZ0LnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKGxlZnQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tcmlnaHQucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwocmlnaHQsICRvZmZjYW52YXMtcmV2ZWFsLXppbmRleCwgJG1haW5jb250ZW50LWNsYXNzLCAkbmFtZSk7XG4gICAgICAgIH1cblxuICAgICAgICAucG9zaXRpb24tdG9wLnJldmVhbC1mb3ItI3skbmFtZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtcmV2ZWFsKHRvcCwgJG9mZmNhbnZhcy1yZXZlYWwtemluZGV4LCAkbWFpbmNvbnRlbnQtY2xhc3MsICRuYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3NpdGlvbi1ib3R0b20ucmV2ZWFsLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1yZXZlYWwoYm90dG9tLCAkb2ZmY2FudmFzLXJldmVhbC16aW5kZXgsICRtYWluY29udGVudC1jbGFzcywgJG5hbWUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTW92ZSBpbi1jYW52YXMgZm9yIGxhcmdlciBzY3JlZW5zXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRuYW1lICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJG5hbWUpIHtcbiAgICAgICAgLm9mZi1jYW52YXMuaW4tY2FudmFzLWZvci0jeyRuYW1lfSB7XG4gICAgICAgICAgQGluY2x1ZGUgaW4tY2FudmFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQG1peGluIGZvdW5kYXRpb24tc3RpY2t5IHtcbiAgLnN0aWNreS1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5zdGlja3kge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAuc3RpY2t5LmlzLXN0dWNrIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgei1pbmRleDogNTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgICYuaXMtYXQtdG9wIHtcbiAgICAgIHRvcDogMDtcbiAgICB9XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLnN0aWNreS5pcy1hbmNob3JlZCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IGF1dG87XG5cbiAgICAmLmlzLWF0LWJvdHRvbSB7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdGl0bGUtYmFyXG4vLy8vXG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgV2VpZ2h0XG4kdGl0bGViYXItdGV4dC1mb250LXdlaWdodDogYm9sZCAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIG1lbnUgaWNvbnMgaW5zaWRlIGEgdGl0bGUgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQ29sb3Igb2YgbWVudSBpY29ucyBpbnNpZGUgYSB0aXRsZSBiYXIgb24gaG92ZXIuXG4vLy8gQHR5cGUgQ29sb3JcbiR0aXRsZWJhci1pY29uLWNvbG9yLWhvdmVyOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBTcGFjaW5nIGJldHdlZW4gdGhlIG1lbnUgaWNvbiBhbmQgdGV4dCBpbnNpZGUgYSB0aXRsZSBiYXIuXG4vLy8gQHR5cGUgTGVuZ3RoXG4kdGl0bGViYXItaWNvbi1zcGFjaW5nOiAwLjI1cmVtICFkZWZhdWx0O1xuXG5AbWl4aW4gZm91bmRhdGlvbi10aXRsZS1iYXIge1xuICAudGl0bGUtYmFyIHtcbiAgICBwYWRkaW5nOiAkdGl0bGViYXItcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkdGl0bGViYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHRpdGxlYmFyLWNvbG9yO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgfVxuXG4gICAgLm1lbnUtaWNvbiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkdGl0bGViYXItaWNvbi1zcGFjaW5nO1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICR0aXRsZWJhci1pY29uLXNwYWNpbmc7XG4gICAgfVxuICB9XG5cbiAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgLnRpdGxlLWJhci1sZWZ0LFxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxleDogMSAxIDBweDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSB6ZXJvLXVuaXRcbiAgICB9XG5cbiAgICAudGl0bGUtYmFyLXJpZ2h0IHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgLnRpdGxlLWJhci1sZWZ0IHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC50aXRsZS1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLnRpdGxlLWJhci10aXRsZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZm9udC13ZWlnaHQ6ICR0aXRsZWJhci10ZXh0LWZvbnQtd2VpZ2h0O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgdG9wLWJhclxuLy8vL1xuXG4vLy8gUGFkZGluZyBmb3IgdGhlIHRvcCBiYXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXBhZGRpbmc6IDAuNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0b3AgYmFyLiBUaGlzIGNvbG9yIGFsc28gY2FzY2FkZXMgdG8gbWVudXMgd2l0aGluIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBzdWJtZW51cyB3aXRoaW4gdGhlIHRvcCBiYXIuIFVzZWZ1bGwgaWYgJHRvcGJhci1iYWNrZ3JvdW5kIGlzIHRyYW5zcGFyZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZDogJHRvcGJhci1iYWNrZ3JvdW5kICFkZWZhdWx0O1xuXG4vLy8gU3BhY2luZyBmb3IgdGhlIHRvcCBiYXIgdGl0bGUuXG4vLy8gQHR5cGUgTnVtYmVyXG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBgPGlucHV0PmAgZWxlbWVudHMgaW5zaWRlIHRoZSB0b3AgYmFyLlxuLy8vIEB0eXBlIE51bWJlclxuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBCcmVha3BvaW50IGF0IHdoaWNoIHRvcCBiYXIgc3dpdGNoZXMgZnJvbSBtb2JpbGUgdG8gZGVza3RvcCB2aWV3LlxuLy8vIEB0eXBlIEJyZWFrcG9pbnRcbiR0b3BiYXItdW5zdGFjay1icmVha3BvaW50OiBtZWRpdW0gIWRlZmF1bHQ7XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSB0b3AgYmFyIGNvbnRhaW5lci5cbkBtaXhpbiB0b3AtYmFyLWNvbnRhaW5lciB7XG4gIHBhZGRpbmc6ICR0b3BiYXItcGFkZGluZztcblxuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgfVxuXG4gICYsXG4gIHVsIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4gIH1cblxuICAvLyBDaGVjayBpZiAkdG9wYmFyLWJhY2tncm91bmQgaXMgZGlmZmVybnQgZnJvbSAkdG9wYmFyLWJhY2tncm91bmQtc3VibWVudVxuICBAaWYgKCR0b3BiYXItYmFja2dyb3VuZCAhPSAkdG9wYmFyLXN1Ym1lbnUtYmFja2dyb3VuZCkge1xuICAgIHVsIHVsIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc3RyYWluIHdpZHRoIG9mIGlucHV0cyBieSBkZWZhdWx0IHRvIG1ha2UgdGhlbSBlYXNpZXIgdG8gYXJyYW5nZVxuICBpbnB1dCB7XG4gICAgbWF4LXdpZHRoOiAkdG9wYmFyLWlucHV0LXdpZHRoO1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICB9XG5cbiAgLy8gVGhlIGFib3ZlIHN0eWxlcyBzaG91bGRuJ3QgYXBwbHkgdG8gaW5wdXQgZ3JvdXAgZmllbGRzXG4gIC5pbnB1dC1ncm91cC1maWVsZCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gIH1cblxuICBpbnB1dC5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuXG4vLy8gTWFrZXMgc2VjdGlvbnMgb2YgYSB0b3AgYmFyIHN0YWNrIG9uIHRvcCBvZiBlYWNoIG90aGVyLlxuQG1peGluIHRvcC1iYXItc3RhY2tlZCB7XG4gIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgIC8vIFN1Yi1zZWN0aW9uc1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAvLyBTdWItc2VjdGlvbnNcbiAgICAudG9wLWJhci1sZWZ0LFxuICAgIC50b3AtYmFyLXJpZ2h0IHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vLy8gVW5kb2VzIHRoZSBDU1MgYXBwbGllZCBieSB0aGUgYHRvcC1iYXItc3RhY2tlZCgpYCBtaXhpbi5cbkBtaXhpbiB0b3AtYmFyLXVuc3RhY2sge1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxleDogMSAxIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAxIGF1dG87XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXRvcC1iYXIge1xuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgdG9wLWJhci1jb250YWluZXI7XG4gIH1cbiAgLnRvcC1iYXIge1xuICAgIC8vIFN0YWNrIG9uIHNtYWxsIHNjcmVlbnMgYnkgZGVmYXVsdFxuICAgIEBpbmNsdWRlIHRvcC1iYXItc3RhY2tlZDtcbiAgfVxuICAvLyBUb3AgYmFyIGNvbnRhaW5lclxuICAudG9wLWJhciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludCkge1xuICAgICAgQGluY2x1ZGUgdG9wLWJhci11bnN0YWNrO1xuICAgIH1cblxuICAgIC8vIEdlbmVyYXRlIGNsYXNzZXMgZm9yIHN0YWNraW5nIG9uIGVhY2ggc2NyZWVuIHNpemUgKGRlZmluZWQgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcylcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICYuc3RhY2tlZC1mb3ItI3skc2l6ZX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgZG93bikge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wLWJhci1zdGFja2VkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFN1Yi1zZWN0aW9uc1xuICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIG1hcmdpbjogJHRvcGJhci10aXRsZS1zcGFjaW5nO1xuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQsXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAudG9wLWJhci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHBhZGRpbmc6ICR0b3BiYXItdGl0bGUtc3BhY2luZztcblxuICAgICAgLm1lbnUtaWNvbiB7XG4gICAgICAgIGJvdHRvbTogMnB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyLWxlZnQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgfVxuXG4gICAgLnRvcC1iYXItcmlnaHQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZsb2F0XG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsb2F0LWNsYXNzZXMge1xuICAuZmxvYXQtbGVmdCB7XG4gICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1yaWdodCB7XG4gICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuZmxvYXQtY2VudGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIH1cblxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgRmxleGJveCBVdGlsaXRpZXNcbi8vLy9cbi8vXG4vLy8gRGVmYXVsdCB2YWx1ZSBmb3IgdGhlIGNvdW50IG9mIHNvdXJjZSBvcmRlcmluZ2Bcbi8vLyBAdHlwZSBOdW1iZXJcbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNiAhZGVmYXVsdDtcblxuLy8vIFF1aWNrbHkgZGlzYWJsZS9lbmFibGUgUmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgVmFuaWxsYSBGbGV4IEhlbHBlcnMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50czogdHJ1ZSAhZGVmYXVsdDtcblxuQG1peGluIGZsZXgtaGVscGVycyB7XG4gIC5mbGV4LWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvO1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1zaHJpbmsge1xuICAgIGZsZXg6IDAgMSBhdXRvO1xuICB9XG5cbiAgQGVhY2ggJGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWRpcmVjdGlvbiB7XG4gICAgLmZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoJGZsZXhib3gtcmVzcG9uc2l2ZS1icmVha3BvaW50cykge1xuICAgIC8vIExvb3AgdGhyb3VnaCBSZXNwb25zaXZlIEJyZWFrcG9pbnRzXG4gICAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplKSB7XG4gICAgICAgIEBpZiAkc2l6ZSAhPSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY29udGFpbmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGZsZXg7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtYXV0byB7XG4gICAgICAgICAgICBmbGV4OiAxIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1ncm93IHtcbiAgICAgICAgICAgIGZsZXg6IDEgMCBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgICAgICAgICBmbGV4OiAwIDEgYXV0bztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWRpci0jeyRkaXJ9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgZmxleC1kaXJlY3Rpb24oJHByb3ApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mbGV4LWNsYXNzZXMge1xuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCB1c2luZyBqdXN0aWZ5LWNvbnRlbnRcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluICQtemYtZmxleC1qdXN0aWZ5IHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgIH1cbiAgfVxuICBcbiAgLy8gSG9yaXpvbnRhbCBhbGlnbm1lbnQgU3BlY2lmaWNhbGx5IGZvciBWZXJ0aWNhbCBNZW51XG4gIEBlYWNoICRoZGlyLCAkcHJvcCBpbiBtYXAtcmVtb3ZlKCQtemYtZmxleC1qdXN0aWZ5LCAnanVzdGlmeScsICdzcGFjZWQnKSB7XG4gICAgLmFsaWduLSN7JGhkaXJ9IHtcbiAgICAgICYudmVydGljYWwge1xuICAgICAgICAmLm1lbnUgPiBsaSA+IGEge1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6ICRoZGlyKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsIGFsaWdubWVudCB1c2luZyBhbGlnbi1pdGVtcyBhbmQgYWxpZ24tc2VsZlxuICBAZWFjaCAkdmRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWFsaWduIHtcbiAgICAuYWxpZ24tI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeTogJHZkaXIpO1xuICAgIH1cblxuICAgIC5hbGlnbi1zZWxmLSN7JHZkaXJ9IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24tc2VsZigkeTogJHZkaXIpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENlbnRyYWwgYWxpZ25tZW50IG9mIGNvbnRlbnRcbiAgLmFsaWduLWNlbnRlci1taWRkbGUge1xuICAgIEBpbmNsdWRlIGZsZXgtYWxpZ24oJHg6IGNlbnRlciwgJHk6IG1pZGRsZSk7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLy8gU291cmNlIG9yZGVyaW5nXG4gIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50IHtcbiAgICAgIC4jeyQtemYtc2l6ZX0tb3JkZXItI3skaX0ge1xuICAgICAgICBAaW5jbHVkZSBmbGV4LW9yZGVyKCRpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBWYW5pbGxhIEZsZXhib3ggSGVscGVyc1xuICBAaW5jbHVkZSBmbGV4LWhlbHBlcnM7XG59XG4iLCJAZnVuY3Rpb24gLXpmLWZsZXgtanVzdGlmeSgkdGV4dC1kaXJlY3Rpb24pIHtcbiAgJC16Zi1mbGV4LWp1c3RpZnk6IChcbiAgICAnbGVmdCc6IGlmKCR0ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGZsZXgtZW5kLCBmbGV4LXN0YXJ0KSxcbiAgICAncmlnaHQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LXN0YXJ0LCBmbGV4LWVuZCksXG4gICAgJ2NlbnRlcic6IGNlbnRlcixcbiAgICAnanVzdGlmeSc6IHNwYWNlLWJldHdlZW4sXG4gICAgJ3NwYWNlZCc6IHNwYWNlLWFyb3VuZCxcbiAgKTtcblxuICBAcmV0dXJuICQtemYtZmxleC1qdXN0aWZ5O1xufVxuXG5cbiQtemYtZmxleC1hbGlnbjogKFxuICAndG9wJzogZmxleC1zdGFydCxcbiAgJ2JvdHRvbSc6IGZsZXgtZW5kLFxuICAnbWlkZGxlJzogY2VudGVyLFxuICAnc3RyZXRjaCc6IHN0cmV0Y2gsXG4pO1xuXG4kLXpmLWZsZXgtZGlyZWN0aW9uOiAoXG4gICdyb3cnOiByb3csXG4gICdyb3ctcmV2ZXJzZSc6IHJvdy1yZXZlcnNlLFxuICAnY29sdW1uJzogY29sdW1uLFxuICAnY29sdW1uLXJldmVyc2UnOiBjb2x1bW4tcmV2ZXJzZSxcbik7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggYnkgYWRkaW5nIGBkaXNwbGF5OiBmbGV4YCB0byB0aGUgZWxlbWVudC5cbkBtaXhpbiBmbGV4IHtcbiAgZGlzcGxheTogZmxleDtcbn1cblxuLy8vIEhvcml6b250YWxseSBvciB2ZXJ0aWNhbGx5IGFsaWducyB0aGUgaXRlbXMgd2l0aGluIGEgZmxleCBjb250YWluZXIuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR4IFtudWxsXSAtIEhvcml6b250YWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGBsZWZ0YCwgYHJpZ2h0YCwgYGNlbnRlcmAsIGBqdXN0aWZ5YCwgb3IgYHNwYWNlZGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCBob3Jpem9udGFsIGFsaWdubWVudC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR5IFtudWxsXSAtIFZlcnRpY2FsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgdG9wYCwgYGJvdHRvbWAsIGBtaWRkbGVgLCBvciBgc3RyZXRjaGAuIE9yLCBzZXQgaXQgdG8gYG51bGxgICh0aGUgZGVmYXVsdCkgdG8gbm90IHNldCB2ZXJ0aWNhbCBhbGlnbm1lbnQuXG5AbWl4aW4gZmxleC1hbGlnbigkeDogbnVsbCwgJHk6IG51bGwpIHtcbiAgQGlmICR4IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWp1c3RpZnksICR4KSB7XG4gICAgICAkeDogbWFwLWdldCgkLXpmLWZsZXgtanVzdGlmeSwgJHgpO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAd2FybiAnZmxleC1ncmlkLXJvdy1hbGlnbigpOiAjeyR4fSBpcyBub3QgYSB2YWxpZCB2YWx1ZSBmb3IgaG9yaXpvbnRhbCBhbGlnbm1lbnQuIFVzZSBsZWZ0LCByaWdodCwgY2VudGVyLCBqdXN0aWZ5LCBvciBzcGFjZWQuJztcbiAgICB9XG4gIH1cblxuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIHZlcnRpY2FsIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBqdXN0aWZ5LWNvbnRlbnQ6ICR4O1xuICBhbGlnbi1pdGVtczogJHk7XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGFsaWduIGEgc2luZ2xlIGNvbHVtbiB3aXRoaW4gYSBmbGV4IHJvdy4gQXBwbHkgdGhpcyBtaXhpbiB0byBhIGZsZXggY29sdW1uLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24tc2VsZigkeTogbnVsbCkge1xuICBAaWYgJHkge1xuICAgIEBpZiBtYXAtaGFzLWtleSgkLXpmLWZsZXgtYWxpZ24sICR5KSB7XG4gICAgICAkeTogbWFwLWdldCgkLXpmLWZsZXgtYWxpZ24sICR5KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1jb2x1bW4tYWxpZ24oKTogI3skeX0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGFsaWdubWVudC4gVXNlIHRvcCwgYm90dG9tLCBtaWRkbGUsIG9yIHN0cmV0Y2guJztcbiAgICB9XG4gIH1cblxuICBhbGlnbi1zZWxmOiAkeTtcbn1cblxuLy8vIENoYW5nZXMgdGhlIHNvdXJjZSBvcmRlciBvZiBhIGZsZXggY2hpbGQuIENoaWxkcmVuIHdpdGggbG93ZXIgbnVtYmVycyBhcHBlYXIgZmlyc3QgaW4gdGhlIGxheW91dC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9yZGVyIFswXSAtIE9yZGVyIG51bWJlciB0byBhcHBseS5cbkBtaXhpbiBmbGV4LW9yZGVyKCRvcmRlcjogMCkge1xuICBvcmRlcjogJG9yZGVyO1xufVxuXG4vLy8gQ2hhbmdlIGZsZXgtZGlyZWN0aW9uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtyb3ddIC0gRmxleCBkaXJlY3Rpb24gdG8gdXNlLiBDYW4gYmVcbi8vLyAgIC0gcm93IChkZWZhdWx0KTogc2FtZSBhcyB0ZXh0IGRpcmVjdGlvblxuLy8vICAgLSByb3ctcmV2ZXJzZTogb3Bwb3NpdGUgdG8gdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gY29sdW1uOiBzYW1lIGFzIHJvdyBidXQgdG9wIHRvIGJvdHRvbVxuLy8vICAgLSBjb2x1bW4tcmV2ZXJzZTogc2FtZSBhcyByb3ctcmV2ZXJzZSB0b3AgdG8gYm90dG9tXG5AbWl4aW4gZmxleC1kaXJlY3Rpb24oJGRpcmVjdGlvbjogcm93KSB7XG4gIGZsZXgtZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSGlkZSBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIG9ubHkgZGlzcGxheWluZyBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBzaG93LWZvcigkc2l6ZSkge1xuICAkc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgLy8gTWF4IHZhbHVlIGlzIDAuMnB4IHVuZGVyIHRoZSBuZXh0IGJyZWFrcG9pbnQgKDAuMDIgLyAxNiA9IDAuMDAxMjUpLlxuICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzExMzEzXG4gICRzaXplOiAtemYtYnAtdG8tZW0oJHNpemUpIC0gMC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIDAuMDAxMjU7XG4gIC8vIHRlc3QgYWN0dWFsIGxvd2VyLWJvdW5kLXNpemUsIGlmIDAgc2V0IGl0IHRvIDBlbVxuICBAaWYgc3RyaXAtdW5pdCgkbG93ZXItYm91bmQtc2l6ZSkgPT0gMCB7XG4gICAgJGxvd2VyLWJvdW5kOiAtemYtYnAtdG8tZW0oJGxvd2VyLWJvdW5kLXNpemUpO1xuICB9XG5cbiAgQGlmICR1cHBlci1ib3VuZC1zaXplID09IG51bGwge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRsb3dlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICBAZWxzZSB7XG4gICAgJHVwcGVyLWJvdW5kOiAtemYtYnAtdG8tZW0oJHVwcGVyLWJvdW5kLXNpemUpO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkdXBwZXItYm91bmQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yKCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIFNob3cgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBhbmQgaGlkZSBpdCBhYm92ZSBhIGNlcnRhaW4gc2NyZWVuIHNpemUuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc2l6ZSAtIEJyZWFrcG9pbnQgdG8gdXNlLiAqKk11c3QgYmUgYSBicmVha3BvaW50IGRlZmluZWQgaW4gYCRicmVha3BvaW50c2AuKipcbkBtaXhpbiBoaWRlLWZvci1vbmx5KCRzaXplKSB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUgb25seSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXMge1xuICAvLyBCYXNpYyBoaWRpbmcgY2xhc3Nlc1xuICAuaGlkZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmludmlzaWJsZSB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIC52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgLy8gUmVzcG9uc2l2ZSB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgQGVhY2ggJHNpemUgaW4gJGJyZWFrcG9pbnQtY2xhc3NlcyB7XG4gICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgIC5oaWRlLWZvci0jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGhpZGUtZm9yKCRzaXplKTtcbiAgICAgIH1cblxuICAgICAgLnNob3ctZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgc2hvdy1mb3IoJHNpemUpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oaWRlLWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIGhpZGUtZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cblxuICAgIC5zaG93LWZvci0jeyRzaXplfS1vbmx5IHtcbiAgICAgIEBpbmNsdWRlIHNob3ctZm9yLW9ubHkoJHNpemUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFNjcmVlbiByZWFkZXIgdmlzaWJpbGl0eSBjbGFzc2VzXG4gIC8vIE5lZWQgYSBcImhpZGUtZm9yLXNyXCIgY2xhc3M/IEFkZCBhcmlhLWhpZGRlbj0ndHJ1ZScgdG8gdGhlIGVsZW1lbnRcbiAgLnNob3ctZm9yLXNyLFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG4gIH1cblxuICAvLyBPbmx5IGRpc3BsYXkgdGhlIGVsZW1lbnQgd2hlbiBpdCdzIGZvY3VzZWRcbiAgLnNob3ctb24tZm9jdXMge1xuICAgICY6YWN0aXZlLFxuICAgICY6Zm9jdXMge1xuICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgIH1cbiAgfVxuXG4gIC8vIExhbmRzY2FwZSBhbmQgcG9ydHJhaXQgdmlzaWJpbGl0eVxuICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHBvcnRyYWl0KSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhbmRzY2FwZSkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRGFyayBNb2RlIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWRhcmstbW9kZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGlkZS1mb3ItZGFyay1tb2RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAocHJlZmVycy1jb2xvci1zY2hlbWU6IGRhcmspIHtcbiAgICAuc2hvdy1mb3ItZGFyay1tb2RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1kYXJrLW1vZGUge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIElFMTArIFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLWllIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIEBtZWRpYSBhbGwgYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSksICgtbXMtaGlnaC1jb250cmFzdDogYWN0aXZlKSB7XG4gICAgLnNob3ctZm9yLWllIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5oaWRlLWZvci1pZSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgLy8gU3RpY2t5IFZpc2liaWxpdHlcbiAgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaXMtc3R1Y2sgLnNob3ctZm9yLXN0aWNreSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbiAgLmlzLXN0dWNrIC5oaWRlLWZvci1zdGlja3kge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi8vLyBBcHBsaWVzIGJhc2ljIHRyYW5zaXRpb24gc2V0dGluZ3MgdG8gYW4gZWxlbWVudC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiB0cmFuc2l0aW9uLWJhc2ljcyhcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICBAaW5jbHVkZSAtbW90aW9uLXVpLWRlZmF1bHRzO1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nO1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5cbi8vLyBXcmFwcyB0aGUgY29udGVudCBpbiB0aGUgc2V0dXAgY2xhc3MgZm9yIGEgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXIgLSBTdGF0ZSB0byBzZXR1cCBmb3IgdHJhbnNpdGlvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLXN0YXJ0KCRkaXIpIHtcbiAgJHNlbGVjdG9yOiAtbXVpLWJ1aWxkLXNlbGVjdG9yKG1hcC1nZXQoJG1vdGlvbi11aS1zdGF0ZXMsICRkaXIpKTtcblxuICBAYXQtcm9vdCB7XG4gICAgI3skc2VsZWN0b3J9IHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gV3JhcHMgdGhlIGNvbnRlbnQgaW4gdGhlIGFjdGl2ZSBjbGFzcyBmb3IgYSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpciAtIFN0YXRlIHRvIGFjdGl2YXRlIGEgdHJhbnNpdGlvbiBvbi5cbkBtaXhpbiB0cmFuc2l0aW9uLWVuZCgkZGlyKSB7XG4gICRzZWxlY3RvcjogLW11aS1idWlsZC1zZWxlY3RvcihtYXAtZ2V0KCRtb3Rpb24tdWktc3RhdGVzLCAkZGlyKSwgdHJ1ZSk7XG5cbiAgQGF0LXJvb3Qge1xuICAgICN7JHNlbGVjdG9yfSB7XG4gICAgICBAY29udGVudDtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhIHN0YWdnZXIgYW5pbWF0aW9uLCB3aGljaCBjYW4gYmUgdXNlZCB3aXRoIEFuZ3VsYXIncyBgbmctcmVwZWF0YC5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXktYW1vdW50IC0gQW1vdW50IG9mIHRpbWUgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgdG8gYWRkIGJldHdlZW4gZWFjaCBpdGVtJ3MgYW5pbWF0aW9uLlxuQG1peGluIHN0YWdnZXIoJGRlbGF5LWFtb3VudCkge1xuICB0cmFuc2l0aW9uLWRlbGF5OiAkZGVsYXktYW1vdW50O1xuICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAwOyAvLyBQcmV2ZW50IGFjY2lkZW50YWwgQ1NTIGluaGVyaXRhbmNlXG59XG4iLCIvLyBzY3NzLWxpbnQ6ZGlzYWJsZSBJbXBvcnRhbnRSdWxlLCBTcGFjZUFmdGVyQ29tbWEsIFNpbmdsZUxpbmVQZXJQcm9wZXJ0eVxuXG5AbWl4aW4gLW1vdGlvbi11aS1kZWZhdWx0cyB7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IG1hcC1nZXQoJG1vdGlvbi11aS1zcGVlZHMsIGRlZmF1bHQpO1xuICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLWVhc2luZ3MsIGRlZmF1bHQpO1xufVxuXG4vLyBUcmFuc2l0aW9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cbkBtaXhpbiBtb3Rpb24tdWktdHJhbnNpdGlvbnMge1xuICAvLyBTbGlkZVxuICAuc2xpZGUtaW4tZG93biAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShpbiwgIGRvd24pOyB9XG4gIC5zbGlkZS1pbi1sZWZ0ICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgcmlnaHQpOyB9XG4gIC5zbGlkZS1pbi11cCAgICAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgdXApOyB9XG4gIC5zbGlkZS1pbi1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLXNsaWRlKGluLCAgbGVmdCk7IH1cbiAgLnNsaWRlLW91dC1kb3duICAgeyBAaW5jbHVkZSBtdWktc2xpZGUob3V0LCBkb3duKTsgfVxuICAuc2xpZGUtb3V0LXJpZ2h0ICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHJpZ2h0KTsgfVxuICAuc2xpZGUtb3V0LXVwICAgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIHVwKTsgfVxuICAuc2xpZGUtb3V0LWxlZnQgICB7IEBpbmNsdWRlIG11aS1zbGlkZShvdXQsIGxlZnQpOyB9XG5cbiAgLy8gRmFkZVxuICAuZmFkZS1pbiAgeyBAaW5jbHVkZSBtdWktZmFkZShpbiwgIDAsIDEpOyB9XG4gIC5mYWRlLW91dCB7IEBpbmNsdWRlIG11aS1mYWRlKG91dCwgMSwgMCk7IH1cblxuICAvLyBIaW5nZVxuICAuaGluZ2UtaW4tZnJvbS10b3AgICAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShpbiwgIHRvcCk7IH1cbiAgLmhpbmdlLWluLWZyb20tcmlnaHQgICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICByaWdodCk7IH1cbiAgLmhpbmdlLWluLWZyb20tYm90dG9tICAgeyBAaW5jbHVkZSBtdWktaGluZ2UoaW4sICBib3R0b20pOyB9XG4gIC5oaW5nZS1pbi1mcm9tLWxlZnQgICAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgbGVmdCk7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXggIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgdG9wLCAgIGNlbnRlcik7IH1cbiAgLmhpbmdlLWluLWZyb20tbWlkZGxlLXkgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKGluLCAgcmlnaHQsIGNlbnRlcik7IH1cbiAgLmhpbmdlLW91dC1mcm9tLXRvcCAgICAgeyBAaW5jbHVkZSBtdWktaGluZ2Uob3V0LCB0b3ApOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1yaWdodCAgIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgcmlnaHQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1ib3R0b20gIHsgQGluY2x1ZGUgbXVpLWhpbmdlKG91dCwgYm90dG9tKTsgfVxuICAuaGluZ2Utb3V0LWZyb20tbGVmdCAgICB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIGxlZnQpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteCB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHRvcCwgICBjZW50ZXIpOyB9XG4gIC5oaW5nZS1vdXQtZnJvbS1taWRkbGUteSB7IEBpbmNsdWRlIG11aS1oaW5nZShvdXQsIHJpZ2h0LCBjZW50ZXIpOyB9XG5cbiAgLy8gU2NhbGVcbiAgLnNjYWxlLWluLXVwICAgIHsgQGluY2x1ZGUgbXVpLXpvb20oaW4sICAwLjUsIDEpOyB9XG4gIC5zY2FsZS1pbi1kb3duICB7IEBpbmNsdWRlIG11aS16b29tKGluLCAgMS41LCAxKTsgfVxuICAuc2NhbGUtb3V0LXVwICAgeyBAaW5jbHVkZSBtdWktem9vbShvdXQsIDEsIDEuNSk7IH1cbiAgLnNjYWxlLW91dC1kb3duIHsgQGluY2x1ZGUgbXVpLXpvb20ob3V0LCAxLCAwLjUpOyB9XG5cbiAgLy8gU3BpblxuICAuc3Bpbi1pbiAgICAgeyBAaW5jbHVkZSBtdWktc3BpbihpbiwgIGN3KTsgfVxuICAuc3Bpbi1vdXQgICAgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGN3KTsgfVxuICAuc3Bpbi1pbi1jY3cgIHsgQGluY2x1ZGUgbXVpLXNwaW4oaW4sICBjY3cpOyB9XG4gIC5zcGluLW91dC1jY3cgeyBAaW5jbHVkZSBtdWktc3BpbihvdXQsIGNjdyk7IH1cblxuICAvLyBUcmFuc2l0aW9uIE1vZGlmaWVyc1xuICAvLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1zcGVlZHMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tZHVyYXRpb246ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLWVhc2luZ3Mge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfSB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IHRyYW5zaXRpb24tZGVsYXk6ICR2YWx1ZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vIEFuaW1hdGlvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5AbWl4aW4gbW90aW9uLXVpLWFuaW1hdGlvbnMge1xuICAuc2hha2UgICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNoYWtlKTsgfVxuICAuc3Bpbi1jdyAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHNwaW4pOyB9XG4gIC5zcGluLWNjdyB7IEBpbmNsdWRlIG11aS1hbmltYXRpb24oc3BpbihjY3cpKTsgfVxuICAud2lnZ2xlICAgeyBAaW5jbHVkZSBtdWktYW5pbWF0aW9uKHdpZ2dsZSk7IH1cblxuICAuc2hha2UsXG4gIC5zcGluLWN3LFxuICAuc3Bpbi1jY3csXG4gIC53aWdnbGUge1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogbWFwLWdldCgkbW90aW9uLXVpLXNwZWVkcywgZGVmYXVsdCk7XG4gIH1cblxuICAvLyBBbmltYXRpb24gTW9kaWZpZXJzXG4gIC8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4gIC5pbmZpbml0ZSB7IGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbiAgQGVhY2ggJG5hbWUsICR2YWx1ZSBpbiAkbW90aW9uLXVpLXNwZWVkcyB7XG4gICAgQGlmICRuYW1lICE9IGRlZmF1bHQge1xuICAgICAgLiN7JG5hbWV9IHsgYW5pbWF0aW9uLWR1cmF0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1lYXNpbmdzIHtcbiAgICBAaWYgJG5hbWUgIT0gZGVmYXVsdCB7XG4gICAgICAuI3skbmFtZX0geyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdmFsdWUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBlYWNoICRuYW1lLCAkdmFsdWUgaW4gJG1vdGlvbi11aS1kZWxheXMge1xuICAgIEBpZiAkbmFtZSAhPSBkZWZhdWx0IHtcbiAgICAgIC4jeyRuYW1lfS1kZWxheSB7IGFuaW1hdGlvbi1kZWxheTogJHZhbHVlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEludGVybmFsIGNvdW50ZXIgZm9yIGNyZWF0aW5nIHVuaXF1ZSBrZXlmcmFtZSBuYW1lc1xuJC1tdWktY3VzdG9tOiAwO1xuXG4vLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucy4gVXNlIHRoaXMgZnVuY3Rpb24gaW5zdGVhZCBvZiBgbXVpLWFuaW1hdGlvbmAgaWYgeW91IHdhbnQgdG8gY3JlYXRlIGEga2V5ZnJhbWUgYW5pbWF0aW9uICp3aXRob3V0KiBhdXRvbWF0aWNhbGx5IGFzc2lnbmluZyBpdCB0byB0aGUgZWxlbWVudC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJG5hbWUgLSBOYW1lIG9mIHRoZSBrZXlmcmFtZS5cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRlZmZlY3RzLi4uIC0gT25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyB0byBidWlsZCB0aGUga2V5ZnJhbWUgd2l0aC5cbkBtaXhpbiBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkZWZmZWN0cy4uLikge1xuICAkb2JqOiAtbXVpLXByb2Nlc3MtYXJncygkZWZmZWN0cy4uLik7XG4gICRvYmo6IG1hcC1yZW1vdmUoJG9iaiwgbmFtZSk7XG5cbiAgQGtleWZyYW1lcyAjeyRuYW1lfSB7XG4gICAgLy8gTm93IGl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIHBlcmNlbnRhZ2VcbiAgICBAZWFjaCAkcGN0LCAkcHJvcHMgaW4gJG9iaiB7XG4gICAgICAjey1tdWkta2V5ZnJhbWUtcGN0KCRwY3QpfSB7XG4gICAgICAgIC8vIExhc3RseSwgaXRlcmF0ZSB0aHJvdWdoIGVhY2ggQ1NTIHByb3BlcnR5IHdpdGhpbiBhIHBlcmNlbnRhZ2UgYW5kIHByaW50IGl0IG91dFxuICAgICAgICBAZWFjaCAkcHJvcCwgJHZhbHVlIGluICRwcm9wcyB7XG4gICAgICAgICAgI3skcHJvcH06ICN7JHZhbHVlfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIHN0cmluZyBmb3IgYSBDU1Mga2V5ZnJhbWUsIGJ5IGNvbnZlcnRpbmcgYSBsaXN0IG9mIG51bWJlcnMgdG8gYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCBvZiBwZXJjZW50YWdlIHZhbHVlcy5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkaW5wdXQgLSBMaXN0IG9mIG51bWJlcnMgdG8gdXNlLlxuLy8vIEByZXR1cm4ge1N0cmluZ30gQSBzZXQgb2YgY29tbWEtc2VwYXJhdGVkIHBlcmNlbnRhZ2UgdmFsdWVzLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtcGN0KCRpbnB1dCkge1xuICAkb3V0cHV0OiAoKTtcblxuICBAaWYgdHlwZS1vZigkaW5wdXQpID09ICdudW1iZXInIHtcbiAgICAkb3V0cHV0OiAoJGlucHV0ICogMSUpO1xuICB9IEBlbHNlIGlmIHR5cGUtb2YoJGlucHV0KSA9PSAnbGlzdCcge1xuICAgIEBlYWNoICRpIGluICRpbnB1dCB7XG4gICAgICAkb3V0cHV0OiBhcHBlbmQoJG91dHB1dCwgKCRpICogMSUpLCBjb21tYSk7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBcIiN7JG91dHB1dH1cIjtcbn1cblxuLy8vIFByaW50cyB0aGUgQ1NTIHByb3BlcnRpZXMgZnJvbSBhIHNwZWNpZmljIGtleSBpbiBhIGtleWZyYW1lcyBtYXAuIFVzZWQgdG8gYm9ycm93IENTUyBmcm9tIGtleWZyYW1lIGZ1bmN0aW9ucyBmb3IgdXNlIGluIHRyYW5zaXRpb25zLlxuLy8vIEBwYXJhbSB7TWFwfSAka2YgLSBLZXlmcmFtZSBtYXAgdG8gZXh0cmFjdCBmcm9tLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAka2V5IC0gS2V5IGluIHRoZSBtYXAgdG8gcHJpbnQgdGhlIENTUyBvZi5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBtaXhpbiAtbXVpLWtleWZyYW1lLWdldCgka2YsICRrZXkpIHtcbiAgJG1hcDogbWFwLWdldCgka2YsICRrZXkpO1xuXG4gIEBlYWNoICRwcm9wLCAkdmFsdWUgaW4gJG1hcCBvciAoKSB7XG4gICAgLy8gU29tZSBrZXlmcmFtZSBtYXBzIHN0b3JlIHRyYW5zZm9ybXMgYXMgcXVvdGVkIHN0cmluZ3NcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdzdHJpbmcnIHtcbiAgICAgICR2YWx1ZTogdW5xdW90ZSgkdmFsdWUpO1xuICAgIH1cbiAgICAjeyRwcm9wfTogJHZhbHVlO1xuICB9XG59XG5cbi8vLyBSZWZvcm1hdHMgYSBtYXAgY29udGFpbmluZyBrZXlzIHdpdGggYSBsaXN0IG9mIHZhbHVlcywgc28gdGhhdCBlYWNoIGtleSBpcyBhIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byBzcGxpdCB1cC5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgcmVmb3JtYXR0ZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWkta2V5ZnJhbWUtc3BsaXQoJG1hcCkge1xuICAkbmV3LW1hcDogKCk7XG5cbiAgLy8gU3BsaXQga2V5cyB3aXRoIG11bHRpcGxlIHZhbHVlcyBpbnRvIGluZGl2aWR1YWwga2V5c1xuICBAZWFjaCAka2V5LCAkaXRlbSBpbiAkbWFwIHtcbiAgICAka2V5LXR5cGU6IHR5cGUtb2YoJGtleSk7XG5cbiAgICBAaWYgJGtleS10eXBlID09ICdudW1iZXInIHtcbiAgICAgICRuZXctbWFwOiBtYXAtbWVyZ2UoJG5ldy1tYXAsICgka2V5OiAkaXRlbSkpO1xuICAgIH0gQGVsc2UgaWYgJGtleS10eXBlID09ICdsaXN0JyB7XG4gICAgICBAZWFjaCAkayBpbiAka2V5IHtcbiAgICAgICAgJG5ldy1tYXA6IG1hcC1tZXJnZSgkbmV3LW1hcCwgKCRrOiAkaXRlbSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyBhIHNlcmllcyBvZiBrZXlmcmFtZSBvYmplY3RzIGludG8gb25lLlxuLy8vIEBwYXJhbSB7QXJnbGlzdH0gJG1hcHMuLi4gLSBBIHNlcmllcyBvZiBtYXBzIHRvIG1lcmdlLCBhcyBpbmRpdmlkdWFsIHBhcmFtZXRlcnMuXG4vLy8gQHJldHVybiB7TWFwfSBBIGNvbWJpbmVkIGtleWZyYW1lIG9iamVjdC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbkBmdW5jdGlvbiAtbXVpLWtleWZyYW1lLWNvbWJpbmUoJG1hcHMuLi4pIHtcbiAgJG5ldy1tYXA6ICgpO1xuXG4gIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIG1hcCBwYXNzZWQgaW5cbiAgQGVhY2ggJG1hcCBpbiAkbWFwcyB7XG4gICAgQGlmIC1tdWktaXMtZnVuY3Rpb24oJG1hcCkge1xuICAgICAgJG1hcDogLW11aS1zYWZlLWNhbGwoJG1hcCk7XG4gICAgfVxuXG4gICAgJG1hcDogLW11aS1rZXlmcmFtZS1zcGxpdCgkbWFwKTtcblxuICAgIC8vIEl0ZXJhdGUgdGhyb3VnaCBlYWNoIGtleWZyYW1lIGluIHRoZSBtYXBcbiAgICAvLyAka2V5IGlzIHRoZSBrZXlmcmFtZSBwZXJjZW50YWdlXG4gICAgLy8gJHZhbHVlIGlzIGEgbWFwIG9mIENTUyBwcm9wZXJ0aWVzXG4gICAgQGVhY2ggJGtleSwgJHZhbHVlIGluICRtYXAge1xuICAgICAgJG5ldy12YWx1ZTogKCk7XG5cbiAgICAgIEBpZiBtYXAtaGFzLWtleSgkbmV3LW1hcCwgJGtleSkge1xuICAgICAgICAvLyBJZiB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBrZXlmcmFtZSAlLCBhcHBlbmQgdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAtbXVpLW1lcmdlLXByb3BlcnRpZXMobWFwLWdldCgkbmV3LW1hcCwgJGtleSksICR2YWx1ZSk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgLy8gT3RoZXJ3aXNlLCBjcmVhdGUgYSBuZXcgbWFwIHdpdGggdGhlIG5ldyBwcm9wZXJ0eVxuICAgICAgICAkbmV3LXZhbHVlOiAkdmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIEZpbmFsbHksIG1lcmdlIHRoZSBtb2RpZmllZCBrZXlmcmFtZSB2YWx1ZSBpbnRvIHRoZSBvdXRwdXQgbWFwXG4gICAgICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAoJGtleTogJG5ldy12YWx1ZSkpO1xuICAgIH1cbiAgfVxuXG4gIC8vIE1ha2UgYSBuYW1lIGZvciB0aGUga2V5ZnJhbWVzXG4gICQtbXVpLWN1c3RvbTogJC1tdWktY3VzdG9tICsgMSAhZ2xvYmFsO1xuICAkbWFwLW5hbWU6IChuYW1lOiAnY3VzdG9tLSN7JC1tdWktY3VzdG9tfScpO1xuICAkbmV3LW1hcDogbWFwLW1lcmdlKCRuZXctbWFwLCAkbWFwLW5hbWUpO1xuXG4gIEByZXR1cm4gJG5ldy1tYXA7XG59XG5cbi8vLyBDb21iaW5lcyB0d28gbWFwcyBvZiBDU1MgcHJvcGVydGllcyBpbnRvIG9uZSBtYXAuIElmIGJvdGggbWFwcyBoYXZlIGEgdHJhbnNmb3JtIHByb3BlcnR5LCB0aGUgdmFsdWVzIGZyb20gZWFjaCB3aWxsIGJlIGNvbWJpbmVkIGludG8gb25lIHByb3BlcnR5LlxuLy8vIEBwYXJhbSB7TWFwfSAkb25lIC0gRmlyc3QgbWFwIHRvIG1lcmdlLlxuLy8vIEBwYXJhbSB7TWFwfSAkdHdvIC0gU2Vjb25kIG1hcCB0byBtZXJnZS5cbi8vLyBAcmV0dXJuIHtNYXB9IEEgY29tYmluZWQgbWFwLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuQGZ1bmN0aW9uIC1tdWktbWVyZ2UtcHJvcGVydGllcygkb25lLCAkdHdvKSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkb25lLCB0cmFuc2Zvcm0pIGFuZCBtYXAtaGFzLWtleSgkdHdvLCB0cmFuc2Zvcm0pIHtcbiAgICAkdHJhbnNmb3JtOiBqb2luKG1hcC1nZXQoJG9uZSwgdHJhbnNmb3JtKSwgbWFwLWdldCgkdHdvLCB0cmFuc2Zvcm0pKTtcbiAgICAkb25lOiBtYXAtbWVyZ2UoJG9uZSwgKHRyYW5zZm9ybTogJHRyYW5zZm9ybSkpO1xuICAgICR0d286IG1hcC1yZW1vdmUoJHR3bywgdHJhbnNmb3JtKTtcbiAgfVxuXG4gIEByZXR1cm4gbWFwLW1lcmdlKCRvbmUsICR0d28pO1xufVxuIiwiLy8vIENyZWF0ZXMgYSBzbGlkaW5nIHRyYW5zaXRpb24gYnkgdHJhbnNsYXRpbmcgdGhlIGVsZW1lbnQgaG9yaXpvbnRhbGx5IG9yIHZlcnRpY2FsbHkuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZGlyZWN0aW9uIFtudWxsXSAtIERpcmVjdGlvbiB0byBzbGlkZSB0by4gQ2FuIGJlIGB1cGAsIGByaWdodGAsIGBkb3duYCwgb3IgYGxlZnRgLiBCeSBkZWZhdWx0IGBsZWZ0YCBhbmQgYHJpZ2h0YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJGFtb3VudCBbMTAwJV0gLSBMZW5ndGggb2YgdGhlIHNsaWRlIGFzIGEgcGVyY2VudGFnZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRmYWRlIFtmYWxzZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS1zbGlkZSAoXG4gICRzdGF0ZTogaW4sXG4gICRkaXJlY3Rpb246IG51bGwsXG4gICRhbW91bnQ6IDEwMCUsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIHNsaWRlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgbGVmdCwgcmlnaHQpKTtcbiAgJHNsaWRlOiBzbGlkZSgkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIC8vIENTUyBPdXRwdXRcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJHNsaWRlLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cblxuICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzbGlkZSwgMTAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDEsIDApO1xuICAgIH1cbiAgfVxufVxuIiwiLy8vIENyZWF0ZXMgYSBmYWRlIHRyYW5zaXRpb24gYnkgYWRqdXN0aW5nIHRoZSBvcGFjaXR5IG9mIHRoZSBlbGVtZW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBPcGFjaXR5IHRvIHN0YXJ0IGF0LiBNdXN0IGJlIGEgbnVtYmVyIGJldHdlZW4gMCBhbmQgMS4gQnkgZGVmYXVsdCBgMGAgYW5kIGAxYCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRvIFtudWxsXSAtIE9wYWNpdHkgdG8gZW5kIG9uLiBCeSBkZWZhdWx0IGAxYCBhbmQgYDBgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGR1cmF0aW9uIFtudWxsXSAtIExlbmd0aCAoc3BlZWQpIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7S2V5d29yZHxGdW5jdGlvbn0gJHRpbWluZyBbbnVsbF0gLSBFYXNpbmcgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtEdXJhdGlvbn0gJGRlbGF5IFtudWxsXSAtIERlbGF5IGluIHNlY29uZHMgb3IgbWlsbGlzZWNvbmRzIGJlZm9yZSB0aGUgdHJhbnNpdGlvbiBzdGFydHMuXG5AbWl4aW4gbXVpLWZhZGUoXG4gICRzdGF0ZTogaW4sXG4gICRmcm9tOiBudWxsLFxuICAkdG86IG51bGwsXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJGZhZGU6IGZhZGUoJGZyb20sICR0byk7XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1zdGFydCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uLWJhc2ljcygkZHVyYXRpb24sICR0aW1pbmcsICRkZWxheSk7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGZhZGUsIDApO1xuXG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eTtcbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRmYWRlLCAxMDApO1xuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGhpbmdlIHRyYW5zaXRpb24gYnkgcm90YXRpbmcgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkc3RhdGUgW2luXSAtIFN0YXRlIHRvIHRyYW5zaXRpb24gdG8uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZnJvbSBbbGVmdF0gLSBFZGdlIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBmcm9tLiBDYW4gYmUgYHRvcGAsIGByaWdodGAsIGBib3R0b21gLCBvciBgbGVmdGAuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkYXhpcyBbZWRnZV0gLSBBeGlzIG9mIHRoZSBlbGVtZW50IHRvIHJvdGF0ZSBvbi4gQ2FuIGJlIGBlZGdlYCBvciBgY2VudGVyYC5cbi8vLyBAcGFyYW0ge0xlbmd0aH0gJHBlcnNwZWN0aXZlIFsyMDAwcHhdIC0gUGVyY2VpdmVkIGRpc3RhbmNlIGJldHdlZW4gdGhlIHZpZXdlciBhbmQgdGhlIGVsZW1lbnQuIEEgaGlnaGVyIG51bWJlciB3aWxsIG1ha2UgdGhlIHJvdGF0aW9uIGVmZmVjdCBtb3JlIHByb25vdW5jZWQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkdHVybi1vcmlnaW4gW251bGxdIC0gU2lkZSBvZiB0aGUgZWxlbWVudCB0byBzdGFydCB0aGUgcm90YXRpb24gZnJvbS4gQ2FuIGJlIGBmcm9tLWJhY2tgIG9yIGBmcm9tLWZyb250YC4gQnkgZGVmYXVsdCBgZnJvbS1iYWNrYCBhbmQgYGZyb20tZnJvbnRgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGZhZGUgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktaGluZ2UgKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbGVmdCxcbiAgJGF4aXM6IGVkZ2UsXG4gICRwZXJzcGVjdGl2ZTogMjAwMHB4LFxuICAkdHVybi1vcmlnaW46IG51bGwsXG4gICRmYWRlOiBtYXAtZ2V0KCRtb3Rpb24tdWktc2V0dGluZ3MsIGhpbmdlLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkdHVybi1vcmlnaW46IGlmKCR0dXJuLW9yaWdpbiAhPSBudWxsLCAkdHVybi1vcmlnaW4sIGlmKCRzdGF0ZSA9PSBpbiwgZnJvbS1iYWNrLCBmcm9tLWZyb250KSk7XG4gICRoaW5nZTogaGluZ2UoJHN0YXRlLCAkZnJvbSwgJGF4aXMsICRwZXJzcGVjdGl2ZSwgJHR1cm4tb3JpZ2luKTtcblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLXN0YXJ0KCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tYmFzaWNzKCRkdXJhdGlvbiwgJHRpbWluZywgJGRlbGF5KTtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkaGluZ2UsIDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMCwgMSk7XG4gICAgfSBAZWxzZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1lbmQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgLW11aS1rZXlmcmFtZS1nZXQoJGhpbmdlLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIHNjYWxpbmcgdHJhbnNpdGlvbi4gQSBzY2FsZSBvZiBgMWAgbWVhbnMgdGhlIGVsZW1lbnQgaXMgdGhlIHNhbWUgc2l6ZS4gTGFyZ2VyIG51bWJlcnMgbWFrZSB0aGUgZWxlbWVudCBiaWdnZXIsIHdoaWxlIG51bWJlcnMgbGVzcyB0aGFuIDEgbWFrZSB0aGUgZWxlbWVudCBzbWFsbGVyLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0YXRlIFtpbl0gLSBTdGF0ZSB0byB0cmFuc2l0aW9uIHRvLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkZnJvbSBbbnVsbF0gLSBTaXplIHRvIHN0YXJ0IGF0LiBCeSBkZWZhdWx0IGAwYCBhbmQgYDFgIGZvciBgaW5gIGFuZCBgb3V0YCBzdGF0ZXMgcmVzcGVjdGl2ZWx5LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdG8gW251bGxdIC0gU2l6ZSB0byBlbmQgYXQuIEJ5IGRlZmF1bHQgYDFgIGFuZCBgMGAgZm9yIGBpbmAgYW5kIGBvdXRgIHN0YXRlcyByZXNwZWN0aXZlbHkuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbdHJ1ZV0gLSBTZXQgdG8gYHRydWVgIHRvIGZhZGUgdGhlIGVsZW1lbnQgaW4gb3Igb3V0IHNpbXVsdGFuZW91c2x5LlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkdXJhdGlvbiBbbnVsbF0gLSBMZW5ndGggKHNwZWVkKSBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR8RnVuY3Rpb259ICR0aW1pbmcgW251bGxdIC0gRWFzaW5nIG9mIHRoZSB0cmFuc2l0aW9uLlxuLy8vIEBwYXJhbSB7RHVyYXRpb259ICRkZWxheSBbbnVsbF0gLSBEZWxheSBpbiBzZWNvbmRzIG9yIG1pbGxpc2Vjb25kcyBiZWZvcmUgdGhlIHRyYW5zaXRpb24gc3RhcnRzLlxuQG1peGluIG11aS16b29tKFxuICAkc3RhdGU6IGluLFxuICAkZnJvbTogbnVsbCxcbiAgJHRvOiBudWxsLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzY2FsZS1hbmQtZmFkZSksXG4gICRkdXJhdGlvbjogbnVsbCxcbiAgJHRpbWluZzogbnVsbCxcbiAgJGRlbGF5OiBudWxsXG4pIHtcbiAgJGZyb206IGlmKCRmcm9tICE9IG51bGwsICRmcm9tLCBpZigkc3RhdGUgPT0gaW4sIDAsIDEpKTtcbiAgJHRvOiBpZigkdG8gIT0gbnVsbCwgJHRvLCBpZigkc3RhdGUgPT0gaW4sIDEsIDApKTtcbiAgJHNjYWxlOiB6b29tKCRmcm9tLCAkdG8pO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzY2FsZSwgMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAwLCAxKTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybSwgb3BhY2l0eTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSB0cmFuc2l0aW9uLWVuZCgkc3RhdGUpIHtcbiAgICBAaW5jbHVkZSAtbXVpLWtleWZyYW1lLWdldCgkc2NhbGUsIDEwMCk7XG5cbiAgICBAaWYgJGZhZGUge1xuICAgICAgb3BhY2l0eTogaWYoJHN0YXRlID09IGluLCAxLCAwKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vLyBDcmVhdGVzIGEgc3Bpbm5pbmcgdHJhbnNpdGlvbiBieSByb3RhdGluZyB0aGUgZWxlbWVudC4gVGhlIGB0dXJuYCB1bml0IGlzIHVzZWQgdG8gc3BlY2lmeSBob3cgZmFyIHRvIHJvdGF0ZS4gYDF0dXJuYCBpcyBlcXVhbCB0byBhIDM2MC1kZWdyZWUgc3Bpbi5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzdGF0ZSBbaW5dIC0gU3RhdGUgdG8gdHJhbnNpdGlvbiB0by5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW251bGxdIC0gRGlyZWN0aW9uIHRvIHNwaW4uIFNob3VsZCBiZSBgY3dgIChjbG9ja3dpc2UpIG9yIGBjY3dgIChjb3VudGVyY2xvY2t3aXNlKS4gQnkgZGVmYXVsdCBgY3dgIGFuZCBgY2N3YCBmb3IgYGluYCBhbmQgYG91dGAgc3RhdGVzIHJlc3BlY3RpdmVseS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGFtb3VudCBbMC43NXR1cm5dIC0gQW1vdW50IHRvIGVsZW1lbnQgdGhlIGVsZW1lbnQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZmFkZSBbZmFsc2VdIC0gU2V0IHRvIGB0cnVlYCB0byBmYWRlIHRoZSBlbGVtZW50IGluIG9yIG91dCBzaW11bHRhbmVvdXNseS5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZHVyYXRpb24gW251bGxdIC0gTGVuZ3RoIChzcGVlZCkgb2YgdGhlIHRyYW5zaXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfEZ1bmN0aW9ufSAkdGltaW5nIFtudWxsXSAtIEVhc2luZyBvZiB0aGUgdHJhbnNpdGlvbi5cbi8vLyBAcGFyYW0ge0R1cmF0aW9ufSAkZGVsYXkgW251bGxdIC0gRGVsYXkgaW4gc2Vjb25kcyBvciBtaWxsaXNlY29uZHMgYmVmb3JlIHRoZSB0cmFuc2l0aW9uIHN0YXJ0cy5cbkBtaXhpbiBtdWktc3BpbihcbiAgJHN0YXRlOiBpbixcbiAgJGRpcmVjdGlvbjogY3csXG4gICRhbW91bnQ6IDAuNzV0dXJuLFxuICAkZmFkZTogbWFwLWdldCgkbW90aW9uLXVpLXNldHRpbmdzLCBzcGluLWFuZC1mYWRlKSxcbiAgJGR1cmF0aW9uOiBudWxsLFxuICAkdGltaW5nOiBudWxsLFxuICAkZGVsYXk6IG51bGxcbikge1xuICAkZGlyZWN0aW9uOiBpZigkZGlyZWN0aW9uICE9IG51bGwsICRkaXJlY3Rpb24sIGlmKCRzdGF0ZSA9PSBpbiwgY3csIGNjdykpO1xuICAkc3Bpbjogc3Bpbigkc3RhdGUsICRkaXJlY3Rpb24sICRhbW91bnQpO1xuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tc3RhcnQoJHN0YXRlKSB7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi1iYXNpY3MoJGR1cmF0aW9uLCAkdGltaW5nLCAkZGVsYXkpO1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAwKTtcblxuICAgIEBpZiAkZmFkZSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG4gICAgICBvcGFjaXR5OiBpZigkc3RhdGUgPT0gaW4sIDAsIDEpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogdHJhbnNmb3JtLCBvcGFjaXR5O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tZW5kKCRzdGF0ZSkge1xuICAgIEBpbmNsdWRlIC1tdWkta2V5ZnJhbWUtZ2V0KCRzcGluLCAxMDApO1xuXG4gICAgQGlmICRmYWRlIHtcbiAgICAgIG9wYWNpdHk6IGlmKCRzdGF0ZSA9PSBpbiwgMSwgMCk7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQ3JlYXRlcyBhIGtleWZyYW1lIGZyb20gb25lIG9yIG1vcmUgZWZmZWN0IGZ1bmN0aW9ucyBhbmQgYXNzaWducyBpdCB0byB0aGUgZWxlbWVudCBieSBhZGRpbmcgdGhlIGBhbmltYXRpb24tbmFtZWAgcHJvcGVydHkuXG4vLy8gQHBhcmFtIHtBcmdsaXN0fSAkZWZmZWN0cy4uLiAtIE9uZSBvciBtb3JlIGVmZmVjdCBmdW5jdGlvbnMgdG8gYnVpbGQgdGhlIGtleWZyYW1lIHdpdGguXG5AbWl4aW4gbXVpLWFuaW1hdGlvbigkYXJncy4uLikge1xuICAkbmFtZTogbWFwLWdldCgtbXVpLXByb2Nlc3MtYXJncygkYXJncy4uLiksIG5hbWUpO1xuICBAaW5jbHVkZSBtdWkta2V5ZnJhbWVzKCRuYW1lLCAkYXJncy4uLik7XG4gIGFuaW1hdGlvbi1uYW1lOiB1bnF1b3RlKCRuYW1lKTtcbn1cbiIsImgxIHtcbiAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gIGZvbnQtc2l6ZTpmb250LXJlbSg0Mik7XG4gIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDUwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6Zm9udC1yZW0oNTUpO1xuICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDYwKTtcbiAgfVxufVxuXG5oMiB7XG4gIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICBmb250LXNpemU6Zm9udC1yZW0oMzkpO1xuICBsaW5lLWhlaWdodDpmb250LXJlbSg1MCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDQ2KTtcbiAgICBsaW5lLWhlaWdodDpmb250LXJlbSg1NSk7XG4gIH1cbn1cbmgzIHtcbiAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gIGZvbnQtc2l6ZTogZm9udC1yZW0oMzMpO1xuICBsaW5lLWhlaWdodDogZm9udC1yZW0oNDApO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIGZvbnQtc2l6ZTogZm9udC1yZW0oMzgpO1xuICAgIGxpbmUtaGVpZ2h0OiBmb250LXJlbSg1MCk7XG4gIH1cbn1cblxuaDQge1xuICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgZm9udC1zaXplOiBmb250LXJlbSgyOSk7XG4gIGxpbmUtaGVpZ2h0OiBmb250LXJlbSgzNyk7XG59XG5cbmg1IHtcbiAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gIGZvbnQtc2l6ZTpmb250LXJlbSgyMSk7XG4gIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDI3KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBmb250LXNpemU6Zm9udC1yZW0oMjQpO1xuICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDMwKTtcbiAgfVxufVxuXG5oNiB7XG4gIEBpbmNsdWRlIHByaW1hcnktZm9udCg2MDApO1xuICBmb250LXNpemU6Zm9udC1yZW0oMjEpO1xuICBsaW5lLWhlaWdodDpmb250LXJlbSgzMCk7XG59XG5cbnAge1xuICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgZm9udC1zaXplOmZvbnQtcmVtKDE5KTtcbiAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMzIpO1xuICBjb2xvcjogIzE4MjAyQztcbiAgJi5oYXMtbWVkaXVtLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDIxKTtcbiAgICBsaW5lLWhlaWdodDpmb250LXJlbSgzMSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyNCk7XG4gICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgzOCk7XG4gICAgfVxuICB9XG59XG5cbnVsLCBvbCB7XG4gIGxpIHtcbiAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICBmb250LXNpemU6Zm9udC1yZW0oMTcpO1xuICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDI3KTtcbiAgICBjb2xvcjojMkQzMzQ0O1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oMTkpO1xuICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMzIpO1xuICAgIH1cbiAgfVxufSIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcmM6ICB1cmwoJy4uL2ZvbnRzL2ljb21vb24uZW90P3MwcjI4cTEnKTtcbiAgc3JjOiAgdXJsKCcuLi9mb250cy9pY29tb29uLmVvdD9zMHIyOHExI2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgIHVybCgnLi4vZm9udHMvaWNvbW9vbi53b2ZmMj9zMHIyOHExJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnLi4vZm9udHMvaWNvbW9vbi50dGY/czByMjhxMScpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uL2ZvbnRzL2ljb21vb24ud29mZj9zMHIyOHExJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi9mb250cy9pY29tb29uLnN2Zz9zMHIyOHExI2ljb21vb24nKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtZGlzcGxheTogYmxvY2s7XG59XG5cbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbicgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5ldmVyO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4uaWNvbi1wbGF5MzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZWExY1wiO1xufVxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cbi5pY29uLWRvd25sb2FkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4uaWNvbi1leHBhbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi5pY29uLWxvbmctYXJyb3ctYmFjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwM1wiO1xufVxuLmljb24tYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDRcIjtcbn1cbi5pY29uLXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDVcIjtcbn1cbi5pY29uLXNtYWxsLWFycm93LWRvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjtcbn1cbi5pY29uLXdhdmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5pY29uLWxvbmctYXJyb3c6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjtcbn1cbi5pY29uLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4uaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG59XG4uaWNvbi1saW5rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi1wZGY6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGRcIjtcbn1cbi5pY29uLXF1b3RlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4uaWNvbi1wcmludDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZlwiO1xufVxuLmljb24tc2VhcmNoOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLmljb24teW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5pY29uLW1lbnU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cbiIsIkBtZWRpYSBwcmludCB7XG4gICAgW2RhdGEtYW9zXj1cImZhZGVcIl1bZGF0YS1hb3NePVwiZmFkZVwiXSB7XG4gICAgICAgIG9wYWNpdHk6IDEgIWltcG9ydGFudDtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIGJvZHkge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgICBoZWFkZXIuaGVhZGVyIHtcbiAgICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXIgLmhlYWRlci1pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmhlYWRlcixcbiAgICAuY2FzZS1iYW5uZXIgaW1nLFxuICAgIC5jYXNlLWJhbm5lciAuY2FzZS1iYW5uZXItd3JhcHBlcixcbiAgICAuaGVhZGVyIC5oZWFkZXItaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmNhc2Utc3R1ZHktY29udGFpbmVyIC5hbGlnbmZ1bGwge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG4gICAgXG4gICAgLmJhbm5lci1kZXRhaWxzIGgxLFxuICAgIC5iYW5uZXItZGV0YWlscyBoNCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cbiAgICBcbiAgICAjbWFpbiB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgIC5oZWFkZXItcmlnaHQtc2VjdGlvbixcbiAgICAucHJpbnQtd3JhcHBlcixcbiAgICAjbWFpbiA+IC5yb3cgPiAubWVkaXVtLTQsXG4gICAgZm9vdGVyLmZvb3RlcixcbiAgICAuc2hvdy1mb3Itc3Ige1xuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIFxuICAgICNtYWluID4gLnJvdyA+IC5tZWRpdW0tOCB7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxufSIsIi5icmVhZGNydW1icyxcbi55b2FzdC1icmVhZGNydW1icyB7XG4gID4gc3BhbiB7XG4gICAgY29sb3I6IzMzM0M0MjtcbiAgICA+IHNwYW4ge1xuICAgICAgQGluY2x1ZGUgc2Vjb25kYXJ5LWZvbnQoNDAwKTtcbiAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICBjb2xvcjojMzMzQzQyO1xuICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDEwIDAgMTApO1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiMzMzNDNDI7XG4gICAgICB9XG4gICAgICAmLmJyZWFkY3J1bWJfbGFzdCB7XG4gICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAxMCAwIDEwKTtcbiAgICAgICAgQGluY2x1ZGUgc2Vjb25kYXJ5LWZvbnQoNzAwKTtcbiAgICAgIH1cbiAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6MDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCJib2R5IHtcbiAgJi5zaW5nbGUtY2FyZWVyLFxuICAmLnNpbmdsZS1wb3N0IHtcbiAgICAucGFnZS10aXRsZS13cmFwcGVyIHtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNDAgMjUgMCAyNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgfVxuICAgICAgLnRoZS10aXRsZSB7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoNDAgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg2MCAwIDgwIDApO1xuICAgICAgICAgIG1heC13aWR0aDpyZW0tY2FsYyg4MDApO1xuICAgICAgICB9XG4gICAgICAgIGgzLCBoNSB7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2FyZWVyLWRldGFpbHMge1xuICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDI1IDgwIDI1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTIwNSk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvIHJlbS1jYWxjKDUwKSBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwYWRkaW5nOjA7XG4gICAgICB9XG4gICAgICAuY2FyZWVyLWRldGFpbHMtdGFicyB7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDAgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI3Nik7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDEwMCAwIDApO1xuICAgICAgICB9XG4gICAgICAgIC50YWJzIHtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgLnRhYnMtdGl0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDojQ0NGMEY3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxNSAyMCk7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDIwKTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMzQpO1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSxcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNCMkU0RUQ7XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogIzE3Mzc2NjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jYXJlZXItZGV0YWlscy1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNzkwKTtcbiAgICAgICAgfVxuICAgICAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcblxuICAgICAgICAgIC50YWJzLXBhbmVsIHtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIC53eXNpd3lnIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnBvc2l0aW9uLWRldGFpbHMge1xuICAgICAgICAgICAgICAuc3ViLWl0ZW0ge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygyMCAwKTtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgY29sdW1uLWdhcDogcmVtLWNhbGMoMTApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDQwMCk7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICAgICYua2V5IHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMTcwKTtcbiAgICAgICAgICAgICAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgICAgICAgICAgICAmLnRoZW1lLTEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYmFjay13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDpyZW0tY2FsYyg0MCk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgbWFyZ2luLXRvcDpyZW0tY2FsYyg3MCk7XG4gIH1cbiAgYSB7XG4gICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjM0KTtcbiAgICBjb2xvcjojMTczNzY2O1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygxMCk7XG4gICAgaSB7XG4gICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICByaWdodDpyZW0tY2FsYyg1KTtcbiAgICAgIHRvcDpyZW0tY2FsYygtMSk7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oMTApO1xuICAgICAgdHJhbnNpdGlvbjphbGwgMC4xcyBsaW5lYXI7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgaSB7XG4gICAgICAgIHJpZ2h0OnJlbS1jYWxjKDE1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAmLnRoZW1lLTEge1xuICAgIC5hY2NvcmRpb24ge1xuICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgYm9yZGVyLXRvcDo0LjVweCBzb2xpZCAjMTczNzY2O1xuICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMjEpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDI4KTtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDIwIDMwIDIwIDApO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICAgICAgICAgIHRvcDpyZW0tY2FsYygyNSk7XG4gICAgICAgICAgICByaWdodDowO1xuICAgICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMzIpO1xuICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0NDRjBGNztcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgMzAgMCk7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgIGNvbG9yOiAjMTgyMDJDO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDon4pePJztcbiAgICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTQpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDE1IDAgMCAyMCk7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6J+KXiyc7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwYVwiO1xuICAgICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMS41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi50aGVtZS0yIHtcbiAgICAuYWNjb3JkaW9uIHtcbiAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgIC5hY2NvcmRpb24taXRlbSB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMTEpO1xuICAgICAgICBiYWNrZ3JvdW5kOiNGRkZGRkY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTApO1xuICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygyNCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMjgpO1xuICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDI3IDQwIDI3IDcyKTtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OmF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxOSk7XG4gICAgICAgICAgICBjb2xvcjojMTgyMDJDO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNik7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwYlwiO1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICB0b3A6cmVtLWNhbGMoMzIpO1xuICAgICAgICAgICAgbGVmdDpyZW0tY2FsYygxMyk7XG4gICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygzMik7XG4gICAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMzIpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czoxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDojQ0NGMEY3O1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEwIDQwIDMwIDcyKTtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgY29sb3I6ICMxODIwMkM7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNSk7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50Oifil48nO1xuICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPiB1bCB7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMTUgMCAwIDIwKTtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDon4peLJztcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE0KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnRhYmxlIHtcbiAgICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICM3MDcwNzA7XG4gICAgICAgICAgICAgICAgdHIge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgMCA0NSAwKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOSk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMjEpO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgdGJvZHkge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICAgICAgICB0ciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMTAgMCk7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTUpO1xuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246cmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicrJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToxcHggc29saWQgIzE4MjAyQztcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgLmFjY29yZGlvbi10aXRsZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxLjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsImJvZHkge1xuICAmLnBhZ2UtdGVtcGxhdGUtcGFnZS1sYW5kaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiNFQUY5RkM7XG4gICAgaGVhZGVyIHtcbiAgICAgIGJhY2tncm91bmQ6I0VBRjlGQztcbiAgICB9XG4gIH1cbiAgJi5wYWdlLXRlbXBsYXRlLXBhZ2UtZGV0YWlscyB7XG4gICAgLmRldGFpbHMtcGFnZS1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYyg0MCk7XG4gICAgICBoNCB7XG4gICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICB9XG4gICAgICA+IGg0IHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCA0MCAwKTtcbiAgICAgIH1cbiAgICAgID4gaDMsaDQsaDUsaDYge1xuICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgfVxuICAgICAgPiBwIHtcbiAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgPiBsaSB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50Oifil48nO1xuICAgICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDE1IDAgMCAyMCk7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygxNSk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDEwKTtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6J+KXiyc7XG4gICAgICAgICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE0KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnNlbGVjdDItY29udGFpbmVyIHtcbiAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xuICAuc2VsZWN0aW9uIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24ge1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDU0KTtcbiAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMjcpO1xuICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgYm9yZGVyOjJweCBzb2xpZCAjMDBBNEM0O1xuICAgICAgYmFja2dyb3VuZDojZmZmO1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAyNSk7XG4gICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOSk7XG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICAgICAgcmlnaHQ6cmVtLWNhbGMoMjUpO1xuICAgICAgICB0b3A6cmVtLWNhbGMoMTIpO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNlwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDEwKTtcbiAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgY29sb3I6IzAwQTRDNDtcbiAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICB0cmFuc2l0aW9uOmFsbCAwLjJzIGxpbmVhcjtcbiAgICAgICAgfVxuICAgICAgICBiIHtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgdHJhbnNmb3JtOnJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDcpO1xuICAgIGJvcmRlcjpub25lO1xuICAgIG92ZXJmbG93OmhpZGRlbjtcbiAgICBib3gtc2hhZG93OjAgcmVtLWNhbGMoMykgcmVtLWNhbGMoNikgcmdiYSgwLDAsMCwwLjE2KTtcbiAgICB0b3A6cmVtLWNhbGMoMyk7XG4gICAgLnNlbGVjdDItcmVzdWx0cyB7XG4gICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb25zIHtcbiAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDYgMTUpO1xuICAgICAgICAgIEBpbmNsdWRlIHNlY29uZGFyeS1mb250KDYwMCk7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0VCRUJFQjtcbiAgICAgICAgICAgIGNvbG9yOiMwMDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICYuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLWhpZ2hsaWdodGVkIHtcbiAgICAgICAgICAgIGNvbG9yOiMwMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLm5ld3MtY29udGFpbmVyIHtcbiAgcGFkZGluZzpyZW0tY2FsYygwIDIwIDUwIDIwKTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAwIDUwIDApO1xuICAgIG1heC13aWR0aDpyZW0tY2FsYyg4MDApO1xuICAgIG1hcmdpbjpyZW0tY2FsYygwIC0xNik7XG4gIH1cbn1cblxuLndwLWJsb2NrLWNvbHVtbnMge1xuICBtYXJnaW46IHJlbS1jYWxjKDAgMCA1MCAwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTIwIDUwIC0yMCk7XG4gIH1cbiAgLndwLWJsb2NrLWNvbHVtbiB7XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjQ0VEN0UxO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgIH1cbiAgICA+IGg0IHtcbiAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDAgMCk7XG4gICAgfVxuICAgID4gaDMsaDQsaDUsaDYge1xuICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICB9XG4gICAgPiBwIHtcbiAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBtYXJnaW46MDtcbiAgICAgID4gbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNSk7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50Oifil48nO1xuICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgIH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gdWwge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDE1IDAgMCAyMCk7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6J+KXiyc7XG4gICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAudHdpdHRlci1ibG9jayxcbiAgICA+IC5hY2NvcmRpb24td3JhcHBlcixcbiAgICA+IC5maWxlcy1ibG9ja3tcbiAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgIH1cbiAgfVxufSIsIi53cC1ibG9jay1xdW90ZSB7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMzAgNDAgMjAgNDApO1xuICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDM1KTtcbiAgYmFja2dyb3VuZDojRUFGOUZDO1xuICBib3JkZXI6bm9uZTtcbiAgbWFyZ2luOnJlbS1jYWxjKDMwIDApO1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBtYXJnaW46cmVtLWNhbGMoNjAgMCk7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG4gICAgZm9udC1mYW1pbHk6J2ljb21vb24nLCBzYW5zLXNlcmlmO1xuICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDM1KTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICBkaXNwbGF5OmJsb2NrO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oNDApO1xuICAgIH1cbiAgfVxuICBwIHtcbiAgICBjb2xvcjojMTczNzY2O1xuICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMyk7XG4gICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMjcpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oMjkpO1xuICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMzcpO1xuICAgIH1cbiAgfVxuICBjaXRlIHtcbiAgICBjb2xvcjojMDAwO1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xuICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNyk7XG4gIH1cbn1cblxuQG1lZGlhIHByaW50IHtcbiAgLndwLWJsb2NrLXF1b3RlIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIG1hcmdpbjpyZW0tY2FsYygxMCAwKTtcbiAgfVxufSIsIi5sb2NhdGlvbi1tYXAge1xuICBwYWRkaW5nOiByZW0tY2FsYyg0MCAwKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDQwIDAgNzAgMCk7XG4gIH1cbiAgLm1hcC1zZWFyY2gge1xuICAgIGJhY2tncm91bmQ6I0VBRjlGQztcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDM1IDMwIDUwIDMwKTtcbiAgICBtYXJnaW46cmVtLWNhbGMoMCAwIDUwIDApO1xuICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKCAyOCApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46cmVtLWNhbGMoMCAwIDUwIDApO1xuICAgICAgcGFkZGluZzpyZW0tY2FsYygzMCk7XG4gICAgfVxuICAgIC5tYXAtc2VhcmNoLWlubmVyIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoIDE3ICk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGhlaWdodDpyZW0tY2FsYyg4NCk7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6JHdoaXRlO1xuICAgICAgfVxuICAgICAgLmNpdGllcy1zZWN0aW9uIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDM1KTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgfVxuICAgICAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDM1KSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoNTApO1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE5KTtcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDQzNSkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICAgICAgICAgIGxlZnQ6cmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgICByaWdodDphdXRvO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoIDAsIC01MCUgKTtcbiAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICNFNTZEMDY7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5vci1zZWN0aW9uIHtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDU1KTtcbiAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoNTUpO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE1KTtcbiAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoNzUpO1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygzNSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMzUpO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOjA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6cmVtLWNhbGMoMSkgc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6cmVtLWNhbGMoMSkgc29saWQgIzE3Mzc2NjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNlYXJjaC1zZWN0aW9uIHtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICB0b3A6cmVtLWNhbGMoMjApO1xuICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNik7XG4gICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbGVmdDpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93Om5vbmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDUwKTtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNjApO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDYwKTtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTkpO1xuICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYyg3MCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgIG9wYWNpdHk6MC45O1xuICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE5KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDYwKTtcbiAgICAgICAgICAgIHdoaXRlLXNwYWNlOnByZS1saW5lO1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3VibWl0LXNlY3Rpb24ge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYygyMCk7XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg1MSk7XG4gICAgICAgICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zKTtcbiAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgMzUpO1xuICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMzIpO1xuICAgICAgICAgIGJvcmRlcjoyLjVweCBzb2xpZCAjRTU2RDA2O1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiByZW0tY2FsYyg2Mik7XG4gICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgNDUpO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDojMTczNzY2O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICNtYXAge1xuICAgIGhlaWdodDpyZW0tY2FsYygzNTApO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGhlaWdodDpyZW0tY2FsYyg2OTUpO1xuICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgIH1cbiAgfVxuICAubG9jYXRpb25zIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDY5NSk7XG4gICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICBvdmVyZmxvdy15OmF1dG87XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgcGFkZGluZzowO1xuICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTpyZW0tY2FsYygyKSBzb2xpZCAjMDBBNEM0O1xuICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICBcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0VBRjlGQztcbiAgICAgICAgICB9XG4gICAgICAgICAgXG4gICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygzNSAzMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKCAyNCApO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubG9jYXRpb24tZGV0YWlscyB7XG4gICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTkpO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoMjgpO1xuICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMTUpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubG9jYXRpb24taG91cnMge1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDE5KTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAuaG91cnMtdGl0bGUge1xuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMxNzM3NjY7XG4gICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogIzE4MjAyQztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuY2FzZS1zdHVkeS1jb250YWluZXIge1xuICAuYWxpZ25mdWxsIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWxlZnQgIDogY2FsYyggLTEwMHZ3IC8gMiArIDE1MiUgLyAyICk7XG4gICAgICB3aWR0aDogMTAwdnc7XG4gICAgfVxuICB9XG4gIC53cC1ibG9jay1pbWFnZSB7XG4gICAgbWFyZ2luOiByZW0tY2FsYygyNSk7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjogcmVtLWNhbGMoNDAgMCk7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDMwKTtcbiAgICB9XG4gIH1cbiAgLndwLWJsb2NrLXF1b3RlIHtcbiAgICBtYXJnaW46cmVtLWNhbGMoMjUpO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46cmVtLWNhbGMoNjAgMCk7XG4gICAgfVxuICB9XG4gIC5zdGF0cy1ibG9jayB7XG4gICAgcGFkZGluZzowO1xuICB9XG59XG4ucHJpbnQtd3JhcHBlciB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG4gIC5wcmludC1jYXNlLXN0dWR5IHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDAgNDAgMCAzMCk7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDYxKTtcbiAgICBsaW5lLWhlaWdodDpmb250LXJlbSg2MSk7XG4gICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzNik7XG4gICAgbWFyZ2luOiByZW0tY2FsYygzMCAyNSA2MCAyNSk7XG4gICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNzEpO1xuICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oNzEpO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYyg4MTAgMCAwIDApO1xuICAgIH1cbiAgICBpIHtcbiAgICAgIHdpZHRoOnJlbS1jYWxjKDM4KTtcbiAgICAgIGhlaWdodDpyZW0tY2FsYygzOCk7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZDojRTU2RDA2O1xuICAgICAgY29sb3I6I0ZGRkZGRjtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYygxNSk7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oMjEpO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAud3AtYmxvY2staW1hZ2Uge1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxufSIsIi5oZWxwLW1lbnUge1xuICAuaGVscC1tZW51LXRvZ2dsZSB7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDU4KTtcbiAgICBsaW5lLWhlaWdodDpmb250LXJlbSg1OCk7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGJvcmRlcjoyLjVweCBzb2xpZCAjMDBBNEM0O1xuICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMjkpO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAzMCAwIDM1KTtcbiAgICBjb2xvcjojMTczNzY2O1xuICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMjUpO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlxcZTkwNlwiO1xuICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJywgc2Fucy1zZXJpZjtcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgcmlnaHQ6cmVtLWNhbGMoMzApO1xuICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDEwKTtcbiAgICAgIGNvbG9yOiAjMDBBNEM0O1xuICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcyBsaW5lYXI7XG4gICAgfVxuICAgICYuaG92ZXIge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmRyb3Bkb3duLXBhbmUge1xuICAgIHdpZHRoOnJlbS1jYWxjKDM3Nik7XG4gICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzNSk7XG4gICAgbWFyZ2luLXRvcDpyZW0tY2FsYygxMik7XG4gICAgYm9yZGVyOjFweCBzb2xpZCAjMDBBNEM0O1xuICAgIHBhZGRpbmc6MDtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuOTUpO1xuICAgIHRvcDpyZW0tY2FsYygxMTApICFpbXBvcnRhbnQ7XG4gICAgbWF4LWhlaWdodDpyZW0tY2FsYygzMDApO1xuICAgIG92ZXJmbG93LXk6YXV0bztcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LWhlaWdodDpyZW0tY2FsYyg1MDApO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICBtYXJnaW46MDtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxNSAzNSk7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMjApO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjI1KTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6I0NDRjBGNztcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjojMTczNzY2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59IiwiLnNlYXJjaC1pbnRybyB7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxuICAuc2VhcmNoLXRpdGxlIHtcbiAgICBtYXJnaW46cmVtLWNhbGMoNDAgMCk7XG4gICAgaDMge1xuICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA3XCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OidpY29tb29uJywgc2Fucy1zZXJpZjtcbiAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDExKTtcbiAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzLXdyYXBwZXIge1xuICBwYWRkaW5nOnJlbS1jYWxjKDAgMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxuICAucG9zdC1kZXRhaWxzIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDE1IDApO1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICNkZGQ7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjAgMCk7XG4gICAgfVxuICAgIGg2IHtcbiAgICAgIGEge1xuICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgfVxuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOiMzMzM7XG4gICAgfVxuICB9XG59XG5cbi5zZWFyY2gtcmVzdWx0cyB7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICBtYXJnaW46IHJlbS1jYWxjKDQwIDMwIDgwIDMwKTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luOiByZW0tY2FsYyg0MCAwIDgwIDApO1xuICAgIH1cbiAgICAucGFnZS1udW1iZXJzIHtcbiAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICYubmV4dCB7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTEpO1xuICAgICAgICBsaW5lLWhlaWdodDogZm9udC1yZW0oNTEpO1xuICAgICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjMpO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgMzUpO1xuICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMzIpO1xuICAgICAgICBib3JkZXI6Mi41cHggc29saWQgI0U1NkQwNjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1yZW0oNjIpO1xuICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCA0NSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiMxNzM3NjY7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiMxNzM3NjY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuaGVhZGVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBib3gtc2hhZG93OjAgcmVtLWNhbGMoMykgcmVtLWNhbGMoNikgcmdiYSgwLDAsMCwwLjE2KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBib3gtc2hhZG93Om5vbmU7XG4gIH1cbiAgLmhlYWRlci1pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHotaW5kZXg6MTAwO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDE1IDM1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzpyZW0tY2FsYyg0MCAwIDQ1IDApO1xuICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICB9XG4gICAgLmxvZ28ge1xuICAgICAgYSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1Nyk7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoOTYuMzYpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXJpZ2h0LXNlY3Rpb24ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAubGFuZ3VhZ2VzIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxhbmd1YWdlcyxcbiAgICAgIC50b3AtbWVudSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgyMCk7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMjUpO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICAgICYuYWN0aXZlLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IzAwQTRDNDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5oZWxwLW1lbnUge1xuICAgICAgICB3aWR0aDpyZW0tY2FsYygzNzYpO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoNTApO1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhhbWJ1cmdlci1tZW51IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDQ1KTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygzMyk7XG4gICAgICAgIGZsZXgtc2hyaW5rOjA7XG4gICAgICAgIG1hcmdpbi1yaWdodDowO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgzMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZG9uYXRlLWxpbmsge1xuICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAzNSAwIDQwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAudG9wLW1lbnUge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoIDEwICk7XG4gICAgICAgICAgXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoIDEwICk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tYWluLW1lbnUge1xuICAgIHdpZHRoOjEwMCU7XG4gICAgcGFkZGluZzpyZW0tY2FsYygzNSk7XG4gICAgdHJhbnNpdGlvbjphbGwgMC4zcyBsaW5lYXI7XG4gICAgZGlzcGxheTpub25lO1xuICAgIHotaW5kZXg6MTAwMTtcbiAgICBwb3NpdGlvbjpmaXhlZDtcbiAgICB0cmFuc2Zvcm06dHJhbnNsYXRlWCgxMDAlKTtcbiAgICBiYWNrZ3JvdW5kOnVybCgnLi4vaW1nL21lbnUtYmcuanBnJykgbm8tcmVwZWF0IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOmNvdmVyO1xuICAgIHJpZ2h0OjA7XG4gICAgYm90dG9tOjA7XG4gICAgdG9wOjA7XG4gICAgb3ZlcmZsb3cteTphdXRvO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOnJlbS1jYWxjKDQ1IDEwMCk7XG4gICAgICBkaXNwbGF5OmJsb2NrO1xuICAgIH1cbiAgICAubWFpbi1tZW51LWlubmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIG1pbi1oZWlnaHQ6MTAwdmg7XG5cbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTIwNSk7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBtaW4taGVpZ2h0OmF1dG87XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICB9XG4gICAgICAuc2VhcmNoIHtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDYwcHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNDkxKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDcwKTtcbiAgICAgICAgfVxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg0Ni43MCk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6bm9uZTtcbiAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDMwIDAgNTApO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0NDRjBGNztcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIGJvcmRlcjoyLjVweCBzb2xpZCAjMDBBNEM0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDpyZW0tY2FsYygxNCk7XG4gICAgICAgICAgICBsZWZ0OnJlbS1jYWxjKDE0KTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMCk7XG4gICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgdG9wOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgbGVmdDpyZW0tY2FsYygyMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY2xvc2UtbWVudSB7XG4gICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICByaWdodDowO1xuICAgICAgICB0b3A6MDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoNDYpO1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg0Nik7XG4gICAgICAgICAgYmFja2dyb3VuZDojZmZmO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDU5KTtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg1OSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZDpyZ2JhKDI1NSwyNTUsMjU1LDAuMzMpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhlbHAtbWVudSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzUpO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgLmRyb3Bkb3duLXBhbmUge1xuICAgICAgICAgIHBvc2l0aW9uOnN0YXRpYztcbiAgICAgICAgICB0b3A6MCAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50aGUtbWVudSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNDApO1xuICAgICAgICAuYWNjb3JkaW9uLW1lbnUge1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiAubWVudS1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICM5MkRCRTg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOm5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDI1IDApO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDIyKTtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMik7XG5cbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oNDYpO1xuXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYub3BhY2l0eSB7XG4gICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuNDM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaXMtYWNjb3JkaW9uLXN1Ym1lbnUtcGFyZW50IHtcbiAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246c3RhdGljO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OidpY29tb29uJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICAgICAgICByaWdodDpyZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOCk7XG4gICAgICAgICAgICAgICAgICB0b3A6cmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDI0KTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6cmVtLWNhbGMoLTM1KTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOnJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06bm9uZTtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MGFcIjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDIpO1xuICAgICAgICAgICAgICAgICAgICB0b3A6cmVtLWNhbGMoMzgpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyLjUpO1xuICAgICAgICAgICAgICAgICAgICAgIHRvcDpyZW0tY2FsYyg0OCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuaXMtYWNjb3JkaW9uLXN1Ym1lbnUge1xuICAgICAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMTUgMCAzMCAwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBsZWZ0OnJlbS1jYWxjKDY0MCk7XG4gICAgICAgICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDEwIDApO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTcpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg2MDApO1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyNSk7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDE4IDApO1xuICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICNFNTZEMDY7XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaGVhZGVyLW1lbnUtbGlua3Mge1xuICAgICAgICBtYXJnaW4tdG9wOmF1dG87XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBmbGV4LXdyYXA6d3JhcDtcblxuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBmbGV4LXdyYXA6bm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMjQgMjUgMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxMCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE1KTtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMyk7XG4gICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206M3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmZvb3RlciB7XG4gIGJhY2tncm91bmQ6IzE3Mzc2NjtcbiAgcGFkZGluZzpyZW0tY2FsYyg0NSAzNSk7XG4gIG1hcmdpbi10b3A6YXV0bztcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDY1IDAgNTAgMCk7XG4gIH1cbiAgLmZvb3Rlci1pbm5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTIwNSk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmxvZ28tc29jaWFsIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgLmZvb3Rlci1sb2dvIHtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCA0MCAwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDMwMSk7XG4gICAgICAgICAgaGVpZ2h0OmF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDM4Mik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVudS1zb2NpYWwge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246cm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmZvb3Rlci1saW5rcyxcbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCA1MCAwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgICAgIC5zb2NpYWwge1xuICAgICAgICAgIG9yZGVyOjE7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG9yZGVyOjI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5mb290ZXItbGlua3Mge1xuICAgICAgICAgIG9yZGVyOjI7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG9yZGVyOjE7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBzZWNvbmRhcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6XCJ8XCI7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAyMik7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNvY2lhbCB7XG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMjUgMCAwKTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMjIpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAwIDI1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZvb3Rlci1tZW51IHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtd3JhcDp3cmFwO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblxuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgQGluY2x1ZGUgc2Vjb25kYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE0KTtcbiAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTUgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW51IHtcbiAgICAgICAgZmxleC13cmFwOndyYXA7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCAxNSAwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlY29uZGFyeS1mb250KDQwMCk7XG4gICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTQpO1xuICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OlwifFwiO1xuICAgICAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAyMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMjIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qIFNsaWRlciAqL1xuXG4uc2xpY2stc2xpZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gICAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLXk7XG4gICAgdG91Y2gtYWN0aW9uOiBwYW4teTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLnNsaWNrLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuXG4gICAgJi5kcmFnZ2luZyB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgY3Vyc29yOiBoYW5kO1xuICAgIH1cbn1cbi5zbGljay1zbGlkZXIgLnNsaWNrLXRyYWNrLFxuLnNsaWNrLXNsaWRlciAuc2xpY2stbGlzdCB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG59XG5cbi5zbGljay10cmFjayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcblxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB9XG59XG4uc2xpY2stc2xpZGUge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gICAgJi5zbGljay1sb2FkaW5nIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICYuZHJhZ2dpbmcgaW1nIHtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNsaWNrLWluaXRpYWxpemVkICYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc2xpY2stbG9hZGluZyAmIHtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIH1cblxuICAgIC5zbGljay12ZXJ0aWNhbCAmIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgfVxufVxuLnNsaWNrLWFycm93LnNsaWNrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8gRGVmYXVsdCBWYXJpYWJsZXNcblxuLy8gU2xpY2sgaWNvbiBlbnRpdHkgY29kZXMgb3V0cHV0cyB0aGUgZm9sbG93aW5nXG4vLyBcIlxcMjE5MFwiIG91dHB1dHMgYXNjaWkgY2hhcmFjdGVyIFwi4oaQXCJcbi8vIFwiXFwyMTkyXCIgb3V0cHV0cyBhc2NpaSBjaGFyYWN0ZXIgXCLihpJcIlxuLy8gXCJcXDIwMjJcIiBvdXRwdXRzIGFzY2lpIGNoYXJhY3RlciBcIuKAolwiXG5cbiRzbGljay1mb250LXBhdGg6IFwiLi4vZm9udHMvXCIgIWRlZmF1bHQ7XG4kc2xpY2stZm9udC1mYW1pbHk6IFwic2xpY2tcIiAhZGVmYXVsdDtcbiRzbGljay1sb2FkZXItcGF0aDogXCIuL1wiICFkZWZhdWx0O1xuJHNsaWNrLWFycm93LWNvbG9yOiB3aGl0ZSAhZGVmYXVsdDtcbiRzbGljay1kb3QtY29sb3I6IGJsYWNrICFkZWZhdWx0O1xuJHNsaWNrLWRvdC1jb2xvci1hY3RpdmU6ICRzbGljay1kb3QtY29sb3IgIWRlZmF1bHQ7XG4kc2xpY2stcHJldi1jaGFyYWN0ZXI6IFwiXFwyMTkwXCIgIWRlZmF1bHQ7XG4kc2xpY2stbmV4dC1jaGFyYWN0ZXI6IFwiXFwyMTkyXCIgIWRlZmF1bHQ7XG4kc2xpY2stZG90LWNoYXJhY3RlcjogXCJcXDIwMjJcIiAhZGVmYXVsdDtcbiRzbGljay1kb3Qtc2l6ZTogNnB4ICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktZGVmYXVsdDogMC43NSAhZGVmYXVsdDtcbiRzbGljay1vcGFjaXR5LW9uLWhvdmVyOiAxICFkZWZhdWx0O1xuJHNsaWNrLW9wYWNpdHktbm90LWFjdGl2ZTogMC4yNSAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIHNsaWNrLWltYWdlLXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoaW1hZ2UtdXJsKSB7XG4gICAgQHJldHVybiBpbWFnZS11cmwoJHVybCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gdXJsKCRzbGljay1sb2FkZXItcGF0aCArICR1cmwpO1xuICB9XG59XG5cbkBmdW5jdGlvbiBzbGljay1mb250LXVybCgkdXJsKSB7XG4gIEBpZiBmdW5jdGlvbi1leGlzdHMoZm9udC11cmwpIHtcbiAgICBAcmV0dXJuIGZvbnQtdXJsKCR1cmwpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAcmV0dXJuIHVybCgkc2xpY2stZm9udC1wYXRoICsgJHVybCk7XG4gIH1cbn1cblxuLyogU2xpZGVyICovXG5cbi5zbGljay1saXN0IHtcbiAgLnNsaWNrLWxvYWRpbmcgJiB7XG4gICAgYmFja2dyb3VuZDogI2ZmZiA7XG4gIH1cbn1cblxuLyogSWNvbnMgKi9cbkBpZiAkc2xpY2stZm9udC1mYW1pbHkgPT0gXCJzbGlja1wiIHtcbiAgQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6IFwic2xpY2tcIjtcbiAgICBzcmM6IHNsaWNrLWZvbnQtdXJsKFwic2xpY2suZW90XCIpO1xuICAgIHNyYzogc2xpY2stZm9udC11cmwoXCJzbGljay5lb3Q/I2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCBzbGljay1mb250LXVybChcInNsaWNrLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgc2xpY2stZm9udC11cmwoXCJzbGljay50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksIHNsaWNrLWZvbnQtdXJsKFwic2xpY2suc3ZnI3NsaWNrXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgfVxufVxuXG4vKiBBcnJvd3MgKi9cblxuLnNsaWNrLXByZXYsXG4uc2xpY2stbmV4dCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogcmVtLWNhbGMoMjgpO1xuICB3aWR0aDogcmVtLWNhbGMoMjgpO1xuICBsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuICBmb250LXNpemU6IDBweDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIC01MCUpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgwLCAtNTAlKTtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiBub25lO1xuICBvdXRsaW5lOiBub25lO1xuICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgJjpiZWZvcmUge1xuICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgfVxuICB9XG4gICYuc2xpY2stZGlzYWJsZWQ6YmVmb3JlIHtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1ub3QtYWN0aXZlO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBvcGFjaXR5OiAkc2xpY2stb3BhY2l0eS1kZWZhdWx0O1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIH1cbn1cblxuLnNsaWNrLXByZXYge1xuICBsZWZ0OiByZW0tY2FsYygyNSk7XG4gIHotaW5kZXg6NTU7XG4gIHBvc2l0aW9uOnJlbGF0aXZlO1xuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IGF1dG87XG4gICAgcmlnaHQ6IC0yNXB4O1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xuICAgIGZvbnQtZmFtaWx5OidpY29tb29uJztcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMzApO1xuICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1uZXh0LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLnNsaWNrLW5leHQge1xuICByaWdodDogcmVtLWNhbGMoMjUpO1xuICBbZGlyPVwicnRsXCJdICYge1xuICAgIGxlZnQ6IC0yNXB4O1xuICAgIHJpZ2h0OiBhdXRvO1xuICB9XG4gICY6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZTkwM1wiO1xuICAgIGZvbnQtZmFtaWx5OidpY29tb29uJztcbiAgICBmb250LXNpemU6cmVtLWNhbGMoMzApO1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgW2Rpcj1cInJ0bFwiXSAmIHtcbiAgICAgIGNvbnRlbnQ6ICRzbGljay1wcmV2LWNoYXJhY3RlcjtcbiAgICB9XG4gIH1cbn1cblxuLyogRG90cyAqL1xuXG4uc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5zbGljay1kb3RzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC0yNXB4O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsaSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgd2lkdGg6IDIwcHg7XG4gICAgbWFyZ2luOiAwIDVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBidXR0b24ge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogMjBweDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAwcHg7XG4gICAgICBmb250LXNpemU6IDBweDtcbiAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogJHNsaWNrLW9wYWNpdHktb24taG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGNvbnRlbnQ6ICRzbGljay1kb3QtY2hhcmFjdGVyO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICBmb250LWZhbWlseTogJHNsaWNrLWZvbnQtZmFtaWx5O1xuICAgICAgICBmb250LXNpemU6ICRzbGljay1kb3Qtc2l6ZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgY29sb3I6ICRzbGljay1kb3QtY29sb3I7XG4gICAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LW5vdC1hY3RpdmU7XG4gICAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICAgfVxuICAgIH1cbiAgICAmLnNsaWNrLWFjdGl2ZSBidXR0b246YmVmb3JlIHtcbiAgICAgIGNvbG9yOiAkc2xpY2stZG90LWNvbG9yLWFjdGl2ZTtcbiAgICAgIG9wYWNpdHk6ICRzbGljay1vcGFjaXR5LWRlZmF1bHQ7XG4gICAgfVxuICB9XG59IiwiLnNlbGVjdDItY29udGFpbmVyIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gIEBpbXBvcnQgXCJzaW5nbGVcIjtcbiAgQGltcG9ydCBcIm11bHRpcGxlXCI7XG59XG5cbkBpbXBvcnQgXCJkcm9wZG93blwiO1xuXG4uc2VsZWN0Mi1jbG9zZS1tYXNrIHtcbiAgYm9yZGVyOiAwO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgbWluLXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIHdpZHRoOiBhdXRvO1xuICBvcGFjaXR5OiAwO1xuICB6LWluZGV4OiA5OTtcblxuICAvLyBzdHlsZXMgcmVxdWlyZWQgZm9yIElFIHRvIHdvcmtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9MCk7XG59XG5cbi5zZWxlY3QyLWhpZGRlbi1hY2Nlc3NpYmxlIHtcbiAgYm9yZGVyOiAwICFpbXBvcnRhbnQ7XG4gIGNsaXA6IHJlY3QoMCAwIDAgMCkgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1jbGlwLXBhdGg6IGluc2V0KDUwJSkgIWltcG9ydGFudDtcbiAgY2xpcC1wYXRoOiBpbnNldCg1MCUpICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4ICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG59XG5cbkBpbXBvcnQgXCJ0aGVtZS9kZWZhdWx0L2xheW91dFwiO1xuQGltcG9ydCBcInRoZW1lL2NsYXNzaWMvbGF5b3V0XCI7XG4iLCIuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBibG9jaztcblxuICBoZWlnaHQ6IDI4cHg7XG5cbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiA4cHg7XG4gICAgcGFkZGluZy1yaWdodDogMjBweDtcblxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2xlYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG4mW2Rpcj1cInJ0bFwiXSB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDhweDtcbiAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG5cbiAgbWluLWhlaWdodDogMzJweDtcblxuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcblxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG59XG5cbi5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcbiAgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZm9udC1zaXplOiAxMDAlO1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBoZWlnaHQ6IDE4cHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBmb250LWZhbWlseTogc2Fucy1zZXJpZjtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHdvcmQtYnJlYWs6IGtlZXAtYWxsO1xuXG4gICAgJjo6LXdlYmtpdC1zZWFyY2gtY2FuY2VsLWJ1dHRvbiB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuICB9XG59XG4iLCIuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcblxuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gIGRpc3BsYXk6IGJsb2NrO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTEwMDAwMHB4O1xuXG4gIHdpZHRoOiAxMDAlO1xuXG4gIHotaW5kZXg6IDEwNTE7XG59XG5cbi5zZWxlY3QyLXJlc3VsdHMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgcGFkZGluZzogNnB4O1xuXG4gIHVzZXItc2VsZWN0OiBub25lO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xufVxuXG4uc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93biB7XG4gIGxlZnQ6IDA7XG59XG5cbi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIC5zZWxlY3QyLWRyb3Bkb3duLS1iZWxvdyB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAwO1xufVxuXG4uc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDRweDtcblxuICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICBwYWRkaW5nOiA0cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICY6Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24ge1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYuc2VsZWN0Mi1zZWFyY2gtLWhpZGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgaGVpZ2h0OiAyNnB4O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgdG9wOiAxcHg7XG4gICAgcmlnaHQ6IDFweDtcblxuICAgIHdpZHRoOiAyMHB4O1xuXG4gICAgYiB7XG4gICAgICBib3JkZXItY29sb3I6ICM4ODggdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgYm9yZGVyLXdpZHRoOiA1cHggNHB4IDAgNHB4O1xuXG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBsZWZ0OiA1MCU7XG5cbiAgICAgIG1hcmdpbi1sZWZ0OiAtNHB4O1xuICAgICAgbWFyZ2luLXRvcDogLTJweDtcblxuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgICB0b3A6IDUwJTtcbiAgICAgIHdpZHRoOiAwO1xuICAgIH1cbiAgfVxufVxuXG4mW2Rpcj1cInJ0bFwiXSB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2NsZWFyIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbiYuc2VsZWN0Mi1jb250YWluZXItLWRpc2FibGVkIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZWU7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4mLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuICAgICAgYiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgIzg4OCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAwIDRweCA1cHggNHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCAjYWFhO1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGN1cnNvcjogdGV4dDtcbiAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgcGFkZGluZy1yaWdodDogNXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgJi5zZWxlY3QyLXNlbGVjdGlvbi0tY2xlYXJhYmxlIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuXG4gICAgLy8gVGhpcyBwYWRkaW5nIGlzIHRvIGFjY291bnQgZm9yIHRoZSBib3R0b20gYm9yZGVyIGZvciB0aGUgZmlyc3RcbiAgICAvLyBzZWxlY3Rpb24gcm93IGFuZCB0aGUgdG9wIGJvcmRlciBvZiB0aGUgc2Vjb25kIHNlbGVjdGlvbiByb3cuXG4gICAgLy8gV2l0aG91dCBpdCwgc2VsZWN0aW9ucyBvbiB0aGUgZmlyc3Qgcm93IG1heSBiZSBvZmZzZXQgaW5jb3JyZWN0bHlcbiAgICAvLyBhbmQgYXBwZWFyIGluIHRoZWlyIG93biByb3cgaW5zdGVhZCBvZiBnb2luZyB0byB0aGUgc2Vjb25kIHJvd1xuICAgIHBhZGRpbmc6IDFweDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuXG4gICAgcGFkZGluZy1sZWZ0OiAycHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2VfX3JlbW92ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICNhYWE7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDRweDtcblxuICAgIGNvbG9yOiAjOTk5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgcGFkZGluZzogMCA0cHg7XG5cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG5cbiAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMWYxZjE7XG4gICAgICBjb2xvcjogIzMzMztcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbiZbZGlyPVwicnRsXCJdIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2FhYTtcbiAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDRweDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gICAgfVxuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuXG4mLnNlbGVjdDItY29udGFpbmVyLS1mb2N1cyB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgIGJvcmRlcjogc29saWQgYmxhY2sgMXB4O1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuJi5zZWxlY3QyLWNvbnRhaW5lci0tZGlzYWJsZWQge1xuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWVlO1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19yZW1vdmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbiIsIi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XG4gIEBpbXBvcnQgXCJzaW5nbGVcIjtcbiAgQGltcG9ydCBcIm11bHRpcGxlXCI7XG5cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tb3Blbi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlLCAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICB9XG4gIH1cblxuICAmLnNlbGVjdDItY29udGFpbmVyLS1vcGVuLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXNlYXJjaC0tZHJvcGRvd24ge1xuICAgIC5zZWxlY3QyLXNlYXJjaF9fZmllbGQge1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgI2FhYTtcbiAgICB9XG4gIH1cblxuICAuc2VsZWN0Mi1zZWFyY2gtLWlubGluZSB7XG4gICAgLnNlbGVjdDItc2VhcmNoX19maWVsZCB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0cyA+IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbnMge1xuICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gIH1cblxuICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDFlbTtcblxuICAgICAgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICB9XG5cbiAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMWVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDJlbTtcblxuICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMmVtO1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogM2VtO1xuXG4gICAgICAgICAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtM2VtO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA0ZW07XG5cbiAgICAgICAgICAgIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNGVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDVlbTtcblxuICAgICAgICAgICAgICAuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtNWVtO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogNmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWQge1xuICAgIGNvbG9yOiAjOTk5O1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM1ODk3ZmI7XG4gICAgY29sb3I6IHdoaXRlO1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fZ3JvdXAge1xuICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiA2cHg7XG4gIH1cbn1cbiIsIi5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbWl4KCRzZWxlY3Rpb24tYmctdG9wLWNvbG9yLCAkc2VsZWN0aW9uLWJnLWJvdHRvbS1jb2xvcik7XG5cbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgb3V0bGluZTogMDtcblxuICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc2VsZWN0aW9uLWJnLXRvcC1jb2xvciwgJHNlbGVjdGlvbi1iZy1ib3R0b20tY29sb3IsIDUwJSwgMTAwJSk7XG5cbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuICAgIGNvbG9yOiAjNDQ0O1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBoZWlnaHQ6IDI2cHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICM5OTk7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZGRkO1xuXG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgaGVpZ2h0OiAyNnB4O1xuXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgdG9wOiAxcHg7XG4gICAgcmlnaHQ6IDFweDtcblxuICAgIHdpZHRoOiAyMHB4O1xuXG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtdmVydGljYWwoI2VlZWVlZSwgI2NjY2NjYywgNTAlLCAxMDAlKTtcblxuICAgIGIge1xuICAgICAgYm9yZGVyLWNvbG9yOiAjODg4IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgIGJvcmRlci13aWR0aDogNXB4IDRweCAwIDRweDtcblxuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGVmdDogNTAlO1xuXG4gICAgICBtYXJnaW4tbGVmdDogLTRweDtcbiAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG5cbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMDtcbiAgICB9XG4gIH1cbn1cblxuJltkaXI9XCJydGxcIl0ge1xuICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cbiAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgICBsZWZ0OiAxcHg7XG4gICAgICByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cblxuJi5zZWxlY3QyLWNvbnRhaW5lci0tb3BlbiB7XG4gIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9jdXMtYm9yZGVyLWNvbG9yO1xuXG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcblxuICAgICAgYm9yZGVyOiBub25lO1xuXG4gICAgICBiIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAjODg4IHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItd2lkdGg6IDAgNHB4IDVweCA0cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tYWJvdmUge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG5cbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzZWxlY3Rpb24tb3BlbmVkLWJnLWJvdHRvbS1jb2xvciwgJHNlbGVjdGlvbi1vcGVuZWQtYmctdG9wLWNvbG9yLCAwJSwgNTAlKTtcbiAgICB9XG4gIH1cblxuICAmLnNlbGVjdDItY29udGFpbmVyLS1iZWxvdyB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcblxuICAgICAgQGluY2x1ZGUgZ3JhZGllbnQtdmVydGljYWwoJHNlbGVjdGlvbi1vcGVuZWQtYmctdG9wLWNvbG9yLCAkc2VsZWN0aW9uLW9wZW5lZC1iZy1ib3R0b20tY29sb3IsIDUwJSwgMTAwJSk7XG4gICAgfVxuICB9XG59XG4iLCIkcmVtb3ZlLWNvbG9yOiAjODg4ICFkZWZhdWx0O1xuJHJlbW92ZS1ob3Zlci1jb2xvcjogIzU1NSAhZGVmYXVsdDtcbiRyZW1vdmUtd2lkdGg6IDIwcHggIWRlZmF1bHQ7XG5cbiRzZWxlY3Rpb24tY29sb3I6ICM0NDQgIWRlZmF1bHQ7XG5cbiRib3JkZXItY29sb3I6ICNhYWEgIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1czogNHB4ICFkZWZhdWx0O1xuXG4kZm9jdXMtYm9yZGVyLWNvbG9yOiAjNTg5N2ZiICFkZWZhdWx0O1xuXG4kY29udGFpbmVyLWhlaWdodDogMjhweCAhZGVmYXVsdDtcblxuJHNlbGVjdGlvbi1iZy10b3AtY29sb3I6IHdoaXRlICFkZWZhdWx0O1xuJHNlbGVjdGlvbi1iZy1ib3R0b20tY29sb3I6ICNlZWVlZWUgIWRlZmF1bHQ7XG5cbiRjb250YWluZXItcGxhY2Vob2xkZXItY29sb3I6ICM5OTkgIWRlZmF1bHQ7XG5cbiRjb250YWluZXItZm9jdXMtYm9yZGVyLWNvbG9yOiBibHVlICFkZWZhdWx0O1xuXG4kc2VsZWN0aW9uLW9wZW5lZC1iZy10b3AtY29sb3I6ICRzZWxlY3Rpb24tYmctYm90dG9tLWNvbG9yICFkZWZhdWx0O1xuJHNlbGVjdGlvbi1vcGVuZWQtYmctYm90dG9tLWNvbG9yOiAkc2VsZWN0aW9uLWJnLXRvcC1jb2xvciAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLXotaW5kZXg6IDEgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1iZy1jb2xvcjogJHNlbGVjdGlvbi1iZy10b3AtY29sb3IgIWRlZmF1bHQ7XG5cbiRyZXN1bHRzLW1heC1oZWlnaHQ6IDIwMHB4ICFkZWZhdWx0O1xuJHJlc3VsdHMtbmVzdGVkLXBhZGRpbmc6IDIwcHggIWRlZmF1bHQ7XG5cbiRyZXN1bHRzLWNob2ljZS1iZy1ob3Zlci1jb2xvcjogIzM4NzVkNyAhZGVmYXVsdDtcbiRyZXN1bHRzLWNob2ljZS1mZy1ob3Zlci1jb2xvcjogd2hpdGUgIWRlZmF1bHQ7XG5cbiRyZXN1bHRzLWNob2ljZS1mZy11bnNlbGVjdGFibGUtY29sb3I6IGdyZXkgIWRlZmF1bHQ7XG4iLCIvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAtc2Fzcy9ibG9iLzMuMy1zdGFibGUvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzI0wxNy1MMjdcblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuIiwiLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gIGN1cnNvcjogdGV4dDtcblxuICBvdXRsaW5lOiAwO1xuXG4gIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDVweDtcblxuICAmOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgLnNlbGVjdDItc2VsZWN0aW9uX19jbGVhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTRlNGU0O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zZWxlY3QyLXNlbGVjdGlvbl9fY2hvaWNlX19kaXNwbGF5IHtcbiAgICBjdXJzb3I6IGRlZmF1bHQ7XG5cbiAgICBwYWRkaW5nLWxlZnQ6IDJweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gIH1cblxuICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG5cbiAgICBjb2xvcjogJHJlbW92ZS1jb2xvcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgIHBhZGRpbmc6IDAgNHB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJHJlbW92ZS1ob3Zlci1jb2xvcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbiZbZGlyPVwicnRsXCJdIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgLnNlbGVjdDItc2VsZWN0aW9uX19jaG9pY2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fZGlzcGxheSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Nob2ljZV9fcmVtb3ZlIHtcbiAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIH1cbiAgfVxufVxuXG4mLnNlbGVjdDItY29udGFpbmVyLS1vcGVuIHtcbiAgLnNlbGVjdDItc2VsZWN0aW9uLS1tdWx0aXBsZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gICYuc2VsZWN0Mi1jb250YWluZXItLWFib3ZlIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLW11bHRpcGxlIHtcbiAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgfVxuICB9XG5cbiAgJi5zZWxlY3QyLWNvbnRhaW5lci0tYmVsb3cge1xuICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tbXVsdGlwbGUge1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogMDtcbiAgICB9XG4gIH1cbn1cbiIsIkBpbXBvcnQgXCJkZWZhdWx0c1wiO1xuQGltcG9ydCBcIi4uLy4uL21peGlucy9ncmFkaWVudHNcIjtcblxuLnNlbGVjdDItY29udGFpbmVyLS1jbGFzc2ljIHtcbiAgQGltcG9ydCBcInNpbmdsZVwiO1xuICBAaW1wb3J0IFwibXVsdGlwbGVcIjtcblxuICAuc2VsZWN0Mi1zZWFyY2gtLWRyb3Bkb3duIHtcbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG4gICAgICBvdXRsaW5lOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLXNlYXJjaC0taW5saW5lIHtcbiAgICAuc2VsZWN0Mi1zZWFyY2hfX2ZpZWxkIHtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmctY29sb3I7XG4gICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIH1cblxuICAuc2VsZWN0Mi1kcm9wZG93bi0tYWJvdmUge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gIH1cblxuICAuc2VsZWN0Mi1kcm9wZG93bi0tYmVsb3cge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gIH1cblxuICAuc2VsZWN0Mi1yZXN1bHRzID4gLnNlbGVjdDItcmVzdWx0c19fb3B0aW9ucyB7XG4gICAgbWF4LWhlaWdodDogJHJlc3VsdHMtbWF4LWhlaWdodDtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1ncm91cCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tZGlzYWJsZWQge1xuICAgIGNvbG9yOiAkcmVzdWx0cy1jaG9pY2UtZmctdW5zZWxlY3RhYmxlLWNvbG9yO1xuICB9XG5cbiAgLnNlbGVjdDItcmVzdWx0c19fb3B0aW9uLS1oaWdobGlnaHRlZC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0tc2VsZWN0YWJsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHJlc3VsdHMtY2hvaWNlLWJnLWhvdmVyLWNvbG9yO1xuICAgIGNvbG9yOiAkcmVzdWx0cy1jaG9pY2UtZmctaG92ZXItY29sb3I7XG4gIH1cblxuICAuc2VsZWN0Mi1yZXN1bHRzX19ncm91cCB7XG4gICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDZweDtcbiAgfVxuXG4gICYuc2VsZWN0Mi1jb250YWluZXItLW9wZW4gLnNlbGVjdDItZHJvcGRvd24ge1xuICAgIGJvcmRlci1jb2xvcjogJGZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxufVxuIiwiLmludHJvLWJhbm5lciB7XG5cbiAgLmludHJvLWJhbm5lci13cmFwcGVyIHtcblxuICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMzEwIDM1IDcwIDM1KTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcGFkZGluZzpyZW0tY2FsYyg5MCAwIDEyNSAwKTtcbiAgICAgIG1heC13aWR0aDpyZW0tY2FsYygxMjA1KTtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgfVxuICAgIC5oZWxwLW1lbnUge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICB0b3A6cmVtLWNhbGMoMjApO1xuICAgICAgbGVmdDpyZW0tY2FsYygzNSk7XG4gICAgICByaWdodDpyZW0tY2FsYygzNSk7XG4gICAgICB6LWluZGV4OjU1O1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgfVxuICAgICAgLmhlbHAtbWVudS10b2dnbGUge1xuICAgICAgICBiYWNrZ3JvdW5kOiNmZmY7XG4gICAgICB9XG4gICAgICAuZHJvcGRvd24tcGFuZSB7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIHRvcDpyZW0tY2FsYyg2MCkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmludHJvLWJhbm5lci1pbWFnZSB7XG4gICAgICB3aWR0aDpyZW0tY2FsYyg0NzYpO1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQ3Nik7XG4gICAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHRvcDpyZW0tY2FsYygtMjEwKTtcbiAgICAgIHJpZ2h0OnJlbS1jYWxjKC04Nik7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgd2lkdGg6cmVtLWNhbGMoOTU4KTtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDk1OCk7XG4gICAgICAgIHRvcDowO1xuICAgICAgICByaWdodDpyZW0tY2FsYygtMzcwKTtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOnJlbS1jYWxjKDQ3Nik7XG4gICAgICAgIGhlaWdodDpyZW0tY2FsYyg0NzYpO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDpyZW0tY2FsYyg5NTgpO1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg5NTgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnRyby1iYW5uZXItZGV0YWlscyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoNjYwKTtcbiAgICAgIH1cbiAgICAgIC5iYW5uZXItZGV0YWlscyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgICBoNCB7XG4gICAgICAgICAgY29sb3I6IzI2MzY0RTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNTAwKTtcbiAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTgpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDI5KTtcbiAgICAgICAgICBjb2xvcjojMjYzNjRFO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyNCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgzOCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBoMSB7XG4gICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg4MDApO1xuICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oNDYpO1xuICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSg1Mik7XG4gICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSg5NSk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oOTUpO1xuICAgICAgICB9XG4gICAgICAgIGJyIHtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnNlcnZpY2VzLWJsb2NrIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDEyNSAwIDcwIDApO1xuICB9XG4gIC5zZXJ2aWNlcy1ibG9jay1pbm5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTIwNSk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcbiAgICAgIH1cbiAgICAgIGgxIHtcbiAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgICBmb250LWZhbWlseTonaWNvbW9vbicsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTEpO1xuICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNlcnZpY2VzIHtcbiAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAtMTIgNjAgLTEyKTtcbiAgICAgIH1cblxuICAgICAgLmZsaXAtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoMTMgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDI4Myk7XG4gICAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMjU2KTtcbiAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMTMgMTIpO1xuICAgICAgICB9XG4gICAgICAgIC5mbGlwLWNhcmQtaW5uZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgLmZsaXAtY2FyZC1mcm9udCwgLmZsaXAtY2FyZC1iYWNrIHtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjAgMjUgMjAgMjApO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpvcGFjaXR5IDAuM3MgbGluZWFyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMzUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuZmxpcC1jYXJkLWZyb250IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zZXJ2aWNlLWljb24ge1xuICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYyg3MSk7XG4gICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg3MSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6I0IyRTRFRDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYyg5OSk7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDk5KTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygzNSk7XG4gICAgICAgICAgICAgICAgd2lkdGg6YXV0bztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDUwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi50cmFpbmluZyB7XG4gICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjUpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygzNSk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGg1IHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDYwMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmZsaXAtY2FyZC1iYWNrIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNDQ0YwRjc7XG4gICAgICAgICAgICBvcGFjaXR5OjA7XG4gICAgICAgICAgICB6LWluZGV4Oi0xO1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zZXJ2aWNlLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjMpO1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoNSk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4xcyBsaW5lYXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5mbGlwLWNhcmQtZnJvbnQge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuZmxpcC1jYXJkLWJhY2sge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5qb2luLW9jd2Ege1xuICBwYWRkaW5nOiByZW0tY2FsYygzNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNzAgMCA1MCAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC5ibG9jay1pbnRyby1jb250ZW50IHtcblxuICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMDApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cbiAgICAgIC5ibG9jay1pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg1OTIpO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygyNTQpO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg2NTApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2NrLXRleHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg1MDApO1xuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OidpY29tb29uJywgc2Fucy1zZXJpZjtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTEpO1xuICAgICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2NrLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQ1KTtcbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBjb2xvcjojMjYzNjRFO1xuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBoMiB7XG4gICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgYnIge1xuICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5wYWdlLWludHJvIHtcbiAgcGFkZGluZzpyZW0tY2FsYygyNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMCA2NSAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC5icmVhZGNydW1icyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0NSk7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9jay1pbnRyby1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgfVxuICAgICAgXG4gICAgICAuYmxvY2staW1hZ2Uge1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAwIDIwIDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDU5Mik7XG4gICAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygyMDIpO1xuICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg1MTQpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2NrLXRleHQge1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoNTAwKTtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6cmVtLWNhbGMoNTE0KTtcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNDApO1xuICAgICAgICAgICYud2l0aC13YXZlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTonaWNvbW9vbicsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMSk7XG4gICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ibG9jay1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYyg2OCAwIDQ1IDApO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0NSAwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaDIsIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgfVxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgXG4gICAgICAmLm5vLWltYWdlIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIFxuICAgICAgICAgIC5ibG9jay10ZXh0IHtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgbWluLWhlaWdodDpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5tZW1iZXJzLWFyY2hpdmUge1xuICBwYWRkaW5nOnJlbS1jYWxjKDUwIDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDYwIDAgMCAwKTtcbiAgfVxuICAuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNTApO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBoMyB7XG4gICAgICBjb2xvcjojMTczNzY2O1xuICAgIH1cbiAgfVxuICAubWVtYmVycyB7XG4gICAgLm1lbWJlcnMtd3JhcHBlciB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAtMTApO1xuICAgICAgfVxuICAgICAgLm1lbWJlciB7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgMzAgMCk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMzg5KTtcbiAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgMTAwIDApO1xuICAgICAgICB9XG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDE2Nik7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMTY2KTtcbiAgICAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDI4OCk7XG4gICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygyODgpO1xuXG4gICAgICAgICAgfVxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMTY2KTtcbiAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDE2Nik7XG4gICAgICAgICAgICBvYmplY3QtZml0OmNvdmVyO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGxpbmVhcjtcbiAgICAgICAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wIGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygyODgpO1xuICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygyODgpO1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbmZvIHtcbiAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDI1KTtcbiAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICBoNSB7XG4gICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIH1cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjMpO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTIpO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYyg1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxLjEpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW5mbyB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubm8tcmVzdWx0cyB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHNlY29uZGFyeS1mb250KDYwMCk7XG4gICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMCk7XG4gICAgICAgIGNvbG9yOiMzMzNDNDI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5yZXZlYWwtb3ZlcmxheSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjM1LCAyMzUsIDIzNSwgMC45NSk7XG59XG5cbi5tZW1iZXItbW9kYWwge1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyMCk7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAzMHB4KTtcbiAgbGVmdDoxNXB4O1xuICByaWdodDoxNXB4O1xuICB0b3A6cmVtLWNhbGMoODApICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6I0U5RjZGODtcbiAgYm9yZGVyOm5vbmU7XG4gIGJveC1zaGFkb3c6MCByZW0tY2FsYygzKSByZW0tY2FsYyg2KSByZ2JhKDAsMCwwLDAuMTYpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiByZW0tY2FsYygxMjA1KTtcbiAgfVxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICB3aWR0aDpyZW0tY2FsYyg0Nik7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDQ2KTtcbiAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OmNlbnRlcjtcbiAgICBmb250LXNpemU6Zm9udC1yZW0oMTgpO1xuICAgIGJhY2tncm91bmQ6I2ZmZjtcbiAgICBjb2xvcjojMTczNzY2O1xuICAgIHRvcDpyZW0tY2FsYygyNSk7XG4gICAgcmlnaHQ6cmVtLWNhbGMoMzApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDpyZW0tY2FsYyg1OSk7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNTkpO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6cmdiYSgyNTUsMjU1LDI1NSwwLjMzKTtcbiAgICB9XG4gIH1cbiAgLm1lbWJlci1tb2RhbC1pbm5lciB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoNTUgMjApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwYWRkaW5nOiByZW0tY2FsYyg1NSA3MCA0MCAzNSk7XG4gICAgfVxuICAgIC5tZW1iZXItbmFtZSB7XG4gICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMDA5RkMyO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMjUgMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMTAwIDMwIDApO1xuICAgICAgfVxuICAgICAgaDQge1xuICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgfVxuICAgIH1cbiAgICAubWVtYmVyLWRldGFpbHMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOnJvdztcbiAgICAgIH1cbiAgICAgIC5tZW1iZXItdGl0bGUge1xuICAgICAgICBvcmRlcjoyO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDM2MCk7XG4gICAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgfVxuICAgICAgICAubWVtYmVyLW9jY3VwYXRpb24sXG4gICAgICAgIC5tZW1iZXItZWR1Y2F0aW9uLFxuICAgICAgICAubWVtYmVyLWludGVyZXN0cyxcbiAgICAgICAgLm1lbWJlci1hYm91dC1qb2Ige1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICAubWVtYmVyLWJpbyB7XG4gICAgICAgIG9yZGVyOjM7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMzUgMCA1MCk7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMzYwKTtcbiAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW1iZXItcGhvdG8ge1xuICAgICAgICBvcmRlcjoxO1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAwIDI1IDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG9yZGVyOjM7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDMwMCk7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygtODAgMCAwIDApO1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMTcxKTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyNSk7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygzMDApO1xuICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDMwMCk7XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5tZW1iZXItdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDMwKTtcblxuICAgICAgICAubWVtYmVyLXllYXIsXG4gICAgICAgIC5tZW1iZXItcHJvdmluY2UsXG4gICAgICAgIC5tZW1iZXItaGlnaC1zY2hvb2wsXG4gICAgICAgIC5tZW1iZXItdW5pdmVyc2l0eSxcbiAgICAgICAgLm1lbWJlci1wcm9ub3VuLFxuICAgICAgICAubWVtYmVyLXBvc2l0aW9uLFxuICAgICAgICAubWVtYmVyLWVtYWlsLFxuICAgICAgICAubWVtYmVyLXBob25lIHtcbiAgICAgICAgICBjb2xvcjojMzMzQzQyO1xuICAgICAgICAgIEBpbmNsdWRlIHNlY29uZGFyeS1mb250KDQwMCk7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE4KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgyMCk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjojMzMzQzQyO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiMwMEI2QTA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6ZW1wdHkge1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cbiAgICAgIH1cblxuICAgIH1cbiAgfVxuICAmI2xlYWRlcnNoaXAtbW9kYWwge1xuICAgIC5tZW1iZXItbW9kYWwtaW5uZXIge1xuICAgICAgLm1lbWJlci1uYW1lIHtcbiAgICAgICAgLm1lbWJlci1vY2N1cGF0aW9uIHtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHNlY29uZGFyeS1mb250KDYwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWVtYmVyLWRldGFpbHMge1xuICAgICAgICAubWVtYmVyLWJpbyB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg3NTApO1xuICAgICAgICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDM1IDAgMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiIsIi5pbmZvLWJveGVzIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoODAgMjUgNDAgMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDApO1xuICB9XG4gIC5pbmZvLWJveGVzLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICB9XG4gICAgLmluZm8tYm94IHtcblxuICAgICAgcGFkZGluZzpyZW0tY2FsYyg0MCAzMCk7XG4gICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDM1KTtcbiAgICAgIGJhY2tncm91bmQ6IzE3Mzc2NjtcbiAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDAgMCk7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICB3aWR0aDpyZW0tY2FsYyg1ODYpO1xuICAgICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDU1KTtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYyg2NSA2MCk7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgfVxuICAgICAgLmluZm8tYm94LWlubmVyIHtcbiAgICAgICAgaDMge1xuICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIH1cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDIwIDAgMCAwKTtcbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgI2ZmZjtcbiAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygzMCAwIDAgMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnR3aXR0ZXItYmxvY2sge1xuICBwYWRkaW5nOiByZW0tY2FsYygwIDI1IDUwIDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYygwIDAgNjAgMCk7XG4gIH1cbiAgLmJsb2NrLXdyYXBwZXIge1xuICAgIC50d2l0dGVyLXdyYXBwZXIge1xuICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCA1MCAwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbjowO1xuICAgICAgfVxuICAgICAgLnR3aXR0ZXItaWNvbiB7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYyg1MCAwIDMwIDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgMzAgMCk7XG4gICAgICAgIH1cbiAgICAgICAgaSB7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDI0KTtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudHdlZXRzIHtcblxuICAgICAgICAudHdlZXQge1xuICAgICAgICAgIC50d2VldC1uYW1lIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgzMik7XG4gICAgICAgICAgICAgICYubmFtZSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE4KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAudHdlZXQtdGV4dCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgzMik7XG4gICAgICAgICAgICBjb2xvcjojMTgyMDJDO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zbGljay1kb3RzIHtcbiAgICAgICAgICB3aWR0aDphdXRvO1xuICAgICAgICAgIGJvdHRvbTpyZW0tY2FsYygtNDApO1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDE2KTtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDowO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTYpO1xuICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICAgICAgICAgICAgYm9yZGVyOjFweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZmY7XG5cbiAgICAgICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcblxuICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICYuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxNzM3NjY7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn0iLCIuam9iLW9wcG9ydHVuaXRpZXMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKDIyMiwgMjQxLCAyNDUsIDAuNTIpO1xuICBwYWRkaW5nOnJlbS1jYWxjKDQwIDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDgwIDAgNTAgMCk7XG4gIH1cbiAgLmJsb2NrLWlubmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjA1KTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAuYmxvY2stdGl0bGUge1xuICAgICAgaDMge1xuICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm9wcG9ydHVuaXRpZXMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICAgIH1cbiAgICAgIC5jYXJlZXItaXRlbSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206MC43NXB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDMwIDApO1xuICAgICAgICBjb2xvcjojMDAwO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIFxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICB9XG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci10b3A6MC43NXB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDQwMCk7XG4gICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE4KTtcbiAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygyMDApO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgJi50aXRsZSB7XG4gICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYyg2MDApO1xuICAgICAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYudmlldy1tb3JlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6cmVtLWNhbGMoNSk7XG4gICAgICAgICAgICAgIHdpZHRoOmF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY3RhLXdpdGgtYXJyb3cge1xuICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZS1mbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zNCk7XG4gICAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdG9wOnJlbS1jYWxjKC0yKTtcbiAgICAgICAgICAgICAgICBsZWZ0OnJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMCk7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4xcyBsaW5lYXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICYudGl0bGUge1xuICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudmlldy1tb3JlIHtcbiAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBsZWZ0OiByZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmxvYWQtbW9yZS1vcHBvcnR1bml0aWVzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi5jb250YWN0LWJsb2NrIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoNzAgMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDgwIDApO1xuICB9XG4gIC5ibG9jay13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kOiMxNzM3NjY7XG4gICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygyNSk7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1hcmdpbjowIGF1dG87XG4gICAgICBtYXgtd2lkdGg6cmVtLWNhbGMoMTIwNSk7XG4gICAgICBmbGV4LWRpcmVjdGlvbjpyb3c7XG4gICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDM1KTtcbiAgICB9XG4gICAgLmJsb2NrLWRldGFpbHMge1xuICAgICAgb3JkZXI6MjtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMzUgMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgb3JkZXI6MTtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYyg2MCA1MCk7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzUpO1xuICAgICAgfVxuICAgICAgLmNvbnRhY3QtY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgfVxuICAgICAgICAuYmxvY2stY29udGVudCB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYygzMzUpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb250YWN0LWluZm9ybWF0aW9uIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM3NSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjZmZmO1xuICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYygzMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbWFnZSB7XG4gICAgICBvcmRlcjoxO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgb3JkZXI6MztcbiAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM4Mik7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDIyNSk7XG4gICAgICAgIG9iamVjdC1wb3NpdGlvbjogdG9wO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygyNSAyNSAwIDApO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMCAyNSAyNSAwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi52YWx1ZXMtYmxvY2sge1xuICBwYWRkaW5nOiByZW0tY2FsYyg0MCAzNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoODAgMCk7XG4gIH1cbiAgLmJsb2NrLWlubmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjA1KTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAuaXRlbXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgLTEwKTtcbiAgICAgIH1cbiAgICAgIC5pdGVtIHtcblxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDAgMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMzg3KTtcbiAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDEwIDU1IDEwKTtcbiAgICAgICAgfVxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjUpO1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygxNDkpO1xuICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDE0OSk7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgaDQge1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIHAge1xuICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIucGFnZS1iYW5uZXIge1xuICBwYWRkaW5nOnJlbS1jYWxjKDI1KTtcbiAgYmFja2dyb3VuZDojRUFGOUZDO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAwIDYwIDApO1xuICB9XG4gIC5ibG9jay1pbm5lciB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOjAgYXV0bztcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgei1pbmRleDoxO1xuICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMCk7XG4gICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICBtaW4taGVpZ2h0OnJlbS1jYWxjKDUzNSk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYigyNCwgMzIsIDQ0KTtcbiAgICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDI0LCAzMiwgNDQsIDAuOCkgMCUsIHJnYmEoMjU1LCAyNTUsIDI1NSwgMCkgMTAwJSk7XG4gICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgIG1peC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJsb2NrLWltYWdlIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgaW5zZXQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMjk4LjUpO1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogcmVtLWNhbGMoNjUpO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgfVxuICAgICAgLmJsb2NrLXRleHQge1xuICAgICAgICB3aWR0aDpyZW0tY2FsYyg0MzApO1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWluLWhlaWdodDogcmVtLWNhbGMoNTE0KTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMSB7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoNTAgMCAwIDApO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLndpdGgtd2F2ZSB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6J2ljb21vb24nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTEpO1xuICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYmxvY2stZGVzY3JpcHRpb24ge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0NSAwKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaDIsIGg2IHtcbiAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaDYge1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMik7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5icmVhZGNydW1icy13cmFwcGVyIHtcbiAgICBtYXgtd2lkdGg6cmVtLWNhbGMoMTIwNSk7XG4gICAgbWFyZ2luOnJlbS1jYWxjKDQ1KSBhdXRvIDAgYXV0bztcbiAgfVxufSIsIi5sYW5kaW5nLWNvbnRlbnQge1xuICBwYWRkaW5nOiByZW0tY2FsYygzMCAyNSA0MCAyNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoODAgMCk7XG4gIH1cbiAgLmJsb2NrLWlubmVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjA1KTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cbiAgICAuaXRlbXMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAtMTIpO1xuICAgICAgfVxuICAgICAgLmZsaXAtY2FyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBmbGV4LXNocmluazowO1xuXG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgMjAgMCk7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM4Mik7XG4gICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQzNCk7XG4gICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDEzIDEzKTtcbiAgICAgICAgfVxuICAgICAgICAuZmxpcC1jYXJkLWlubmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjhzO1xuICAgICAgICAgIC5mbGlwLWNhcmQtZnJvbnQsIC5mbGlwLWNhcmQtYmFjayB7XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjApO1xuICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjpvcGFjaXR5IDAuM3MgbGluZWFyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5mbGlwLWNhcmQtZnJvbnQge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogI0VBRjlGQztcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgICAgIC5pdGVtLWltYWdlIHtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMTQ4KTtcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6Y292ZXI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygyNDgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLml0ZW0tdGl0bGUge1xuXG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6I2ZmZjtcbiAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjAgMjUpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYygxODUpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCAyNSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDIxKTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSgyNyk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg2MDApO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXJlbSgyOSk7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogZm9udC1yZW0oMzcpO1xuICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyODApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgIH1cbiAgICAgICAgICAuZmxpcC1jYXJkLWJhY2sge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNTAgMzApO1xuICAgICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICAgICAgei1pbmRleDotMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtLXRpdGxlIHtcbiAgICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDYwMCk7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDI4MCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pdGVtLWRlc2NyaXB0aW9uIHtcbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjMpO1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOmF1dG87XG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDEyKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYyg1KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLmZsaXAtY2FyZC1mcm9udCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmZsaXAtY2FyZC1iYWNrIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnRleHQtaW50cm8ge1xuICBwYWRkaW5nOiByZW0tY2FsYyg0MCAzNSk7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzogcmVtLWNhbGMoMjAgMCA2NSAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC5icmVhZGNydW1icyB7XG4gICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUwKTtcbiAgICB9XG4gICAgLmJsb2NrLWludHJvLWNvbnRlbnQge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIH1cbiAgICAgIC5ibG9jay1kZXNjcmlwdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDY5MCk7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBoMiwgaDYge1xuICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgfVxuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2NrLXRleHQge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg1MDApO1xuICAgICAgICB9XG4gICAgICAgIGgxIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICYud2l0aC13YXZlIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwN1wiO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTonaWNvbW9vbicsIHNhbnMtc2VyaWY7XG4gICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMSk7XG4gICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLm9wZW4tZGF0YSB7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMzUgMzApO1xuICBiYWNrZ3JvdW5kOiNFQUY5RkM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgXG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZzpyZW0tY2FsYyg1MCAwKTtcbiAgfVxuICAub3Blbi1kYXRhLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC50YWJzLWNvbnRhaW5lciB7XG5cbiAgICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDYwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIH1cbiAgICAgIC50YWJzIHtcbiAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICBib3JkZXI6bm9uZTtcbiAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCAzMCAwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDpyZW0tY2FsYygyNzUpO1xuICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDMwIDAgMCk7XG4gICAgICAgIH1cbiAgICAgICAgLnRhYnMtdGl0bGUge1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg2NCk7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZDojQ0NGMEY3O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMTApO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNSk7XG4gICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDIwKTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zNCk7XG4gICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmlzLWFjdGl2ZSxcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I0IyRTRFRDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICMxNzM3NjY7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50YWJzLWNvbnRlbnQge1xuICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgfVxuICAgICAgICAudGFicy1wYW5lbCB7XG4gICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICAgIC53eXNpd3lnIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNDApO1xuICAgICAgICAgICAgaDQge1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiBoNCB7XG4gICAgICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDAgMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IGgzLGg0LGg1LGg2IHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gcCB7XG4gICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gdWwge1xuICAgICAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygxNSk7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNSk7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDon4pePJztcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygxNSAwIDAgMjApO1xuICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICBjb250ZW50Oifil4snO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgbGVmdDowO1xuICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgLjNzIGVhc2UtaW4tb3V0O1xuICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbi15OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuZmlsdGVycy1mb3JtIHtcbiAgICAgICAgICAgIC5maWx0ZXJzLXdyYXBwZXIge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmZpbHRlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCAzMCAwKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMjgwKTtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDQ1IDUwIDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgyMSk7XG4gICAgICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc3VibWl0LWZvcm0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2VhcmNoLXJlc3VsdHMge1xuICAgICAgcGFkZGluZy10b3A6cmVtLWNhbGMoNjApO1xuICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgIzE3Mzc2NjtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgLmFjY29yZGlvbi13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoOTAwKTtcbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMTEpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDojRkZGRkZGO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDgwIDE1IDI3IDE1KTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICBcbiAgICAgICYubm8tc2VhcmNoIHtcbiAgICAgICAgICAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgXG4gICYubG9hZGluZyB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICAgIG9wYWNpdHk6IDAuNztcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgfVxuICAgICAgXG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoIDY0ICk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoIDY0ICk7O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJvcmRlcjogNnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzE3Mzc2NiB0cmFuc3BhcmVudCAjMTczNzY2IHRyYW5zcGFyZW50O1xuICAgICAgICBhbmltYXRpb246IGxkcy1kdWFsLXJpbmcgMS4ycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAgICAgei1pbmRleDogMTA7XG4gICAgfVxuICB9XG4gIFxuICAubm8tcmVzdWx0cyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIFxuICAmLm5vLXJlc3VsdHMge1xuICAgICAgLm5vLXJlc3VsdHMge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICB9XG59XG5cbiNvcGVuLWRhdGEtbW9kYWwge1xuICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygyMCk7XG4gIGxlZnQ6MjBweDtcbiAgcmlnaHQ6MjBweDtcbiAgd2lkdGg6Y2FsYygxMDAlIC0gNDBweCk7XG4gIHRvcDogcmVtLWNhbGMoODApICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogMCByZW0tY2FsYygzKSByZW0tY2FsYyg2KSByZ2JhKDAsIDAsIDAsIDAuMTYpO1xuICBwYWRkaW5nOnJlbS1jYWxjKDcwIDMwIDMwIDMwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDcwIDU1KTtcbiAgICB3aWR0aDogcmVtLWNhbGMoOTQ5KTtcbiAgfVxuICAubW9kYWwtdGl0bGUge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMDA5RkMyO1xuICAgIHBhZGRpbmctYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgICBoNCB7XG4gICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgbWFyZ2luOjA7XG4gICAgfVxuICAgIC5jbG9zZS1idXR0b24ge1xuICAgICAgd2lkdGg6cmVtLWNhbGMoNDYpO1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDQ2KTtcblxuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmb250LXNpemU6IGZvbnQtcmVtKDE4KTtcbiAgICAgIGJhY2tncm91bmQ6ICNFQUY5RkM7XG4gICAgICBjb2xvcjogIzE3Mzc2NjtcbiAgICAgIHRvcDogcmVtLWNhbGMoMTUpO1xuICAgICAgcmlnaHQ6IHJlbS1jYWxjKDI1KTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYyg1OSk7XG4gICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTkpO1xuICAgICAgICB0b3A6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgcmlnaHQ6IHJlbS1jYWxjKDU1KTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMzMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubW9kYWwtdGFibGUge1xuICAgIGg2IHtcbiAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMjApO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgICBidXR0b24uYnV0dG9uIHtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyggMzAgKTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKCAzMCApO1xuICAgICAgICBtYXJnaW4tbGVmdDogcmVtLWNhbGMoIDEwICk7XG4gICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKCAwIDE2ICk7XG4gICAgfVxuICAgIFxuICAgIHRhYmxlIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgYm9yZGVyLXRvcDoxcHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgdHIge1xuICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxMiAwKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE1KTtcbiAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuQGtleWZyYW1lcyBsZHMtZHVhbC1yaW5nIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn0iLCIucHVibGljYXRpb25zLWJsb2NrIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoNDAgMzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCA2MCAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIHdpZHRoOiByZW0tY2FsYygxMjIwKTtcbiAgICB9XG4gICAgLnB1YmxpY2F0aW9ucy13cmFwcGVyIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG4gICAgICAudGF4b25vbXktZmlsdGVycyB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMjc1KTtcbiAgICAgICAgICBmbGV4LXNocmluazowO1xuICAgICAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDMwIDAgMCk7XG4gICAgICAgIH1cblxuICAgICAgICAudGFicyB7XG4gICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg2NCk7XG4gICAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDojQ0NGMEY3O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygwIDIwKTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMjApO1xuICAgICAgICAgICAgICBkaXNwbGF5OmlubGluZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMzQpO1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuaXMtYWN0aXZlLFxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6I0IyRTRFRDtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICM5MkRCRTg7XG4gICAgICAgICAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygyMSk7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OnJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjpub25lO1xuICAgICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDIwIDMwIDIwIDApO1xuICAgICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTpyZW0tY2FsYygxNik7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICAgICAgICAgIHRvcDpyZW0tY2FsYygyNSk7XG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgICAgICAgICB3aWR0aDpyZW0tY2FsYygzMik7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDMyKTtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAwIDMwIDApO1xuXG4gICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogIzE4MjAyQztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwYVwiO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDEuNSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHVibGljYXRpb25zIHtcbiAgICAgICAgLnRhYnMtY29udGVudCB7XG4gICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgICAudGFicy1wYW5lbCB7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5sb2FkLW1vcmUtcHVibGljYXRpb25zIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLXRvcDpyZW0tY2FsYyg2MCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG4gIC5wdWJsaWNhdGlvbnMtaXRlbXMge1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBmbGV4LXdyYXA6d3JhcDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgLTEwKTtcbiAgICB9XG4gICAgLnB1YmxpY2F0aW9uLWl0ZW0ge1xuICAgICAgd2lkdGg6IHJlbS1jYWxjKDE0MCk7XG4gICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMCA0MCAwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOiByZW0tY2FsYygyODcpO1xuICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDAgMTAgNjUgMTApO1xuICAgICAgfVxuICAgICAgLnB1YmxpY2F0aW9uLWltYWdlIHtcbiAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMTkyKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDM2MCk7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMTkyKTtcbiAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3MgbGluZWFyO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMzYwKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wdWJsaWNhdGlvbi1kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygxNSAwKTtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjIpO1xuICAgICAgICAgIGJhY2tncm91bmQ6I0NDRjBGNztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDAgMCAyMCAyMCk7XG4gICAgICAgIH1cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDI1KTtcbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuZG93bmxvYWQge1xuICAgICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTMpO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zNCk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMCk7XG4gICAgICAgICAgICBmb250LXdlaWdodDo0MDA7XG4gICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoMTApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5wdWJsaWNhdGlvbi1pbWFnZSB7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgxLjA1KTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnB1YmxpY2F0aW9uLWRldGFpbHMge1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjQjJFNEVEO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZG93bmxvYWQge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmxvY2F0aW9ucy1jb250YWN0cyB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDI1IDIwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg3MCAwKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbiAgLmJsb2NrLXRpdGxlIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuICAgIH1cbiAgICBoMyB7XG4gICAgICBjb2xvcjojMTczNzY2O1xuICAgIH1cbiAgfVxuICAuYWNjb3JkaW9uLXdyYXBwZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDogcmVtLWNhbGMoNjg2KTtcbiAgICB9XG4gICAgLmFjY29yZGlvbiB7XG4gICAgICAuYWNjb3JkaW9uLWl0ZW0ge1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206bm9uZTtcbiAgICAgICAgfVxuICAgICAgICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgICAgICAgIC5sb2NhdGlvbnMge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICBtYXJnaW46IDAgLTIlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmxvY2F0aW9uIHtcbiAgICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMCAzMCAwKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB3aWR0aDo0NiU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOjAgMiUgcmVtLWNhbGMoMzApIDIlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnByaW50LWJsb2NrIHtcblxuICAgIHdpZHRoOnJlbS1jYWxjKDgyKTtcbiAgICBoZWlnaHQ6cmVtLWNhbGMoODIpO1xuICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICBiYWNrZ3JvdW5kOiNFNTZEMDY7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDQwKTtcbiAgICBjb2xvcjojZmZmO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OnJlbS1jYWxjKDg2KTtcbiAgICAgIHRvcDpyZW0tY2FsYygyMTApO1xuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuYWNjb3JkaW9uLWNvbnRlbnQge1xuICAgIGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcbiAgfVxufSIsIi5mb3JtLWJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nOnJlbS1jYWxjKDQwIDM1KTtcbiAgYmFja2dyb3VuZDojRUFGOUZDO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoNjAgMCA1NSAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6cmVtLWNhbGMoOTAwKTtcbiAgICB9XG4gICAgLmJsb2NrLWRldGFpbHMge1xuICAgICAgbWF4LXdpZHRoOnJlbS1jYWxjKDYwMCk7XG4gICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgICAgIGgzIHtcbiAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygzMCk7XG4gICAgICB9XG4gICAgICBwIHtcbiAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgIH1cbiAgICB9XG4gICAgLmdmb3JtX3dyYXBwZXIge1xuXG4gICAgICAuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvcnMge1xuICAgICAgICBib3gtc2hhZG93Om5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDE2KTtcbiAgICAgIH1cbiAgICAgIGZvcm0ge1xuICAgICAgICAuZ2Zvcm0tYm9keSB7XG4gICAgICAgICAgLmdmb3JtX2ZpZWxkcyB7XG5cbiAgICAgICAgICAgIC5nZmllbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAudmFsaWRhdGlvbl9tZXNzYWdlIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyOm5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OjA7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDQwMCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXJlbSgxOSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5nZmllbGRfbGFiZWwsXG4gICAgICAgICAgICAgIC5nZm9ybS1maWVsZC1sYWJlbCB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXJlbSgyNCk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICMxNzM3NjY7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgICAgICAuZ2ZpZWxkX3JlcXVpcmVkIHtcbiAgICAgICAgICAgICAgICAgIC5nZmllbGRfcmVxdWlyZWRfdGV4dCB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyonO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IGZvbnQtcmVtKDIwKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgICAgICAgICAgICBpbnB1dFt0eXBlPVwidGVsXCJdLFxuICAgICAgICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg3MCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuXG4gICAgICAgICAgICAgICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMTgyMDJDO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg3MCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMTUpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiA5OSUgY2VudGVyO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgdGV4dGFyZWEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDI1KTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDIxNik7XG4gICAgICAgICAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJi5nZmllbGQtLXR5cGUtcmFkaW8sXG4gICAgICAgICAgICAgICYuZ2ZpZWxkLS10eXBlLWNoZWNrYm94IHtcbiAgICAgICAgICAgICAgICAuZ2Nob2ljZSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEwKTtcblxuICAgICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNDAwKTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE5KTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IzE4MjAyQztcbiAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgICBhY2NlbnQtY29sb3I6ICMwMEE0QzQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZ2Zvcm1fZm9vdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDYyKTtcbiAgICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTYpO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDAuMyk7XG4gICAgICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDAgNDUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMzEpO1xuICAgICAgICAgICAgYm9yZGVyOjIuNXB4IHNvbGlkICNFNTZEMDY7XG4gICAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLm5ld3NsZXR0ZXItYmxvY2sge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIHBhZGRpbmc6cmVtLWNhbGMoNDAgMzUpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDpuby1yZXBlYXQ7XG4gIGJhY2tncm91bmQtc2l6ZTpjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjpjZW50ZXIgY2VudGVyO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoMTAwIDApO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6Jyc7XG4gICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgaW5zZXQ6MDtcbiAgICByaWdodDphdXRvO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiKDIzLDU1LDEwMik7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDIzLDU1LDEwMiwwLjcwKSA0MCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgbWl4LWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgIHotaW5kZXg6MjtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6cmVtLWNhbGMoOTAwKTtcbiAgICB9XG4gICAgLmJsb2NrLWRldGFpbHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg2MDApO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICB9XG4gICAgICBoMyB7XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgfVxuICAgICAgcCB7XG4gICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIC5nZm9ybV9jb25maXJtYXRpb25fd3JhcHBlciB7XG4gICAgICBjb2xvcjojZmZmO1xuICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDYwMCk7XG4gICAgICBmb250LXNpemU6Zm9udC1yZW0oMjEpO1xuICAgICAgbGluZS1oZWlnaHQ6Zm9udC1yZW0oMzApO1xuICAgIH1cbiAgICAuZ2Zvcm1fd3JhcHBlciB7XG4gICAgICAuZ2Zvcm1fdmFsaWRhdGlvbl9lcnJvcnMge1xuICAgICAgICBib3gtc2hhZG93Om5vbmU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzApO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDE2KTtcbiAgICAgIH1cblxuICAgICAgZm9ybSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgfVxuICAgICAgICAuZ2Zvcm0tYm9keSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg2OTUpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5nZm9ybV9maWVsZHMge1xuXG4gICAgICAgICAgICAuZ2ZpZWxkIHtcbiAgICAgICAgICAgICAgLnZhbGlkYXRpb25fbWVzc2FnZSB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlcjpub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDowO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg0MDApO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogZm9udC1yZW0oMTkpO1xuICAgICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgICAgICAgICAgIGlucHV0W3R5cGU9XCJlbWFpbFwiXSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg2MCk7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMzUpO1xuICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogcmVtLWNhbGMoMCAzMCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDQwMCk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiBmb250LXJlbSgxOSk7XG4gICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgICAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICMxODIwMkM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmdmb3JtX2Zvb3RlciB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgICAgICAgbWFyZ2luOjA7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNjIpO1xuICAgICAgICAgICAgZGlzcGxheTppbmxpbmUtZmxleDtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zKTtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCA0NSk7XG4gICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgYmFja2dyb3VuZDpub25lO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czpyZW0tY2FsYygzMSk7XG4gICAgICAgICAgICBib3JkZXI6Mi41cHggc29saWQgI0U1NkQwNjtcbiAgICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDojZmZmO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6I2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuc2VydmljZXMtZ3JpZCB7XG4gIHBhZGRpbmc6IHJlbS1jYWxjKDYwIDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOiByZW0tY2FsYyg5MCAwIDcwIDApO1xuICB9XG4gIC5zZXJ2aWNlcy1ibG9jay1pbm5lciB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTIwNSk7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICB9XG4gICAgLmJsb2NrLXRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUwKTtcbiAgICAgIH1cbiAgICAgIGgyIHtcbiAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTo4cHggc29saWQgI0IyRTRFRDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMTApO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlcnZpY2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg2MCk7XG4gICAgICB9XG4gICAgICAuc2VydmljZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNFQUY5RkM7XG5cbiAgICAgICAgcGFkZGluZzpyZW0tY2FsYygyNSk7XG4gICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMTMgMCk7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMzUpO1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDM4NCk7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnNlcnZpY2UtaWNvbiB7XG4gICAgICAgICAgZmxleC1zaHJpbms6MDtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoNTYpO1xuICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoNTYpO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICNCMkU0RUQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiByZW0tY2FsYyg3NCk7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDc0KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMjYpO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRyYWluaW5nIHtcbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMzApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2VydmljZS10aXRsZSB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOmNvbHVtbjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgaDUge1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTYpO1xuICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zKTtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMik7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDUpO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOmFsbCAwLjFzIGxpbmVhcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDojQ0NGMEY3O1xuICAgICAgICAgIC5zZXJ2aWNlLWljb24ge1xuICAgICAgICAgICAgYmFja2dyb3VuZDojZmZmO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2VydmljZS10aXRsZSB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOjJweCBzb2xpZCAjMTczNzY2O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OnJlbS1jYWxjKDgpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuc2lkZWJhci1ibG9jayB7XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgcGFkZGluZy1sZWZ0OiByZW0tY2FsYyg0MCk7XG4gIH1cbiAgLnNpZGViYXItaXRlbSB7XG4gICAgYm9yZGVyLXRvcDo4cHggc29saWQgI0IyRTRFRDtcbiAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDYwKTtcbiAgICAuc2lkZWJhci10aXRsZSB7XG4gICAgICBwYWRkaW5nOnJlbS1jYWxjKDMwIDApO1xuICAgICAgaDUge1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnd5c2l3eWcge1xuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGF1dG8gMjAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh3aGl0ZSA1MCUsICNCMkU0RUQgNTAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOnRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB1bCB7XG4gICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgcGFkZGluZzowO1xuICAgICAgICBtYXJnaW46MDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDpyZW0tY2FsYygxNSk7XG4gICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygyNSk7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDon4pePJztcbiAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5maWxlIHtcbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNik7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjM0KTtcbiAgICAgICAgICBsaW5lLWhlaWdodDoxO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxMCk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6cmVtLWNhbGMoMTApO1xuICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgIHRvcDpyZW0tY2FsYygtMyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICB9XG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm51bWJlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDcwKTtcbiAgICAgIC50aGUtbnVtYmVyIHtcbiAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSg3NSk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDY3KTtcbiAgICAgICAgY29sb3I6IzAwNDk5MDtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuXG4gICAgICB9XG4gICAgICAuZGVzY3JpcHRpb24ge1xuXG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLmFjY29yZGlvbi13cmFwcGVyIHtcbiAgcGFkZGluZzpyZW0tY2FsYygzMCA1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDUwIDApO1xuICB9XG4gIC5ibG9jay10aXRsZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG4gICAgfVxuICAgIGg0IHtcbiAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgfVxuICB9XG59XG4iLCIuZmlsZXMtYmxvY2sge1xuICBwYWRkaW5nOnJlbS1jYWxjKDAgMTUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6MDtcbiAgfVxuICAuYmxvY2stdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcbiAgICBoNCB7XG4gICAgICBjb2xvcjojMTczNzY2O1xuICAgIH1cbiAgfVxuICAuZmlsZXMge1xuICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgNDUgMCk7XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgbWFyZ2luOjA7XG4gICAgICBib3JkZXItdG9wOjFweCBzb2xpZCAjQjRCRUNFO1xuICAgICAgbGkge1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDIwIDApO1xuICAgICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAjQjRCRUNFO1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTYpO1xuICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogcmVtLWNhbGMoMC4zNCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6MTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OnJlbS1jYWxjKDIwKTtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDowO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMjQpO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDpyZW0tY2FsYygxOCk7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6cmVtLWNhbGMoNCk7XG4gICAgICAgICAgd2lkdGg6cmVtLWNhbGMoMTUpO1xuICAgICAgICAgIGZsZXgtc2hyaW5rOjA7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6I0U1NkQwNjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDphdXRvO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgdG9wOjA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6NDAwO1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYygyMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAjMTczNzY2O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgIHRvcDogcmVtLWNhbGMoMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYubGluayB7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDIyNWRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIHRvcDpyZW0tY2FsYygtMyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiLnZpZGVvLWJsb2NrIHtcbiAgcGFkZGluZzpyZW0tY2FsYygzNSAwKTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDQwIDApO1xuICB9XG4gIC5yb3cge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICB3aWR0aDpyZW0tY2FsYygxMjAwKTtcbiAgICAgIG1hcmdpbjowIGF1dG8gIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLnZpZGVvLXdyYXBwZXIge1xuICAgICBhIHtcbiAgICAgICBoZWlnaHQ6cmVtLWNhbGMoMjM3KTtcbiAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDM1KTtcbiAgICAgICBvdmVyZmxvdzpoaWRkZW47XG4gICAgICAgei1pbmRleDoxO1xuICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg0MzcpO1xuICAgICAgIH1cbiAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgIGluc2V0OjA7XG4gICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMTEsMzIsNjQsMC40Nik7XG4gICAgICAgICBiYWNrZ3JvdW5kLWJsZW5kLW1vZGU6IG11bHRpcGx5O1xuICAgICAgICAgei1pbmRleDozO1xuICAgICAgIH1cbiAgICAgICBpbWcge1xuICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICBpbnNldDowO1xuICAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDIzNyk7XG4gICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzNSk7XG4gICAgICAgICB6LWluZGV4OjI7XG4gICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNDM3KTtcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgICAgaSB7XG4gICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgIHRvcDo1MCU7XG4gICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgIHRyYW5zZm9ybTp0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICAgICAgIHotaW5kZXg6NDtcbiAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oNzApO1xuICAgICAgIH1cbiAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgIGkge1xuICAgICAgICAgICBiYWNrZ3JvdW5kOiNFNTZEMDY7XG4gICAgICAgICAgIGJvcmRlci1yYWRpdXM6MTAwJTtcbiAgICAgICAgIH1cbiAgICAgICB9XG4gICAgIH1cbiAgfVxuICAuYmxvY2stdGV4dCB7XG4gICAgbWFyZ2luLXRvcDpyZW0tY2FsYygyNSk7XG4gIH1cbn1cbiN2aWRlby1tb2RhbCB7XG4gIGJhY2tncm91bmQ6bm9uZTtcbiAgYm9yZGVyOm5vbmU7XG4gIHRvcDpyZW0tY2FsYyg4MCkgIWltcG9ydGFudDtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICB3aWR0aDpyZW0tY2FsYygxMjA2KTtcbiAgfVxuICAuY2xvc2UtYnV0dG9uIHtcbiAgICB3aWR0aDpyZW0tY2FsYyg1OSk7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDU5KTtcbiAgICBib3JkZXItcmFkaXVzOjEwMCU7XG4gICAgYmFja2dyb3VuZDojZmZmO1xuICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgZm9udC1zaXplOmZvbnQtcmVtKDIwKTtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6I0M0QzRDNDtcbiAgICB9XG4gIH1cbiAgLmZ1bGx3aWR0aC12aWRlbyxcbiAgLnJlc3BvbnNpdmUtZW1iZWQge1xuICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoMTAwKTtcbiAgICB2aWRlbyxcbiAgICBpZnJhbWUge1xuXG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMjUpO1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgaGVpZ2h0OnJlbS1jYWxjKDY1Nik7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDM1KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIuY2FzZS1iYW5uZXIge1xuICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgaGVpZ2h0OmF1dG87XG4gIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgaGVpZ2h0OnJlbS1jYWxjKDczMCk7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDonJztcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICBpbnNldDowO1xuICAgIHRvcDowO1xuICAgIGhlaWdodDpyZW0tY2FsYyg5Nik7XG4gICAgcmlnaHQ6MDtcbiAgICB3aWR0aDoxMDAlO1xuICAgIHotaW5kZXg6MztcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCwwLDApO1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwwLDAsMC43MykgMCUsIHJnYmEoMjU1LDI1NSwyNTUsMCkgMTAwJSk7XG4gICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBtdWx0aXBseTtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDkwZGVnLCByZ2JhKDAsMCwwLDAuNzMpIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDApIDEwMCUpO1xuICAgICAgd2lkdGg6ODAlO1xuICAgICAgcmlnaHQ6YXV0bztcbiAgICAgIGhlaWdodDpyZW0tY2FsYyg3MzApO1xuICAgIH1cbiAgfVxuICBpbWcge1xuICAgIGhlaWdodDpyZW0tY2FsYygyNzQpO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBpbnNldDowO1xuICAgICAgei1pbmRleDoyO1xuICAgICAgaGVpZ2h0OnJlbS1jYWxjKDczMCk7XG4gICAgfVxuICB9XG4gIC5jYXNlLWJhbm5lci13cmFwcGVyIHtcbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICBsZWZ0OjA7XG4gICAgICByaWdodDowO1xuICAgICAgei1pbmRleDo0O1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIHBhZGRpbmc6MDtcbiAgICB9XG4gICAgLmNhc2UtYmFubmVyLWRldGFpbHMge1xuICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxMjA1KSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYygzNSAwIDAgMCk7XG4gICAgICB9XG4gICAgICAuYnJlYWRjcnVtYnMge1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOnJlbS1jYWxjKDMwKTtcbiAgICAgICAgbGVmdDpyZW0tY2FsYygzNSk7XG4gICAgICAgIHJpZ2h0OnJlbS1jYWxjKDM1KTtcbiAgICAgICAgei1pbmRleDo0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0MCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTAwKTtcbiAgICAgICAgICBwb3NpdGlvbjpzdGF0aWM7XG4gICAgICAgIH1cbiAgICAgICAgPiBzcGFuIHtcbiAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjojZmZmO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiNmZmY7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmVhdHVyZWQtdGV4dCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoMzUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiM5MkRCRTg7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDEwIDM1KTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czowO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDQwMCk7XG4gICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjIpO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206cmVtLWNhbGMoNzUpO1xuICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg1OCk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6cmVtLWNhbGMoNjIpO1xuICAgICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMCA1MCAwIDApO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6cmVtLWNhbGMoMCAyOSAyOSAwKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgaGVpZ2h0OiByZW0tY2FsYyg1OCk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiByZW0tY2FsYygtMjAwMCk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjOTJEQkU4O1xuICAgICAgICAgICAgd2lkdGg6IHJlbS1jYWxjKDIwMDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJhbm5lci1kZXRhaWxzIHtcbiAgICAgICAgaDEsIGg0IHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMzUgMzUpO1xuICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgIG1hcmdpbjogcmVtLWNhbGMoMCAwIDM1IDApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBiciB7XG4gICAgICAgICAgICBkaXNwbGF5Om5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuY2FzZS1iYW5uZXIge1xuICAgIGhlaWdodDphdXRvO1xuICAgIGJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgJjphZnRlciB7XG4gICAgICBkaXNwbGF5Om5vbmU7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBwb3NpdGlvbjpzdGF0aWM7XG4gICAgICBoZWlnaHQ6cmVtLWNhbGMoNDAwKTtcbiAgICB9XG4gICAgLmNhc2UtYmFubmVyLXdyYXBwZXIge1xuXG4gICAgICBwb3NpdGlvbjpzdGF0aWM7XG4gICAgICAuY2FzZS1iYW5uZXItZGV0YWlscyB7XG4gICAgICAgIC5icmVhZGNydW1icyB7XG4gICAgICAgICAgZGlzcGxheTpub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1ibG9jayB7XG4gIHBhZGRpbmc6cmVtLWNhbGMoMzUgMjUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6cmVtLWNhbGMoODAgMCAwIDApO1xuICB9XG4gIC5ibG9jay10aXRsZSB7XG4gICAgYm9yZGVyLXRvcDo0cHggc29saWQgI0U1NkQwNjtcbiAgICBoNiB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjI1KTtcbiAgICAgIHBhZGRpbmc6cmVtLWNhbGMoMjUgMCA0MCAwKTtcbiAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICBmb250LXdlaWdodDo3MDA7XG4gICAgfVxuICB9XG4gIC5ibG9jay1jb250ZW50IHtcbiAgICA+IGgzLCA+IGg0LCA+IGg1LCA+IGg2IHtcbiAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDIwKTtcbiAgICB9XG4gICAgPiB1bCB7XG4gICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICBwYWRkaW5nOjA7XG4gICAgICBtYXJnaW46MDtcbiAgICAgID4gbGkge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6cmVtLWNhbGMoMTUpO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxNSk7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50Oifil48nO1xuICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgbGVmdDowO1xuICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgIH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBhdXRvIDIwMCU7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQod2hpdGUgNTAlLCAjQjJFNEVEIDUwJSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uLXk6IDEwMCU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gdWwge1xuICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDE1IDAgMCAyMCk7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OnJlbS1jYWxjKDE1KTtcbiAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTpyZW0tY2FsYygxMCk7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6J+KXiyc7XG4gICAgICAgICAgICAgIGNvbG9yOiNFNTZEMDY7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTpmb250LXJlbSgxNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbToycHggc29saWQgIzE3Mzc2NjtcbiAgICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogYXV0byAyMDAlO1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcyBlYXNlLWluLW91dDtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHdoaXRlIDUwJSwgI0IyRTRFRCA1MCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb24teTogMTAwJTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG5AbWVkaWEgcHJpbnQge1xuICAuc2VjdGlvbi1ibG9jayB7XG4gICAgYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cbn0iLCIuc3RhdHMtYmxvY2sge1xuICBwYWRkaW5nOnJlbS1jYWxjKDM1IDI1KTtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICBwYWRkaW5nOnJlbS1jYWxjKDY1IDAgMTAwIDApO1xuICB9XG4gIFxuICAmLnJlZHVjZWQtcGFkZGluZyB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nOnJlbS1jYWxjKDY1IDApO1xuICAgICAgfVxuICB9XG4gIFxuICAubnVtYmVycyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjpyZW0tY2FsYygwIC0xNSk7XG4gICAgfVxuICAgIC5udW1iZXIge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIG1hcmdpbjpyZW0tY2FsYygwIDAgMjAgMCk7XG4gICAgICBib3JkZXItcmFkaXVzOnJlbS1jYWxjKDAgMCAzMCAwKTtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgIHdpZHRoOnJlbS1jYWxjKDM2MCk7XG4gICAgICAgIGZsZXgtc2hyaW5rOjA7XG4gICAgICAgIG1hcmdpbjpyZW0tY2FsYygxNSAxNSA0MCAxNSk7XG4gICAgICB9XG4gICAgICAudGhlLW51bWJlciB7XG4gICAgICAgIEBpbmNsdWRlIHByaW1hcnktZm9udCg3MDApO1xuICAgICAgICBjb2xvcjojMDA0OTkwO1xuICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oNDMpO1xuICAgICAgICBsaW5lLWhlaWdodDpmb250LXJlbSg1MCk7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oNTQpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OmZvbnQtcmVtKDY3KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMjc3KTtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5LWZvbnQoNzAwKTtcbiAgICAgICAgICBjb2xvcjojMDAwMDAwO1xuICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuQG1lZGlhIHByaW50IHtcbiAgLnN0YXRzLWJsb2NrIHtcbiAgICBicmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG59IiwiLmNhcmVlcnMtc2xpZGVyLWJsb2NrIHtcbiAgcGFkZGluZzogcmVtLWNhbGMoMzUpO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHBhZGRpbmc6IHJlbS1jYWxjKDAgMCA1MCAwKTtcbiAgfVxuICAuYmxvY2staW5uZXIge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDEyMDUpO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuICAgIC5jYXJlZXJzLXdyYXBwZXIge1xuICAgICAgLmNhcmVlcnMtdGl0bGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDMwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDcwKTtcbiAgICAgICAgfVxuICAgICAgICBoMyB7XG4gICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNhcmVlcnMtc2xpZGVyIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206cmVtLWNhbGMoMTAwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICBtYXJnaW46cmVtLWNhbGMoMCAtMTMpO1xuICAgICAgICB9XG4gICAgICAgIC5jYXJlZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6I0VBRjlGQztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiByZW0tY2FsYygzMCk7XG4gICAgICAgICAgcGFkZGluZzpyZW0tY2FsYygzMCAyNSk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJlbS1jYWxjKDM1KTtcbiAgICAgICAgICAgIHBhZGRpbmc6cmVtLWNhbGMoNjAgNTApO1xuICAgICAgICAgICAgbWFyZ2luOnJlbS1jYWxjKDAgMTApO1xuICAgICAgICAgIH1cbiAgICAgICAgICBoNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDQwKTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjojMTczNzY2O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIGNvbG9yOiMxODIwMkM7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOnJlbS1jYWxjKDMwKTtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC52aWV3LW1vcmUge1xuICAgICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeS1mb250KDcwMCk7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC1zaXplOmZvbnQtcmVtKDE2KTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiByZW0tY2FsYygwLjMpO1xuICAgICAgICAgICAgY29sb3I6IzE3Mzc2NjtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBjb2xvcjojRTU2RDA2O1xuICAgICAgICAgICAgICBmb250LXNpemU6Zm9udC1yZW0oMTIpO1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDpyZW0tY2FsYyg1KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206MnB4IHNvbGlkICMxNzM3NjY7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jYXJlZXJzLWN0YSB7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi10b3A6cmVtLWNhbGMoNzApO1xuICAgICAgfVxuICAgICAgLnNsaWNrLWFycm93IHtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIHRyYW5zZm9ybTpub25lO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6cmVtLWNhbGMoNDQpO1xuICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNDQpO1xuICAgICAgICBkaXNwbGF5OmJsb2NrO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDU5KTtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNTkpO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBmb250LWZhbWlseTogJ2ljb21vb24nLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDQ0KTtcbiAgICAgICAgICBoZWlnaHQ6cmVtLWNhbGMoNDQpO1xuICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgIGJvcmRlcjoyLjVweCBzb2xpZCAjOTJEQkU4O1xuICAgICAgICAgIGNvbG9yOiMxNzM3NjY7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXNpemU6cmVtLWNhbGMoMjApO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIG9wYWNpdHk6MTtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgZm9udC1zaXplOnJlbS1jYWxjKDI4KTtcbiAgICAgICAgICAgIHdpZHRoOnJlbS1jYWxjKDU5KTtcbiAgICAgICAgICAgIGhlaWdodDpyZW0tY2FsYyg1OSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IGNhbGMoNTAlIC0gMy4xMnJlbSk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHJpZ2h0OiBjYWxjKDUwJSAtIDQuMThyZW0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlxcZTkwNFwiO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnNsaWNrLXByZXYge1xuICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gMy4xMnJlbSk7XG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGxlZnQ6IGNhbGMoNTAlIC0gNC4xOHJlbSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG4gICAgICAgICAgICB0cmFuc2Zvcm06cm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICYuc2xpY2stZGlzYWJsZWQge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6bm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjpyZ2JhKDE0NiwyMTksMjMyLDAuMzEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6cmdiYSgxNDYsMjE5LDIzMiwwLjMxKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxufSJdfQ== */
