@charset "UTF-8";
/**
 * Foundation for Sites
 * Version 6.6.3
 * https://get.foundation
 * Licensed under MIT Open Source
 */
@media print, screen and (min-width: 40em) {
  .reveal, .reveal.tiny, .reveal.small, .reveal.large {
    right: auto;
    left: auto;
    margin: 0 auto; } }

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  height: 0;
  overflow: visible; }

pre {
  font-family: monospace, monospace;
  font-size: 1em; }

a {
  background-color: transparent; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b,
strong {
  font-weight: bolder; }

code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

img {
  border-style: none; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0; }

button,
input {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; }

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

fieldset {
  padding: 0.35em 0.75em 0.625em; }

legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal; }

progress {
  vertical-align: baseline; }

textarea {
  overflow: auto; }

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0; }

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

details {
  display: block; }

summary {
  display: list-item; }

template {
  display: none; }

[hidden] {
  display: none; }

.foundation-mq {
  font-family: "small=0em&medium=40em&large=64em&xlarge=75em&xxlarge=90em&xxxlarge=120em&xxxxlarge=143.75em"; }

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: #1a1a1a;
  font-family: "Inter", sans-serif;
  font-weight: normal;
  line-height: 1.5;
  color: #151F35;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic; }

textarea {
  height: auto;
  min-height: 50px;
  border-radius: 0; }

select {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  border-radius: 0; }

.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

button {
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  line-height: 1;
  cursor: auto; }
  [data-whatinput='mouse'] button {
    outline: 0; }

pre {
  overflow: auto; }

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; }

.is-visible {
  display: block !important; }

.is-hidden {
  display: none !important; }

[type='text'], [type='password'], [type='date'], [type='datetime'], [type='datetime-local'], [type='month'], [type='week'], [type='email'], [type='number'], [type='search'], [type='tel'], [type='time'], [type='url'], [type='color'],
textarea {
  display: block;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
  height: 3.8125rem;
  margin: 0 0 1rem;
  padding: 1.1875rem 1.375rem;
  border: 3px solid #8a8a8a;
  border-radius: 0;
  background-color: #ffffff;
  -webkit-box-shadow: none;
          box-shadow: none;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none; }
  [type='text']:focus, [type='password']:focus, [type='date']:focus, [type='datetime']:focus, [type='datetime-local']:focus, [type='month']:focus, [type='week']:focus, [type='email']:focus, [type='number']:focus, [type='search']:focus, [type='tel']:focus, [type='time']:focus, [type='url']:focus, [type='color']:focus,
  textarea:focus {
    outline: none;
    border: 3px solid #1a1a1a;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 5px #8a8a8a;
            box-shadow: 0 0 5px #8a8a8a;
    -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: #f0f4f5;
  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: #8a8a8a; }

::-moz-placeholder {
  color: #8a8a8a; }

:-ms-input-placeholder {
  color: #8a8a8a; }

::-ms-input-placeholder {
  color: #8a8a8a; }

::placeholder {
  color: #8a8a8a; }

[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: #000000; }
  label.middle {
    margin: 0 0 1rem;
    padding: 0.6875rem 0; }

.help-text {
  margin-top: -0.5rem;
  font-size: 0.8125rem;
  font-style: italic;
  color: #000000; }

.input-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  margin-bottom: 1rem;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }
  .input-group > :first-child, .input-group > :first-child.input-group-button > * {
    border-radius: 0 0 0 0; }
  .input-group > :last-child, .input-group > :last-child.input-group-button > * {
    border-radius: 0 0 0 0; }

.input-group-label, .input-group-field, .input-group-button, .input-group-button a,
.input-group-button input,
.input-group-button button,
.input-group-button label {
  margin: 0;
  white-space: nowrap; }

.input-group-label {
  padding: 0 1rem;
  border: 1px solid #8a8a8a;
  background: #f0f4f5;
  color: #000000;
  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 #8a8a8a; }
  .fieldset legend {
    margin: 0;
    margin-left: -0.1875rem;
    padding: 0 0.1875rem; }

select {
  height: 3.8125rem;
  margin: 0 0 1rem;
  padding: 1.1875rem 1.375rem;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  border: 3px solid #8a8a8a;
  border-radius: 0;
  background-color: #ffffff;
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #000000;
  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%2826, 26, 26%29'></polygon></svg>");
  background-origin: content-box;
  background-position: right -1rem center;
  background-repeat: no-repeat;
  background-size: 9px 6px;
  padding-right: 1.5rem;
  -webkit-transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out;
  transition: box-shadow 0.5s, border-color 0.25s ease-in-out, -webkit-box-shadow 0.5s; }
  @media screen and (min-width: 0\0) {
    select {
      background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAYCAYAAACbU/80AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAIpJREFUeNrEkckNgDAMBBfRkEt0ObRBBdsGXUDgmQfK4XhH2m8czQAAy27R3tsw4Qfe2x8uOO6oYLb6GlOor3GF+swURAOmUJ+RwtEJs9WvTGEYxBXqI1MQAZhCfUQKRzDMVj+TwrAIV6jvSUEkYAr1LSkcyTBb/V+KYfX7xAeusq3sLDtGH3kEGACPWIflNZfhRQAAAABJRU5ErkJggg=="); } }
  select:focus {
    outline: none;
    border: 3px solid #1a1a1a;
    background-color: #ffffff;
    -webkit-box-shadow: 0 0 5px #8a8a8a;
            box-shadow: 0 0 5px #8a8a8a;
    -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: #f0f4f5;
    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: #faedeb; }
  .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: 1.5rem;
  font-size: inherit;
  line-height: 1.5;
  text-rendering: optimizeLegibility; }

em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 80%;
  line-height: inherit; }

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-family: "degular";
  font-style: normal;
  font-weight: bold;
  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: #8a8a8a; }

h1, .h1 {
  font-size: 3.1875rem;
  line-height: 0.94118;
  margin-top: 0;
  margin-bottom: 0; }

h2, .h2 {
  font-size: 1.5rem;
  line-height: 1.29167;
  margin-top: 0;
  margin-bottom: 1.25rem; }

h3, .h3 {
  font-size: 1.25rem;
  line-height: 1.3;
  margin-top: 0;
  margin-bottom: 1.25rem; }

h4, .h4 {
  font-size: 0.875rem;
  line-height: 1.28571;
  margin-top: 0;
  margin-bottom: 1.25rem; }

h5, .h5 {
  font-size: 0.75rem;
  line-height: 1.33333;
  margin-top: 0;
  margin-bottom: 1.25rem; }

h6, .h6 {
  font-size: 0.625rem;
  line-height: 1.4;
  margin-top: 0;
  margin-bottom: 1.25rem; }

@media print, screen and (min-width: 40em) {
  h1, .h1 {
    font-size: 5.625rem; } }

@media screen and (min-width: 75em) {
  h1, .h1 {
    font-size: 6.25rem; }
  h2, .h2 {
    font-size: 1.875rem;
    margin-bottom: 1.875rem; }
  h3, .h3 {
    font-size: 1.625rem;
    margin-bottom: 1.875rem; }
  h4, .h4 {
    font-size: 1.125rem;
    margin-bottom: 1.875rem; }
  h5, .h5 {
    font-size: 1rem;
    margin-bottom: 1.875rem; }
  h6, .h6 {
    font-size: 0.875rem;
    margin-bottom: 1.875rem; } }

@media screen and (min-width: 90em) {
  h1, .h1 {
    font-size: 7.875rem;
    line-height: 0.87302; } }

@media screen and (min-width: 120em) {
  h1, .h1 {
    font-size: 10rem; } }

@media screen and (min-width: 143.75em) {
  h1, .h1 {
    font-size: 12.5rem; } }

a {
  line-height: inherit;
  color: #EB5E94;
  text-decoration: none;
  cursor: pointer; }
  a:hover, a:focus {
    color: #e63579; }
  a img {
    border: 0; }

hr {
  clear: both;
  max-width: 101.25rem;
  height: 0;
  margin: 1.25rem auto;
  border-top: 0;
  border-right: 0;
  border-bottom: 1px solid #8a8a8a;
  border-left: 0; }

ul,
ol,
dl {
  margin-bottom: 1.5rem;
  list-style-position: outside;
  line-height: 1.5; }

li {
  font-size: inherit; }

ul {
  margin-left: 1.25rem;
  list-style-type: disc; }

ol {
  margin-left: 1.25rem; }

ul ul, ol ul, ul ol, ol ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

dl {
  margin-bottom: 1rem; }
  dl dt {
    margin-bottom: 0.3rem;
    font-weight: bold; }

blockquote {
  margin: 0 0 1.5rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #8a8a8a; }
  blockquote, blockquote p {
    line-height: 1.5;
    color: #1a1a1a; }

abbr, abbr[title] {
  border-bottom: 1px dotted #000000;
  cursor: help;
  text-decoration: none; }

figure {
  margin: 0; }

kbd {
  margin: 0;
  padding: 0.125rem 0.25rem 0;
  background-color: #f0f4f5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  color: #000000; }

.subheader {
  margin-top: 0.2rem;
  margin-bottom: 0.5rem;
  font-weight: normal;
  line-height: 1.4;
  color: #1a1a1a; }

.lead {
  font-size: 125%;
  line-height: 1.5; }

.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: #1a1a1a;
  font-size: 0.8125rem; }
  .cite-block:before, cite:before {
    content: "— "; }

.code-inline, code {
  border: 1px solid #8a8a8a;
  background-color: #f0f4f5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000000;
  display: inline;
  max-width: 100%;
  word-wrap: break-word;
  padding: 0.125rem 0.3125rem 0.0625rem; }

.code-block {
  border: 1px solid #8a8a8a;
  background-color: #f0f4f5;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  color: #000000;
  display: block;
  overflow: auto;
  white-space: pre;
  padding: 1rem;
  margin-bottom: 1.5rem; }

.text-left {
  text-align: left; }

.text-right {
  text-align: right; }

.text-center {
  text-align: center; }

.text-justify {
  text-align: justify; }

@media print, screen and (min-width: 40em) {
  .medium-text-left {
    text-align: left; }
  .medium-text-right {
    text-align: right; }
  .medium-text-center {
    text-align: center; }
  .medium-text-justify {
    text-align: justify; } }

@media print, screen and (min-width: 64em) {
  .large-text-left {
    text-align: left; }
  .large-text-right {
    text-align: right; }
  .large-text-center {
    text-align: center; }
  .large-text-justify {
    text-align: justify; } }

@media screen and (min-width: 75em) {
  .xlarge-text-left {
    text-align: left; }
  .xlarge-text-right {
    text-align: right; }
  .xlarge-text-center {
    text-align: center; }
  .xlarge-text-justify {
    text-align: justify; } }

.show-for-print {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    color: black !important;
    -webkit-print-color-adjust: economy;
            color-adjust: economy;
    -webkit-box-shadow: none !important;
            box-shadow: none !important;
    text-shadow: none !important; }
  .show-for-print {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  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 #1a1a1a;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .print-break-inside {
    page-break-inside: auto; } }

.grid-container {
  padding-right: 0.625rem;
  padding-left: 0.625rem;
  max-width: 101.25rem;
  margin-left: auto;
  margin-right: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-container {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-container {
      padding-right: 1.24687rem;
      padding-left: 1.24687rem; } }
  .grid-container.fluid {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }
    @media print, screen and (min-width: 40em) {
      .grid-container.fluid {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    @media print, screen and (min-width: 64em) {
      .grid-container.fluid {
        padding-right: 0.625rem;
        padding-left: 0.625rem; } }
    @media screen and (min-width: 75em) {
      .grid-container.fluid {
        padding-right: 1.24687rem;
        padding-left: 1.24687rem; } }
  .grid-container.full {
    padding-right: 0;
    padding-left: 0;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto; }

.grid-x {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }

.cell {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  min-height: 0px;
  min-width: 0px;
  width: 100%; }
  .cell.auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px; }
  .cell.shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }

.grid-x > .auto {
  width: auto; }

.grid-x > .shrink {
  width: auto; }

.grid-x > .small-shrink, .grid-x > .small-full, .grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-flex-basis: auto;
      -ms-flex-preferred-size: auto;
          flex-basis: auto; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-shrink, .grid-x > .medium-full, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-shrink, .grid-x > .large-full, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

@media screen and (min-width: 75em) {
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-full, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; } }

.grid-x > .small-1, .grid-x > .small-2, .grid-x > .small-3, .grid-x > .small-4, .grid-x > .small-5, .grid-x > .small-6, .grid-x > .small-7, .grid-x > .small-8, .grid-x > .small-9, .grid-x > .small-10, .grid-x > .small-11, .grid-x > .small-12 {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 auto;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto; }

.grid-x > .small-1 {
  width: 8.33333%; }

.grid-x > .small-2 {
  width: 16.66667%; }

.grid-x > .small-3 {
  width: 25%; }

.grid-x > .small-4 {
  width: 33.33333%; }

.grid-x > .small-5 {
  width: 41.66667%; }

.grid-x > .small-6 {
  width: 50%; }

.grid-x > .small-7 {
  width: 58.33333%; }

.grid-x > .small-8 {
  width: 66.66667%; }

.grid-x > .small-9 {
  width: 75%; }

.grid-x > .small-10 {
  width: 83.33333%; }

.grid-x > .small-11 {
  width: 91.66667%; }

.grid-x > .small-12 {
  width: 100%; }

@media print, screen and (min-width: 40em) {
  .grid-x > .medium-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .medium-shrink, .grid-x > .medium-1, .grid-x > .medium-2, .grid-x > .medium-3, .grid-x > .medium-4, .grid-x > .medium-5, .grid-x > .medium-6, .grid-x > .medium-7, .grid-x > .medium-8, .grid-x > .medium-9, .grid-x > .medium-10, .grid-x > .medium-11, .grid-x > .medium-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .medium-shrink {
    width: auto; }
  .grid-x > .medium-1 {
    width: 8.33333%; }
  .grid-x > .medium-2 {
    width: 16.66667%; }
  .grid-x > .medium-3 {
    width: 25%; }
  .grid-x > .medium-4 {
    width: 33.33333%; }
  .grid-x > .medium-5 {
    width: 41.66667%; }
  .grid-x > .medium-6 {
    width: 50%; }
  .grid-x > .medium-7 {
    width: 58.33333%; }
  .grid-x > .medium-8 {
    width: 66.66667%; }
  .grid-x > .medium-9 {
    width: 75%; }
  .grid-x > .medium-10 {
    width: 83.33333%; }
  .grid-x > .medium-11 {
    width: 91.66667%; }
  .grid-x > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .grid-x > .large-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .large-shrink, .grid-x > .large-1, .grid-x > .large-2, .grid-x > .large-3, .grid-x > .large-4, .grid-x > .large-5, .grid-x > .large-6, .grid-x > .large-7, .grid-x > .large-8, .grid-x > .large-9, .grid-x > .large-10, .grid-x > .large-11, .grid-x > .large-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .large-shrink {
    width: auto; }
  .grid-x > .large-1 {
    width: 8.33333%; }
  .grid-x > .large-2 {
    width: 16.66667%; }
  .grid-x > .large-3 {
    width: 25%; }
  .grid-x > .large-4 {
    width: 33.33333%; }
  .grid-x > .large-5 {
    width: 41.66667%; }
  .grid-x > .large-6 {
    width: 50%; }
  .grid-x > .large-7 {
    width: 58.33333%; }
  .grid-x > .large-8 {
    width: 66.66667%; }
  .grid-x > .large-9 {
    width: 75%; }
  .grid-x > .large-10 {
    width: 83.33333%; }
  .grid-x > .large-11 {
    width: 91.66667%; }
  .grid-x > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .grid-x > .xlarge-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 0px;
        -ms-flex: 1 1 0px;
            flex: 1 1 0px;
    width: auto; }
  .grid-x > .xlarge-shrink, .grid-x > .xlarge-1, .grid-x > .xlarge-2, .grid-x > .xlarge-3, .grid-x > .xlarge-4, .grid-x > .xlarge-5, .grid-x > .xlarge-6, .grid-x > .xlarge-7, .grid-x > .xlarge-8, .grid-x > .xlarge-9, .grid-x > .xlarge-10, .grid-x > .xlarge-11, .grid-x > .xlarge-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-x > .xlarge-shrink {
    width: auto; }
  .grid-x > .xlarge-1 {
    width: 8.33333%; }
  .grid-x > .xlarge-2 {
    width: 16.66667%; }
  .grid-x > .xlarge-3 {
    width: 25%; }
  .grid-x > .xlarge-4 {
    width: 33.33333%; }
  .grid-x > .xlarge-5 {
    width: 41.66667%; }
  .grid-x > .xlarge-6 {
    width: 50%; }
  .grid-x > .xlarge-7 {
    width: 58.33333%; }
  .grid-x > .xlarge-8 {
    width: 66.66667%; }
  .grid-x > .xlarge-9 {
    width: 75%; }
  .grid-x > .xlarge-10 {
    width: 83.33333%; }
  .grid-x > .xlarge-11 {
    width: 91.66667%; }
  .grid-x > .xlarge-12 {
    width: 100%; } }

.grid-margin-x:not(.grid-x) > .cell {
  width: auto; }

.grid-margin-y:not(.grid-y) > .cell {
  height: auto; }

.grid-margin-x {
  margin-left: -0.625rem;
  margin-right: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x {
      margin-left: -0.625rem;
      margin-right: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x {
      margin-left: -0.625rem;
      margin-right: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-x {
      margin-left: -1.24687rem;
      margin-right: -1.24687rem; } }
  .grid-margin-x > .cell {
    width: calc(100% - 1.25rem);
    margin-left: 0.625rem;
    margin-right: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.25rem);
      margin-left: 0.625rem;
      margin-right: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .cell {
      width: calc(100% - 1.25rem);
      margin-left: 0.625rem;
      margin-right: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .cell {
      width: calc(100% - 2.49375rem);
      margin-left: 1.24687rem;
      margin-right: 1.24687rem; } }
  .grid-margin-x > .auto {
    width: auto; }
  .grid-margin-x > .shrink {
    width: auto; }
  .grid-margin-x > .small-1 {
    width: calc(8.33333% - 1.25rem); }
  .grid-margin-x > .small-2 {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x > .small-3 {
    width: calc(25% - 1.25rem); }
  .grid-margin-x > .small-4 {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x > .small-5 {
    width: calc(41.66667% - 1.25rem); }
  .grid-margin-x > .small-6 {
    width: calc(50% - 1.25rem); }
  .grid-margin-x > .small-7 {
    width: calc(58.33333% - 1.25rem); }
  .grid-margin-x > .small-8 {
    width: calc(66.66667% - 1.25rem); }
  .grid-margin-x > .small-9 {
    width: calc(75% - 1.25rem); }
  .grid-margin-x > .small-10 {
    width: calc(83.33333% - 1.25rem); }
  .grid-margin-x > .small-11 {
    width: calc(91.66667% - 1.25rem); }
  .grid-margin-x > .small-12 {
    width: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.25rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 1.25rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 1.25rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 1.25rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 1.25rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 1.25rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 1.25rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 1.25rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 1.25rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 1.25rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 1.25rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 1.25rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 1.25rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 1.25rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 1.25rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-x > .auto {
      width: auto; }
    .grid-margin-x > .shrink {
      width: auto; }
    .grid-margin-x > .small-1 {
      width: calc(8.33333% - 2.49375rem); }
    .grid-margin-x > .small-2 {
      width: calc(16.66667% - 2.49375rem); }
    .grid-margin-x > .small-3 {
      width: calc(25% - 2.49375rem); }
    .grid-margin-x > .small-4 {
      width: calc(33.33333% - 2.49375rem); }
    .grid-margin-x > .small-5 {
      width: calc(41.66667% - 2.49375rem); }
    .grid-margin-x > .small-6 {
      width: calc(50% - 2.49375rem); }
    .grid-margin-x > .small-7 {
      width: calc(58.33333% - 2.49375rem); }
    .grid-margin-x > .small-8 {
      width: calc(66.66667% - 2.49375rem); }
    .grid-margin-x > .small-9 {
      width: calc(75% - 2.49375rem); }
    .grid-margin-x > .small-10 {
      width: calc(83.33333% - 2.49375rem); }
    .grid-margin-x > .small-11 {
      width: calc(91.66667% - 2.49375rem); }
    .grid-margin-x > .small-12 {
      width: calc(100% - 2.49375rem); }
    .grid-margin-x > .medium-auto {
      width: auto; }
    .grid-margin-x > .medium-shrink {
      width: auto; }
    .grid-margin-x > .medium-1 {
      width: calc(8.33333% - 2.49375rem); }
    .grid-margin-x > .medium-2 {
      width: calc(16.66667% - 2.49375rem); }
    .grid-margin-x > .medium-3 {
      width: calc(25% - 2.49375rem); }
    .grid-margin-x > .medium-4 {
      width: calc(33.33333% - 2.49375rem); }
    .grid-margin-x > .medium-5 {
      width: calc(41.66667% - 2.49375rem); }
    .grid-margin-x > .medium-6 {
      width: calc(50% - 2.49375rem); }
    .grid-margin-x > .medium-7 {
      width: calc(58.33333% - 2.49375rem); }
    .grid-margin-x > .medium-8 {
      width: calc(66.66667% - 2.49375rem); }
    .grid-margin-x > .medium-9 {
      width: calc(75% - 2.49375rem); }
    .grid-margin-x > .medium-10 {
      width: calc(83.33333% - 2.49375rem); }
    .grid-margin-x > .medium-11 {
      width: calc(91.66667% - 2.49375rem); }
    .grid-margin-x > .medium-12 {
      width: calc(100% - 2.49375rem); }
    .grid-margin-x > .large-auto {
      width: auto; }
    .grid-margin-x > .large-shrink {
      width: auto; }
    .grid-margin-x > .large-1 {
      width: calc(8.33333% - 2.49375rem); }
    .grid-margin-x > .large-2 {
      width: calc(16.66667% - 2.49375rem); }
    .grid-margin-x > .large-3 {
      width: calc(25% - 2.49375rem); }
    .grid-margin-x > .large-4 {
      width: calc(33.33333% - 2.49375rem); }
    .grid-margin-x > .large-5 {
      width: calc(41.66667% - 2.49375rem); }
    .grid-margin-x > .large-6 {
      width: calc(50% - 2.49375rem); }
    .grid-margin-x > .large-7 {
      width: calc(58.33333% - 2.49375rem); }
    .grid-margin-x > .large-8 {
      width: calc(66.66667% - 2.49375rem); }
    .grid-margin-x > .large-9 {
      width: calc(75% - 2.49375rem); }
    .grid-margin-x > .large-10 {
      width: calc(83.33333% - 2.49375rem); }
    .grid-margin-x > .large-11 {
      width: calc(91.66667% - 2.49375rem); }
    .grid-margin-x > .large-12 {
      width: calc(100% - 2.49375rem); }
    .grid-margin-x > .xlarge-auto {
      width: auto; }
    .grid-margin-x > .xlarge-shrink {
      width: auto; }
    .grid-margin-x > .xlarge-1 {
      width: calc(8.33333% - 2.49375rem); }
    .grid-margin-x > .xlarge-2 {
      width: calc(16.66667% - 2.49375rem); }
    .grid-margin-x > .xlarge-3 {
      width: calc(25% - 2.49375rem); }
    .grid-margin-x > .xlarge-4 {
      width: calc(33.33333% - 2.49375rem); }
    .grid-margin-x > .xlarge-5 {
      width: calc(41.66667% - 2.49375rem); }
    .grid-margin-x > .xlarge-6 {
      width: calc(50% - 2.49375rem); }
    .grid-margin-x > .xlarge-7 {
      width: calc(58.33333% - 2.49375rem); }
    .grid-margin-x > .xlarge-8 {
      width: calc(66.66667% - 2.49375rem); }
    .grid-margin-x > .xlarge-9 {
      width: calc(75% - 2.49375rem); }
    .grid-margin-x > .xlarge-10 {
      width: calc(83.33333% - 2.49375rem); }
    .grid-margin-x > .xlarge-11 {
      width: calc(91.66667% - 2.49375rem); }
    .grid-margin-x > .xlarge-12 {
      width: calc(100% - 2.49375rem); } }

.grid-padding-x .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-x .grid-padding-x {
      margin-right: -1.24687rem;
      margin-left: -1.24687rem; } }

.grid-container:not(.full) > .grid-padding-x {
  margin-right: -0.625rem;
  margin-left: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -0.625rem;
      margin-left: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-container:not(.full) > .grid-padding-x {
      margin-right: -1.24687rem;
      margin-left: -1.24687rem; } }

.grid-padding-x > .cell {
  padding-right: 0.625rem;
  padding-left: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-x > .cell {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-x > .cell {
      padding-right: 0.625rem;
      padding-left: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-x > .cell {
      padding-right: 1.24687rem;
      padding-left: 1.24687rem; } }

.small-up-1 > .cell {
  width: 100%; }

.small-up-2 > .cell {
  width: 50%; }

.small-up-3 > .cell {
  width: 33.33333%; }

.small-up-4 > .cell {
  width: 25%; }

.small-up-5 > .cell {
  width: 20%; }

.small-up-6 > .cell {
  width: 16.66667%; }

.small-up-7 > .cell {
  width: 14.28571%; }

.small-up-8 > .cell {
  width: 12.5%; }

@media print, screen and (min-width: 40em) {
  .medium-up-1 > .cell {
    width: 100%; }
  .medium-up-2 > .cell {
    width: 50%; }
  .medium-up-3 > .cell {
    width: 33.33333%; }
  .medium-up-4 > .cell {
    width: 25%; }
  .medium-up-5 > .cell {
    width: 20%; }
  .medium-up-6 > .cell {
    width: 16.66667%; }
  .medium-up-7 > .cell {
    width: 14.28571%; }
  .medium-up-8 > .cell {
    width: 12.5%; } }

@media print, screen and (min-width: 64em) {
  .large-up-1 > .cell {
    width: 100%; }
  .large-up-2 > .cell {
    width: 50%; }
  .large-up-3 > .cell {
    width: 33.33333%; }
  .large-up-4 > .cell {
    width: 25%; }
  .large-up-5 > .cell {
    width: 20%; }
  .large-up-6 > .cell {
    width: 16.66667%; }
  .large-up-7 > .cell {
    width: 14.28571%; }
  .large-up-8 > .cell {
    width: 12.5%; } }

@media screen and (min-width: 75em) {
  .xlarge-up-1 > .cell {
    width: 100%; }
  .xlarge-up-2 > .cell {
    width: 50%; }
  .xlarge-up-3 > .cell {
    width: 33.33333%; }
  .xlarge-up-4 > .cell {
    width: 25%; }
  .xlarge-up-5 > .cell {
    width: 20%; }
  .xlarge-up-6 > .cell {
    width: 16.66667%; }
  .xlarge-up-7 > .cell {
    width: 14.28571%; }
  .xlarge-up-8 > .cell {
    width: 12.5%; } }

.grid-margin-x.small-up-1 > .cell {
  width: calc(100% - 1.25rem); }

.grid-margin-x.small-up-2 > .cell {
  width: calc(50% - 1.25rem); }

.grid-margin-x.small-up-3 > .cell {
  width: calc(33.33333% - 1.25rem); }

.grid-margin-x.small-up-4 > .cell {
  width: calc(25% - 1.25rem); }

.grid-margin-x.small-up-5 > .cell {
  width: calc(20% - 1.25rem); }

.grid-margin-x.small-up-6 > .cell {
  width: calc(16.66667% - 1.25rem); }

.grid-margin-x.small-up-7 > .cell {
  width: calc(14.28571% - 1.25rem); }

.grid-margin-x.small-up-8 > .cell {
  width: calc(12.5% - 1.25rem); }

@media print, screen and (min-width: 40em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 1.25rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 1.25rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 1.25rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 1.25rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 1.25rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 1.25rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 1.25rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 1.25rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 1.25rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-x.small-up-1 > .cell {
    width: calc(100% - 2.49375rem); }
  .grid-margin-x.medium-up-1 > .cell {
    width: calc(100% - 2.49375rem); }
  .grid-margin-x.large-up-1 > .cell {
    width: calc(100% - 2.49375rem); }
  .grid-margin-x.small-up-2 > .cell {
    width: calc(50% - 2.49375rem); }
  .grid-margin-x.medium-up-2 > .cell {
    width: calc(50% - 2.49375rem); }
  .grid-margin-x.large-up-2 > .cell {
    width: calc(50% - 2.49375rem); }
  .grid-margin-x.small-up-3 > .cell {
    width: calc(33.33333% - 2.49375rem); }
  .grid-margin-x.medium-up-3 > .cell {
    width: calc(33.33333% - 2.49375rem); }
  .grid-margin-x.large-up-3 > .cell {
    width: calc(33.33333% - 2.49375rem); }
  .grid-margin-x.small-up-4 > .cell {
    width: calc(25% - 2.49375rem); }
  .grid-margin-x.medium-up-4 > .cell {
    width: calc(25% - 2.49375rem); }
  .grid-margin-x.large-up-4 > .cell {
    width: calc(25% - 2.49375rem); }
  .grid-margin-x.small-up-5 > .cell {
    width: calc(20% - 2.49375rem); }
  .grid-margin-x.medium-up-5 > .cell {
    width: calc(20% - 2.49375rem); }
  .grid-margin-x.large-up-5 > .cell {
    width: calc(20% - 2.49375rem); }
  .grid-margin-x.small-up-6 > .cell {
    width: calc(16.66667% - 2.49375rem); }
  .grid-margin-x.medium-up-6 > .cell {
    width: calc(16.66667% - 2.49375rem); }
  .grid-margin-x.large-up-6 > .cell {
    width: calc(16.66667% - 2.49375rem); }
  .grid-margin-x.small-up-7 > .cell {
    width: calc(14.28571% - 2.49375rem); }
  .grid-margin-x.medium-up-7 > .cell {
    width: calc(14.28571% - 2.49375rem); }
  .grid-margin-x.large-up-7 > .cell {
    width: calc(14.28571% - 2.49375rem); }
  .grid-margin-x.small-up-8 > .cell {
    width: calc(12.5% - 2.49375rem); }
  .grid-margin-x.medium-up-8 > .cell {
    width: calc(12.5% - 2.49375rem); }
  .grid-margin-x.large-up-8 > .cell {
    width: calc(12.5% - 2.49375rem); }
  .grid-margin-x.xlarge-up-1 > .cell {
    width: calc(100% - 2.49375rem); }
  .grid-margin-x.xlarge-up-2 > .cell {
    width: calc(50% - 2.49375rem); }
  .grid-margin-x.xlarge-up-3 > .cell {
    width: calc(33.33333% - 2.49375rem); }
  .grid-margin-x.xlarge-up-4 > .cell {
    width: calc(25% - 2.49375rem); }
  .grid-margin-x.xlarge-up-5 > .cell {
    width: calc(20% - 2.49375rem); }
  .grid-margin-x.xlarge-up-6 > .cell {
    width: calc(16.66667% - 2.49375rem); }
  .grid-margin-x.xlarge-up-7 > .cell {
    width: calc(14.28571% - 2.49375rem); }
  .grid-margin-x.xlarge-up-8 > .cell {
    width: calc(12.5% - 2.49375rem); } }

.small-margin-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-margin-collapse > .cell {
    margin-right: 0;
    margin-left: 0; }
  .small-margin-collapse > .small-1 {
    width: 8.33333%; }
  .small-margin-collapse > .small-2 {
    width: 16.66667%; }
  .small-margin-collapse > .small-3 {
    width: 25%; }
  .small-margin-collapse > .small-4 {
    width: 33.33333%; }
  .small-margin-collapse > .small-5 {
    width: 41.66667%; }
  .small-margin-collapse > .small-6 {
    width: 50%; }
  .small-margin-collapse > .small-7 {
    width: 58.33333%; }
  .small-margin-collapse > .small-8 {
    width: 66.66667%; }
  .small-margin-collapse > .small-9 {
    width: 75%; }
  .small-margin-collapse > .small-10 {
    width: 83.33333%; }
  .small-margin-collapse > .small-11 {
    width: 91.66667%; }
  .small-margin-collapse > .small-12 {
    width: 100%; }
  @media print, screen and (min-width: 40em) {
    .small-margin-collapse > .medium-1 {
      width: 8.33333%; }
    .small-margin-collapse > .medium-2 {
      width: 16.66667%; }
    .small-margin-collapse > .medium-3 {
      width: 25%; }
    .small-margin-collapse > .medium-4 {
      width: 33.33333%; }
    .small-margin-collapse > .medium-5 {
      width: 41.66667%; }
    .small-margin-collapse > .medium-6 {
      width: 50%; }
    .small-margin-collapse > .medium-7 {
      width: 58.33333%; }
    .small-margin-collapse > .medium-8 {
      width: 66.66667%; }
    .small-margin-collapse > .medium-9 {
      width: 75%; }
    .small-margin-collapse > .medium-10 {
      width: 83.33333%; }
    .small-margin-collapse > .medium-11 {
      width: 91.66667%; }
    .small-margin-collapse > .medium-12 {
      width: 100%; } }
  @media print, screen and (min-width: 64em) {
    .small-margin-collapse > .large-1 {
      width: 8.33333%; }
    .small-margin-collapse > .large-2 {
      width: 16.66667%; }
    .small-margin-collapse > .large-3 {
      width: 25%; }
    .small-margin-collapse > .large-4 {
      width: 33.33333%; }
    .small-margin-collapse > .large-5 {
      width: 41.66667%; }
    .small-margin-collapse > .large-6 {
      width: 50%; }
    .small-margin-collapse > .large-7 {
      width: 58.33333%; }
    .small-margin-collapse > .large-8 {
      width: 66.66667%; }
    .small-margin-collapse > .large-9 {
      width: 75%; }
    .small-margin-collapse > .large-10 {
      width: 83.33333%; }
    .small-margin-collapse > .large-11 {
      width: 91.66667%; }
    .small-margin-collapse > .large-12 {
      width: 100%; } }
  @media screen and (min-width: 75em) {
    .small-margin-collapse > .xlarge-1 {
      width: 8.33333%; }
    .small-margin-collapse > .xlarge-2 {
      width: 16.66667%; }
    .small-margin-collapse > .xlarge-3 {
      width: 25%; }
    .small-margin-collapse > .xlarge-4 {
      width: 33.33333%; }
    .small-margin-collapse > .xlarge-5 {
      width: 41.66667%; }
    .small-margin-collapse > .xlarge-6 {
      width: 50%; }
    .small-margin-collapse > .xlarge-7 {
      width: 58.33333%; }
    .small-margin-collapse > .xlarge-8 {
      width: 66.66667%; }
    .small-margin-collapse > .xlarge-9 {
      width: 75%; }
    .small-margin-collapse > .xlarge-10 {
      width: 83.33333%; }
    .small-margin-collapse > .xlarge-11 {
      width: 91.66667%; }
    .small-margin-collapse > .xlarge-12 {
      width: 100%; } }

.small-padding-collapse {
  margin-right: 0;
  margin-left: 0; }
  .small-padding-collapse > .cell {
    padding-right: 0;
    padding-left: 0; }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .small-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .small-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .small-3 {
    width: 25%; }
  .medium-margin-collapse > .small-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .small-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .small-6 {
    width: 50%; }
  .medium-margin-collapse > .small-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .small-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .small-9 {
    width: 75%; }
  .medium-margin-collapse > .small-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .small-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .medium-3 {
    width: 25%; }
  .medium-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .medium-6 {
    width: 50%; }
  .medium-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .medium-9 {
    width: 75%; }
  .medium-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .medium-margin-collapse > .large-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .large-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .large-3 {
    width: 25%; }
  .medium-margin-collapse > .large-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .large-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .large-6 {
    width: 50%; }
  .medium-margin-collapse > .large-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .large-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .large-9 {
    width: 75%; }
  .medium-margin-collapse > .large-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .large-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .medium-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .medium-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .medium-margin-collapse > .xlarge-3 {
    width: 25%; }
  .medium-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .medium-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .medium-margin-collapse > .xlarge-6 {
    width: 50%; }
  .medium-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .medium-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .medium-margin-collapse > .xlarge-9 {
    width: 75%; }
  .medium-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .medium-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .medium-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 40em) {
  .medium-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .medium-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .small-1 {
    width: 8.33333%; }
  .large-margin-collapse > .small-2 {
    width: 16.66667%; }
  .large-margin-collapse > .small-3 {
    width: 25%; }
  .large-margin-collapse > .small-4 {
    width: 33.33333%; }
  .large-margin-collapse > .small-5 {
    width: 41.66667%; }
  .large-margin-collapse > .small-6 {
    width: 50%; }
  .large-margin-collapse > .small-7 {
    width: 58.33333%; }
  .large-margin-collapse > .small-8 {
    width: 66.66667%; }
  .large-margin-collapse > .small-9 {
    width: 75%; }
  .large-margin-collapse > .small-10 {
    width: 83.33333%; }
  .large-margin-collapse > .small-11 {
    width: 91.66667%; }
  .large-margin-collapse > .small-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .large-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .large-margin-collapse > .medium-3 {
    width: 25%; }
  .large-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .large-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .large-margin-collapse > .medium-6 {
    width: 50%; }
  .large-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .large-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .large-margin-collapse > .medium-9 {
    width: 75%; }
  .large-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .large-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .large-margin-collapse > .medium-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-margin-collapse > .large-1 {
    width: 8.33333%; }
  .large-margin-collapse > .large-2 {
    width: 16.66667%; }
  .large-margin-collapse > .large-3 {
    width: 25%; }
  .large-margin-collapse > .large-4 {
    width: 33.33333%; }
  .large-margin-collapse > .large-5 {
    width: 41.66667%; }
  .large-margin-collapse > .large-6 {
    width: 50%; }
  .large-margin-collapse > .large-7 {
    width: 58.33333%; }
  .large-margin-collapse > .large-8 {
    width: 66.66667%; }
  .large-margin-collapse > .large-9 {
    width: 75%; }
  .large-margin-collapse > .large-10 {
    width: 83.33333%; }
  .large-margin-collapse > .large-11 {
    width: 91.66667%; }
  .large-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .large-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .large-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .large-margin-collapse > .xlarge-3 {
    width: 25%; }
  .large-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .large-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .large-margin-collapse > .xlarge-6 {
    width: 50%; }
  .large-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .large-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .large-margin-collapse > .xlarge-9 {
    width: 75%; }
  .large-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .large-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .large-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media print, screen and (min-width: 64em) {
  .large-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .large-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-margin-collapse > .cell {
      margin-right: 0;
      margin-left: 0; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .small-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .small-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .small-3 {
    width: 25%; }
  .xlarge-margin-collapse > .small-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .small-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .small-6 {
    width: 50%; }
  .xlarge-margin-collapse > .small-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .small-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .small-9 {
    width: 75%; }
  .xlarge-margin-collapse > .small-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .small-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .small-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .medium-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .medium-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .medium-3 {
    width: 25%; }
  .xlarge-margin-collapse > .medium-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .medium-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .medium-6 {
    width: 50%; }
  .xlarge-margin-collapse > .medium-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .medium-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .medium-9 {
    width: 75%; }
  .xlarge-margin-collapse > .medium-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .medium-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .medium-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .large-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .large-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .large-3 {
    width: 25%; }
  .xlarge-margin-collapse > .large-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .large-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .large-6 {
    width: 50%; }
  .xlarge-margin-collapse > .large-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .large-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .large-9 {
    width: 75%; }
  .xlarge-margin-collapse > .large-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .large-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .large-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-margin-collapse > .xlarge-1 {
    width: 8.33333%; }
  .xlarge-margin-collapse > .xlarge-2 {
    width: 16.66667%; }
  .xlarge-margin-collapse > .xlarge-3 {
    width: 25%; }
  .xlarge-margin-collapse > .xlarge-4 {
    width: 33.33333%; }
  .xlarge-margin-collapse > .xlarge-5 {
    width: 41.66667%; }
  .xlarge-margin-collapse > .xlarge-6 {
    width: 50%; }
  .xlarge-margin-collapse > .xlarge-7 {
    width: 58.33333%; }
  .xlarge-margin-collapse > .xlarge-8 {
    width: 66.66667%; }
  .xlarge-margin-collapse > .xlarge-9 {
    width: 75%; }
  .xlarge-margin-collapse > .xlarge-10 {
    width: 83.33333%; }
  .xlarge-margin-collapse > .xlarge-11 {
    width: 91.66667%; }
  .xlarge-margin-collapse > .xlarge-12 {
    width: 100%; } }

@media screen and (min-width: 75em) {
  .xlarge-padding-collapse {
    margin-right: 0;
    margin-left: 0; }
    .xlarge-padding-collapse > .cell {
      padding-right: 0;
      padding-left: 0; } }

.small-offset-0 {
  margin-left: 0%; }

.grid-margin-x > .small-offset-0 {
  margin-left: calc(0% + 0.625rem); }

.small-offset-1 {
  margin-left: 8.33333%; }

.grid-margin-x > .small-offset-1 {
  margin-left: calc(8.33333% + 0.625rem); }

.small-offset-2 {
  margin-left: 16.66667%; }

.grid-margin-x > .small-offset-2 {
  margin-left: calc(16.66667% + 0.625rem); }

.small-offset-3 {
  margin-left: 25%; }

.grid-margin-x > .small-offset-3 {
  margin-left: calc(25% + 0.625rem); }

.small-offset-4 {
  margin-left: 33.33333%; }

.grid-margin-x > .small-offset-4 {
  margin-left: calc(33.33333% + 0.625rem); }

.small-offset-5 {
  margin-left: 41.66667%; }

.grid-margin-x > .small-offset-5 {
  margin-left: calc(41.66667% + 0.625rem); }

.small-offset-6 {
  margin-left: 50%; }

.grid-margin-x > .small-offset-6 {
  margin-left: calc(50% + 0.625rem); }

.small-offset-7 {
  margin-left: 58.33333%; }

.grid-margin-x > .small-offset-7 {
  margin-left: calc(58.33333% + 0.625rem); }

.small-offset-8 {
  margin-left: 66.66667%; }

.grid-margin-x > .small-offset-8 {
  margin-left: calc(66.66667% + 0.625rem); }

.small-offset-9 {
  margin-left: 75%; }

.grid-margin-x > .small-offset-9 {
  margin-left: calc(75% + 0.625rem); }

.small-offset-10 {
  margin-left: 83.33333%; }

.grid-margin-x > .small-offset-10 {
  margin-left: calc(83.33333% + 0.625rem); }

.small-offset-11 {
  margin-left: 91.66667%; }

.grid-margin-x > .small-offset-11 {
  margin-left: calc(91.66667% + 0.625rem); }

@media print, screen and (min-width: 40em) {
  .medium-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .medium-offset-0 {
    margin-left: calc(0% + 0.625rem); }
  .medium-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .medium-offset-1 {
    margin-left: calc(8.33333% + 0.625rem); }
  .medium-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .medium-offset-2 {
    margin-left: calc(16.66667% + 0.625rem); }
  .medium-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .medium-offset-3 {
    margin-left: calc(25% + 0.625rem); }
  .medium-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .medium-offset-4 {
    margin-left: calc(33.33333% + 0.625rem); }
  .medium-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .medium-offset-5 {
    margin-left: calc(41.66667% + 0.625rem); }
  .medium-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .medium-offset-6 {
    margin-left: calc(50% + 0.625rem); }
  .medium-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .medium-offset-7 {
    margin-left: calc(58.33333% + 0.625rem); }
  .medium-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .medium-offset-8 {
    margin-left: calc(66.66667% + 0.625rem); }
  .medium-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .medium-offset-9 {
    margin-left: calc(75% + 0.625rem); }
  .medium-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .medium-offset-10 {
    margin-left: calc(83.33333% + 0.625rem); }
  .medium-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .medium-offset-11 {
    margin-left: calc(91.66667% + 0.625rem); } }

@media print, screen and (min-width: 64em) {
  .large-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .large-offset-0 {
    margin-left: calc(0% + 0.625rem); }
  .large-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .large-offset-1 {
    margin-left: calc(8.33333% + 0.625rem); }
  .large-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .large-offset-2 {
    margin-left: calc(16.66667% + 0.625rem); }
  .large-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .large-offset-3 {
    margin-left: calc(25% + 0.625rem); }
  .large-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .large-offset-4 {
    margin-left: calc(33.33333% + 0.625rem); }
  .large-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .large-offset-5 {
    margin-left: calc(41.66667% + 0.625rem); }
  .large-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .large-offset-6 {
    margin-left: calc(50% + 0.625rem); }
  .large-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .large-offset-7 {
    margin-left: calc(58.33333% + 0.625rem); }
  .large-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .large-offset-8 {
    margin-left: calc(66.66667% + 0.625rem); }
  .large-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .large-offset-9 {
    margin-left: calc(75% + 0.625rem); }
  .large-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .large-offset-10 {
    margin-left: calc(83.33333% + 0.625rem); }
  .large-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .large-offset-11 {
    margin-left: calc(91.66667% + 0.625rem); } }

@media screen and (min-width: 75em) {
  .xlarge-offset-0 {
    margin-left: 0%; }
  .grid-margin-x > .xlarge-offset-0 {
    margin-left: calc(0% + 1.24687rem); }
  .xlarge-offset-1 {
    margin-left: 8.33333%; }
  .grid-margin-x > .xlarge-offset-1 {
    margin-left: calc(8.33333% + 1.24687rem); }
  .xlarge-offset-2 {
    margin-left: 16.66667%; }
  .grid-margin-x > .xlarge-offset-2 {
    margin-left: calc(16.66667% + 1.24687rem); }
  .xlarge-offset-3 {
    margin-left: 25%; }
  .grid-margin-x > .xlarge-offset-3 {
    margin-left: calc(25% + 1.24687rem); }
  .xlarge-offset-4 {
    margin-left: 33.33333%; }
  .grid-margin-x > .xlarge-offset-4 {
    margin-left: calc(33.33333% + 1.24687rem); }
  .xlarge-offset-5 {
    margin-left: 41.66667%; }
  .grid-margin-x > .xlarge-offset-5 {
    margin-left: calc(41.66667% + 1.24687rem); }
  .xlarge-offset-6 {
    margin-left: 50%; }
  .grid-margin-x > .xlarge-offset-6 {
    margin-left: calc(50% + 1.24687rem); }
  .xlarge-offset-7 {
    margin-left: 58.33333%; }
  .grid-margin-x > .xlarge-offset-7 {
    margin-left: calc(58.33333% + 1.24687rem); }
  .xlarge-offset-8 {
    margin-left: 66.66667%; }
  .grid-margin-x > .xlarge-offset-8 {
    margin-left: calc(66.66667% + 1.24687rem); }
  .xlarge-offset-9 {
    margin-left: 75%; }
  .grid-margin-x > .xlarge-offset-9 {
    margin-left: calc(75% + 1.24687rem); }
  .xlarge-offset-10 {
    margin-left: 83.33333%; }
  .grid-margin-x > .xlarge-offset-10 {
    margin-left: calc(83.33333% + 1.24687rem); }
  .xlarge-offset-11 {
    margin-left: 91.66667%; }
  .grid-margin-x > .xlarge-offset-11 {
    margin-left: calc(91.66667% + 1.24687rem); } }

.grid-y {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column nowrap;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap; }
  .grid-y > .cell {
    height: auto;
    max-height: none; }
  .grid-y > .auto {
    height: auto; }
  .grid-y > .shrink {
    height: auto; }
  .grid-y > .small-shrink, .grid-y > .small-full, .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-flex-basis: auto;
        -ms-flex-preferred-size: auto;
            flex-basis: auto; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-shrink, .grid-y > .medium-full, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-shrink, .grid-y > .large-full, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-full, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-flex-basis: auto;
          -ms-flex-preferred-size: auto;
              flex-basis: auto; } }
  .grid-y > .small-1, .grid-y > .small-2, .grid-y > .small-3, .grid-y > .small-4, .grid-y > .small-5, .grid-y > .small-6, .grid-y > .small-7, .grid-y > .small-8, .grid-y > .small-9, .grid-y > .small-10, .grid-y > .small-11, .grid-y > .small-12 {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 auto;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto; }
  .grid-y > .small-1 {
    height: 8.33333%; }
  .grid-y > .small-2 {
    height: 16.66667%; }
  .grid-y > .small-3 {
    height: 25%; }
  .grid-y > .small-4 {
    height: 33.33333%; }
  .grid-y > .small-5 {
    height: 41.66667%; }
  .grid-y > .small-6 {
    height: 50%; }
  .grid-y > .small-7 {
    height: 58.33333%; }
  .grid-y > .small-8 {
    height: 66.66667%; }
  .grid-y > .small-9 {
    height: 75%; }
  .grid-y > .small-10 {
    height: 83.33333%; }
  .grid-y > .small-11 {
    height: 91.66667%; }
  .grid-y > .small-12 {
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .grid-y > .medium-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .medium-shrink, .grid-y > .medium-1, .grid-y > .medium-2, .grid-y > .medium-3, .grid-y > .medium-4, .grid-y > .medium-5, .grid-y > .medium-6, .grid-y > .medium-7, .grid-y > .medium-8, .grid-y > .medium-9, .grid-y > .medium-10, .grid-y > .medium-11, .grid-y > .medium-12 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .medium-shrink {
      height: auto; }
    .grid-y > .medium-1 {
      height: 8.33333%; }
    .grid-y > .medium-2 {
      height: 16.66667%; }
    .grid-y > .medium-3 {
      height: 25%; }
    .grid-y > .medium-4 {
      height: 33.33333%; }
    .grid-y > .medium-5 {
      height: 41.66667%; }
    .grid-y > .medium-6 {
      height: 50%; }
    .grid-y > .medium-7 {
      height: 58.33333%; }
    .grid-y > .medium-8 {
      height: 66.66667%; }
    .grid-y > .medium-9 {
      height: 75%; }
    .grid-y > .medium-10 {
      height: 83.33333%; }
    .grid-y > .medium-11 {
      height: 91.66667%; }
    .grid-y > .medium-12 {
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .grid-y > .large-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .large-shrink, .grid-y > .large-1, .grid-y > .large-2, .grid-y > .large-3, .grid-y > .large-4, .grid-y > .large-5, .grid-y > .large-6, .grid-y > .large-7, .grid-y > .large-8, .grid-y > .large-9, .grid-y > .large-10, .grid-y > .large-11, .grid-y > .large-12 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .large-shrink {
      height: auto; }
    .grid-y > .large-1 {
      height: 8.33333%; }
    .grid-y > .large-2 {
      height: 16.66667%; }
    .grid-y > .large-3 {
      height: 25%; }
    .grid-y > .large-4 {
      height: 33.33333%; }
    .grid-y > .large-5 {
      height: 41.66667%; }
    .grid-y > .large-6 {
      height: 50%; }
    .grid-y > .large-7 {
      height: 58.33333%; }
    .grid-y > .large-8 {
      height: 66.66667%; }
    .grid-y > .large-9 {
      height: 75%; }
    .grid-y > .large-10 {
      height: 83.33333%; }
    .grid-y > .large-11 {
      height: 91.66667%; }
    .grid-y > .large-12 {
      height: 100%; } }
  @media screen and (min-width: 75em) {
    .grid-y > .xlarge-auto {
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 0px;
          -ms-flex: 1 1 0px;
              flex: 1 1 0px;
      height: auto; }
    .grid-y > .xlarge-shrink, .grid-y > .xlarge-1, .grid-y > .xlarge-2, .grid-y > .xlarge-3, .grid-y > .xlarge-4, .grid-y > .xlarge-5, .grid-y > .xlarge-6, .grid-y > .xlarge-7, .grid-y > .xlarge-8, .grid-y > .xlarge-9, .grid-y > .xlarge-10, .grid-y > .xlarge-11, .grid-y > .xlarge-12 {
      -webkit-box-flex: 0;
      -webkit-flex: 0 0 auto;
          -ms-flex: 0 0 auto;
              flex: 0 0 auto; }
    .grid-y > .xlarge-shrink {
      height: auto; }
    .grid-y > .xlarge-1 {
      height: 8.33333%; }
    .grid-y > .xlarge-2 {
      height: 16.66667%; }
    .grid-y > .xlarge-3 {
      height: 25%; }
    .grid-y > .xlarge-4 {
      height: 33.33333%; }
    .grid-y > .xlarge-5 {
      height: 41.66667%; }
    .grid-y > .xlarge-6 {
      height: 50%; }
    .grid-y > .xlarge-7 {
      height: 58.33333%; }
    .grid-y > .xlarge-8 {
      height: 66.66667%; }
    .grid-y > .xlarge-9 {
      height: 75%; }
    .grid-y > .xlarge-10 {
      height: 83.33333%; }
    .grid-y > .xlarge-11 {
      height: 91.66667%; }
    .grid-y > .xlarge-12 {
      height: 100%; } }

.grid-padding-y .grid-padding-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-y .grid-padding-y {
      margin-top: -1.24687rem;
      margin-bottom: -1.24687rem; } }

.grid-padding-y > .cell {
  padding-top: 0.625rem;
  padding-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-padding-y > .cell {
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-padding-y > .cell {
      padding-top: 0.625rem;
      padding-bottom: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-padding-y > .cell {
      padding-top: 1.24687rem;
      padding-bottom: 1.24687rem; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y {
      margin-top: -1.24687rem;
      margin-bottom: -1.24687rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2.49375rem);
      margin-top: 1.24687rem;
      margin-bottom: 1.24687rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.25rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.49375rem); } }

.grid-frame {
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100vw; }

.cell .grid-frame {
  width: 100%; }

.cell-block {
  overflow-x: auto;
  max-width: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-y {
  overflow-y: auto;
  max-height: 100%;
  min-height: 100%;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar; }

.cell-block-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  max-height: 100%; }
  .cell-block-container > .grid-x {
    max-height: 100%;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap; }

@media print, screen and (min-width: 40em) {
  .medium-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .medium-grid-frame {
    width: 100%; }
  .medium-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .medium-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .medium-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .medium-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media print, screen and (min-width: 64em) {
  .large-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .large-grid-frame {
    width: 100%; }
  .large-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .large-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .large-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .large-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

@media screen and (min-width: 75em) {
  .xlarge-grid-frame {
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    width: 100vw; }
  .cell .xlarge-grid-frame {
    width: 100%; }
  .xlarge-cell-block {
    overflow-x: auto;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; }
  .xlarge-cell-block-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    max-height: 100%; }
    .xlarge-cell-block-container > .grid-x {
      max-height: 100%;
      -webkit-flex-wrap: nowrap;
          -ms-flex-wrap: nowrap;
              flex-wrap: nowrap; }
  .xlarge-cell-block-y {
    overflow-y: auto;
    max-height: 100%;
    min-height: 100%;
    -webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar; } }

.grid-y.grid-frame {
  width: auto;
  overflow: hidden;
  position: relative;
  -webkit-flex-wrap: nowrap;
      -ms-flex-wrap: nowrap;
          flex-wrap: nowrap;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100vh; }

@media print, screen and (min-width: 40em) {
  .grid-y.medium-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media print, screen and (min-width: 64em) {
  .grid-y.large-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

@media screen and (min-width: 75em) {
  .grid-y.xlarge-grid-frame {
    width: auto;
    overflow: hidden;
    position: relative;
    -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
            flex-wrap: nowrap;
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    height: 100vh; } }

.cell .grid-y.grid-frame {
  height: 100%; }

@media print, screen and (min-width: 40em) {
  .cell .grid-y.medium-grid-frame {
    height: 100%; } }

@media print, screen and (min-width: 64em) {
  .cell .grid-y.large-grid-frame {
    height: 100%; } }

@media screen and (min-width: 75em) {
  .cell .grid-y.xlarge-grid-frame {
    height: 100%; } }

.grid-margin-y {
  margin-top: -0.625rem;
  margin-bottom: -0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y {
      margin-top: -0.625rem;
      margin-bottom: -0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y {
      margin-top: -1.24687rem;
      margin-bottom: -1.24687rem; } }
  .grid-margin-y > .cell {
    height: calc(100% - 1.25rem);
    margin-top: 0.625rem;
    margin-bottom: 0.625rem; }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .cell {
      height: calc(100% - 1.25rem);
      margin-top: 0.625rem;
      margin-bottom: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .cell {
      height: calc(100% - 2.49375rem);
      margin-top: 1.24687rem;
      margin-bottom: 1.24687rem; } }
  .grid-margin-y > .auto {
    height: auto; }
  .grid-margin-y > .shrink {
    height: auto; }
  .grid-margin-y > .small-1 {
    height: calc(8.33333% - 1.25rem); }
  .grid-margin-y > .small-2 {
    height: calc(16.66667% - 1.25rem); }
  .grid-margin-y > .small-3 {
    height: calc(25% - 1.25rem); }
  .grid-margin-y > .small-4 {
    height: calc(33.33333% - 1.25rem); }
  .grid-margin-y > .small-5 {
    height: calc(41.66667% - 1.25rem); }
  .grid-margin-y > .small-6 {
    height: calc(50% - 1.25rem); }
  .grid-margin-y > .small-7 {
    height: calc(58.33333% - 1.25rem); }
  .grid-margin-y > .small-8 {
    height: calc(66.66667% - 1.25rem); }
  .grid-margin-y > .small-9 {
    height: calc(75% - 1.25rem); }
  .grid-margin-y > .small-10 {
    height: calc(83.33333% - 1.25rem); }
  .grid-margin-y > .small-11 {
    height: calc(91.66667% - 1.25rem); }
  .grid-margin-y > .small-12 {
    height: calc(100% - 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 1.25rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 1.25rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 1.25rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 1.25rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 1.25rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 1.25rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 1.25rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 1.25rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 1.25rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 1.25rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 1.25rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 1.25rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 1.25rem); } }
  @media screen and (min-width: 75em) {
    .grid-margin-y > .auto {
      height: auto; }
    .grid-margin-y > .shrink {
      height: auto; }
    .grid-margin-y > .small-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .small-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .small-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .small-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .small-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .small-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .small-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .small-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .small-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .small-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .small-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .small-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .medium-auto {
      height: auto; }
    .grid-margin-y > .medium-shrink {
      height: auto; }
    .grid-margin-y > .medium-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .medium-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .medium-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .medium-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .medium-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .medium-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .medium-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .medium-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .medium-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .medium-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .medium-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .medium-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .large-auto {
      height: auto; }
    .grid-margin-y > .large-shrink {
      height: auto; }
    .grid-margin-y > .large-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .large-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .large-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .large-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .large-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .large-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .large-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .large-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .large-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .large-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .large-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .large-12 {
      height: calc(100% - 2.49375rem); }
    .grid-margin-y > .xlarge-auto {
      height: auto; }
    .grid-margin-y > .xlarge-shrink {
      height: auto; }
    .grid-margin-y > .xlarge-1 {
      height: calc(8.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-2 {
      height: calc(16.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-3 {
      height: calc(25% - 2.49375rem); }
    .grid-margin-y > .xlarge-4 {
      height: calc(33.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-5 {
      height: calc(41.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-6 {
      height: calc(50% - 2.49375rem); }
    .grid-margin-y > .xlarge-7 {
      height: calc(58.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-8 {
      height: calc(66.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-9 {
      height: calc(75% - 2.49375rem); }
    .grid-margin-y > .xlarge-10 {
      height: calc(83.33333% - 2.49375rem); }
    .grid-margin-y > .xlarge-11 {
      height: calc(91.66667% - 2.49375rem); }
    .grid-margin-y > .xlarge-12 {
      height: calc(100% - 2.49375rem); } }

.grid-frame.grid-margin-y {
  height: calc(100vh + 1.25rem); }
  @media print, screen and (min-width: 40em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.25rem); } }
  @media print, screen and (min-width: 64em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 1.25rem); } }
  @media screen and (min-width: 75em) {
    .grid-frame.grid-margin-y {
      height: calc(100vh + 2.49375rem); } }

@media print, screen and (min-width: 40em) {
  .grid-margin-y.medium-grid-frame {
    height: calc(100vh + 1.25rem); } }

@media print, screen and (min-width: 64em) {
  .grid-margin-y.large-grid-frame {
    height: calc(100vh + 1.25rem); } }

@media screen and (min-width: 75em) {
  .grid-margin-y.xlarge-grid-frame {
    height: calc(100vh + 2.49375rem); } }

.button {
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 1rem 0;
  padding: 0.875rem 2.5rem;
  border: 2px 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: 1rem;
  -webkit-appearance: none;
  line-height: 1;
  text-align: center;
  cursor: pointer; }
  [data-whatinput='mouse'] .button {
    outline: 0; }
  .button.tiny {
    font-size: 0.6rem; }
  .button.small {
    font-size: 0.75rem; }
  .button.large {
    font-size: 1.25rem; }
  .button.expanded {
    display: block;
    width: 100%;
    margin-right: 0;
    margin-left: 0; }
  .button, .button.disabled, .button[disabled], .button.disabled:hover, .button[disabled]:hover, .button.disabled:focus, .button[disabled]:focus {
    background-color: #EB5E94;
    color: #ffffff; }
  .button:hover, .button:focus {
    background-color: #e63277;
    color: #ffffff; }
  .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: #EB5E94;
    color: #000000; }
  .button.primary:hover, .button.primary:focus {
    background-color: #e4236d;
    color: #000000; }
  .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: #41A494;
    color: #000000; }
  .button.secondary:hover, .button.secondary:focus {
    background-color: #348376;
    color: #000000; }
  .button.gray, .button.gray.disabled, .button.gray[disabled], .button.gray.disabled:hover, .button.gray[disabled]:hover, .button.gray.disabled:focus, .button.gray[disabled]:focus {
    background-color: #f0f4f5;
    color: #000000; }
  .button.gray:hover, .button.gray:focus {
    background-color: #b6c9ce;
    color: #000000; }
  .button.white, .button.white.disabled, .button.white[disabled], .button.white.disabled:hover, .button.white[disabled]:hover, .button.white.disabled:focus, .button.white[disabled]:focus {
    background-color: #ffffff;
    color: #000000; }
  .button.white:hover, .button.white:focus {
    background-color: #cccccc;
    color: #000000; }
  .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: #000000; }
  .button.success:hover, .button.success:focus {
    background-color: #22bb5b;
    color: #000000; }
  .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: #000000; }
  .button.warning:hover, .button.warning:focus {
    background-color: #cc8b00;
    color: #000000; }
  .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: #000000; }
  .button.alert:hover, .button.alert:focus {
    background-color: #a53b2a;
    color: #000000; }
  .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 #EB5E94;
    color: #EB5E94; }
  .button.hollow:hover, .button.hollow:focus {
    border-color: #921243;
    color: #921243; }
  .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 #EB5E94;
    color: #EB5E94; }
  .button.hollow.primary:hover, .button.hollow.primary:focus {
    border-color: #921243;
    color: #921243; }
  .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 #41A494;
    color: #41A494; }
  .button.hollow.secondary:hover, .button.hollow.secondary:focus {
    border-color: #21524a;
    color: #21524a; }
  .button.hollow.gray, .button.hollow.gray.disabled, .button.hollow.gray[disabled], .button.hollow.gray.disabled:hover, .button.hollow.gray[disabled]:hover, .button.hollow.gray.disabled:focus, .button.hollow.gray[disabled]:focus {
    border: 1px solid #f0f4f5;
    color: #f0f4f5; }
  .button.hollow.gray:hover, .button.hollow.gray:focus {
    border-color: #618892;
    color: #618892; }
  .button.hollow.white, .button.hollow.white.disabled, .button.hollow.white[disabled], .button.hollow.white.disabled:hover, .button.hollow.white[disabled]:hover, .button.hollow.white.disabled:focus, .button.hollow.white[disabled]:focus {
    border: 1px solid #ffffff;
    color: #ffffff; }
  .button.hollow.white:hover, .button.hollow.white:focus {
    border-color: gray;
    color: gray; }
  .button.hollow.success, .button.hollow.success.disabled, .button.hollow.success[disabled], .button.hollow.success.disabled:hover, .button.hollow.success[disabled]:hover, .button.hollow.success.disabled:focus, .button.hollow.success[disabled]:focus {
    border: 1px solid #3adb76;
    color: #3adb76; }
  .button.hollow.success:hover, .button.hollow.success:focus {
    border-color: #157539;
    color: #157539; }
  .button.hollow.warning, .button.hollow.warning.disabled, .button.hollow.warning[disabled], .button.hollow.warning.disabled:hover, .button.hollow.warning[disabled]:hover, .button.hollow.warning.disabled:focus, .button.hollow.warning[disabled]:focus {
    border: 1px solid #ffae00;
    color: #ffae00; }
  .button.hollow.warning:hover, .button.hollow.warning:focus {
    border-color: #805700;
    color: #805700; }
  .button.hollow.alert, .button.hollow.alert.disabled, .button.hollow.alert[disabled], .button.hollow.alert.disabled:hover, .button.hollow.alert[disabled]:hover, .button.hollow.alert.disabled:focus, .button.hollow.alert[disabled]:focus {
    border: 1px solid #cc4b37;
    color: #cc4b37; }
  .button.hollow.alert:hover, .button.hollow.alert:focus {
    border-color: #67251a;
    color: #67251a; }
  .button.clear, .button.clear:hover, .button.clear:focus, .button.clear.disabled, .button.clear.disabled:hover, .button.clear.disabled:focus, .button.clear[disabled], .button.clear[disabled]:hover, .button.clear[disabled]:focus {
    border-color: transparent;
    background-color: transparent; }
  .button.clear, .button.clear.disabled, .button.clear[disabled], .button.clear.disabled:hover, .button.clear[disabled]:hover, .button.clear.disabled:focus, .button.clear[disabled]:focus {
    color: #EB5E94; }
  .button.clear:hover, .button.clear:focus {
    color: #921243; }
  .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: #EB5E94; }
  .button.clear.primary:hover, .button.clear.primary:focus {
    color: #921243; }
  .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: #41A494; }
  .button.clear.secondary:hover, .button.clear.secondary:focus {
    color: #21524a; }
  .button.clear.gray, .button.clear.gray.disabled, .button.clear.gray[disabled], .button.clear.gray.disabled:hover, .button.clear.gray[disabled]:hover, .button.clear.gray.disabled:focus, .button.clear.gray[disabled]:focus {
    color: #f0f4f5; }
  .button.clear.gray:hover, .button.clear.gray:focus {
    color: #618892; }
  .button.clear.white, .button.clear.white.disabled, .button.clear.white[disabled], .button.clear.white.disabled:hover, .button.clear.white[disabled]:hover, .button.clear.white.disabled:focus, .button.clear.white[disabled]:focus {
    color: #ffffff; }
  .button.clear.white:hover, .button.clear.white:focus {
    color: gray; }
  .button.clear.success, .button.clear.success.disabled, .button.clear.success[disabled], .button.clear.success.disabled:hover, .button.clear.success[disabled]:hover, .button.clear.success.disabled:focus, .button.clear.success[disabled]:focus {
    color: #3adb76; }
  .button.clear.success:hover, .button.clear.success:focus {
    color: #157539; }
  .button.clear.warning, .button.clear.warning.disabled, .button.clear.warning[disabled], .button.clear.warning.disabled:hover, .button.clear.warning[disabled]:hover, .button.clear.warning.disabled:focus, .button.clear.warning[disabled]:focus {
    color: #ffae00; }
  .button.clear.warning:hover, .button.clear.warning:focus {
    color: #805700; }
  .button.clear.alert, .button.clear.alert.disabled, .button.clear.alert[disabled], .button.clear.alert.disabled:hover, .button.clear.alert[disabled]:hover, .button.clear.alert.disabled:focus, .button.clear.alert[disabled]:focus {
    color: #cc4b37; }
  .button.clear.alert:hover, .button.clear.alert:focus {
    color: #67251a; }
  .button.disabled, .button[disabled] {
    opacity: 0.25;
    cursor: not-allowed; }
  .button.dropdown::after {
    display: block;
    width: 0;
    height: 0;
    border: inset 0.4em;
    content: '';
    border-bottom-width: 0;
    border-top-style: solid;
    border-color: #ffffff transparent transparent;
    position: relative;
    top: 0.4em;
    display: inline-block;
    float: right;
    margin-left: 2.5rem; }
  .button.dropdown.hollow::after, .button.dropdown.clear::after {
    border-top-color: #EB5E94; }
  .button.dropdown.hollow.primary::after, .button.dropdown.clear.primary::after {
    border-top-color: #EB5E94; }
  .button.dropdown.hollow.secondary::after, .button.dropdown.clear.secondary::after {
    border-top-color: #41A494; }
  .button.dropdown.hollow.gray::after, .button.dropdown.clear.gray::after {
    border-top-color: #f0f4f5; }
  .button.dropdown.hollow.white::after, .button.dropdown.clear.white::after {
    border-top-color: #ffffff; }
  .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; }

.callout {
  position: relative;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border: 0;
  border-radius: 0;
  background-color: white;
  color: #1a1a1a; }
  .callout > :first-child {
    margin-top: 0; }
  .callout > :last-child {
    margin-bottom: 0; }
  .callout.primary {
    background-color: #fce7ef;
    color: #1a1a1a; }
  .callout.secondary {
    background-color: #e1f3f0;
    color: #1a1a1a; }
  .callout.gray {
    background-color: #fdfdfe;
    color: #1a1a1a; }
  .callout.white {
    background-color: white;
    color: #1a1a1a; }
  .callout.success {
    background-color: #e1faea;
    color: #1a1a1a; }
  .callout.warning {
    background-color: #fff3d9;
    color: #1a1a1a; }
  .callout.alert {
    background-color: #f7e4e1;
    color: #1a1a1a; }
  .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; }

.accordion {
  margin-left: 0;
  background: #ffffff;
  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 #b8ccd1;
  border-bottom: 0;
  font-size: 0.75rem;
  line-height: 1;
  color: #000000; }
  :last-child:not(.is-active) > .accordion-title {
    border-bottom: 1px solid #b8ccd1;
    border-radius: 0 0 0 0; }
  .accordion-title:hover, .accordion-title:focus {
    background-color: transparent; }
  .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 #b8ccd1;
  border-bottom: 0;
  background-color: #ffffff;
  color: #151F35; }
  :last-child > .accordion-content:last-child {
    border-bottom: 1px solid #b8ccd1; }

.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 #f0f4f5;
  background: #ffffff;
  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: #EB5E94; }
  .tabs.primary > li > a {
    color: #000000; }
    .tabs.primary > li > a:hover, .tabs.primary > li > a:focus {
      background: #e94f8a; }

.tabs-title {
  float: left; }
  .tabs-title > a {
    display: block;
    padding: 1.25rem 1.5rem;
    font-size: 0.75rem;
    line-height: 1;
    color: #EB5E94; }
    [data-whatinput='mouse'] .tabs-title > a {
      outline: 0; }
    .tabs-title > a:hover {
      background: #ffffff;
      color: #e63579; }
    .tabs-title > a:focus, .tabs-title > a[aria-selected='true'] {
      background: #f0f4f5;
      color: #EB5E94; }

.tabs-content {
  border: 1px solid #f0f4f5;
  border-top: 0;
  background: #ffffff;
  color: #151F35;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease; }

.tabs-content.vertical {
  border: 1px solid #f0f4f5;
  border-left: 0; }

.tabs-panel {
  display: none;
  padding: 1rem; }
  .tabs-panel.is-active {
    display: block; }

html.is-reveal-open {
  position: fixed;
  width: 100%;
  overflow-y: hidden; }
  html.is-reveal-open.zf-has-scroll {
    overflow-y: scroll; }
  html.is-reveal-open body {
    overflow-y: hidden; }

.reveal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1005;
  display: none;
  background-color: rgba(0, 0, 0, 0.85);
  overflow-y: auto; }

.reveal {
  z-index: 1006;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  display: none;
  padding: 1rem;
  border: none;
  border-radius: 0;
  background-color: transparent;
  position: relative;
  top: 100px;
  margin-right: auto;
  margin-left: auto;
  overflow-y: auto; }
  [data-whatinput='mouse'] .reveal {
    outline: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      min-height: 0; } }
  .reveal .column {
    min-width: 0; }
  .reveal > :last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal {
      width: 600px;
      max-width: 101.25rem; } }
  .reveal.collapse {
    padding: 0; }
  @media print, screen and (min-width: 40em) {
    .reveal.tiny {
      width: 30%;
      max-width: 101.25rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.small {
      width: 50%;
      max-width: 101.25rem; } }
  @media print, screen and (min-width: 40em) {
    .reveal.large {
      width: 90%;
      max-width: 101.25rem; } }
  .reveal.full {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 100%;
    margin-left: 0;
    border: 0;
    border-radius: 0; }
  @media print, screen and (max-width: 39.99875em) {
    .reveal {
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      width: 100%;
      max-width: none;
      height: 100%;
      min-height: 100%;
      margin-left: 0;
      border: 0;
      border-radius: 0; } }
  .reveal.without-overlay {
    position: fixed; }

.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: 40em) {
  .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; } }

@media screen and (min-width: 75em) {
  .xlarge-order-1 {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; }
  .xlarge-order-2 {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; }
  .xlarge-order-3 {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3; }
  .xlarge-order-4 {
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
        -ms-flex-order: 4;
            order: 4; }
  .xlarge-order-5 {
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
        -ms-flex-order: 5;
            order: 5; }
  .xlarge-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: 40em) {
  .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; } }

@media screen and (min-width: 75em) {
  .xlarge-flex-container {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .xlarge-flex-child-auto {
    -webkit-box-flex: 1;
    -webkit-flex: 1 1 auto;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto; }
  .xlarge-flex-child-grow {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 auto;
        -ms-flex: 1 0 auto;
            flex: 1 0 auto; }
  .xlarge-flex-child-shrink {
    -webkit-box-flex: 0;
    -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto; }
  .xlarge-flex-dir-row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row; }
  .xlarge-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; }
  .xlarge-flex-dir-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column; }
  .xlarge-flex-dir-column-reverse {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse; } }

.hide {
  display: none !important; }

.invisible {
  visibility: hidden; }

@media print, screen and (max-width: 39.99875em) {
  .hide-for-small-only {
    display: none !important; } }

@media screen and (max-width: 0em), screen and (min-width: 40em) {
  .show-for-small-only {
    display: none !important; } }

@media print, screen and (min-width: 40em) {
  .hide-for-medium {
    display: none !important; } }

@media screen and (max-width: 39.99875em) {
  .show-for-medium {
    display: none !important; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .hide-for-medium-only {
    display: none !important; } }

@media screen and (max-width: 39.99875em), screen and (min-width: 64em) {
  .show-for-medium-only {
    display: none !important; } }

@media print, screen and (min-width: 64em) {
  .hide-for-large {
    display: none !important; } }

@media screen and (max-width: 63.99875em) {
  .show-for-large {
    display: none !important; } }

@media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
  .hide-for-large-only {
    display: none !important; } }

@media screen and (max-width: 63.99875em), screen and (min-width: 75em) {
  .show-for-large-only {
    display: none !important; } }

@media screen and (min-width: 75em) {
  .hide-for-xlarge {
    display: none !important; } }

@media screen and (max-width: 74.99875em) {
  .show-for-xlarge {
    display: none !important; } }

@media screen and (min-width: 75em) and (max-width: 89.99875em) {
  .hide-for-xlarge-only {
    display: none !important; } }

@media screen and (max-width: 74.99875em), screen and (min-width: 90em) {
  .show-for-xlarge-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; } }

iframe {
  border: 0; }

.resize-animation-stopper *:not(.cookie-banner) {
  -webkit-animation: none !important;
          animation: none !important;
  -webkit-transition: none !important;
  transition: none !important; }

::-moz-selection {
  background-color: #FDC400;
  color: #000000; }

::selection {
  background-color: #FDC400;
  color: #000000; }

body {
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 1.4s;
          animation-duration: 1.4s;
  -webkit-animation-delay: .15s;
          animation-delay: .15s;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-animation-fill-mode: backwards;
          animation-fill-mode: backwards; }

.child-no-bullet ul, .child-no-bullet ol {
  margin-left: 0;
  list-style: none; }

.child-list-simple li {
  margin-bottom: 0.9375rem; }

.child-list-simple :last-child {
  margin-bottom: 0; }

html {
  scroll-behavior: smooth; }

.arrow-list {
  list-style: none; }
  .arrow-list li {
    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; }
    .arrow-list li:not(:last-child) {
      margin-bottom: 0.938rem; }
    .arrow-list li a {
      margin: 0; }
      .arrow-list li a:hover {
        color: inherit;
        text-decoration: underline; }
    .arrow-list li::before {
      content: "";
      position: absolute;
      right: calc(100% + 0.75rem);
      top: 0;
      bottom: 0;
      margin: auto;
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/chevron-right.svg");
      background-repeat: no-repeat;
      background-position: right;
      background-size: 0.5rem;
      height: 0.5rem;
      padding: 0.5rem; }
      @media screen and (min-width: 75em) {
        .arrow-list li::before {
          height: 0.875rem;
          padding: 0.875rem;
          background-size: 0.875rem; } }

a:focus,
button:focus,
.btn:focus,
input:focus {
  outline: 2px dotted; }

a:focus {
  outline-offset: 2px;
  color: inherit; }

button:focus,
.btn:focus,
input:focus {
  outline-offset: 5px; }

.text-highlight {
  color: #EB5E94;
  display: block; }

.break-medium {
  display: inline; }
  @media print, screen and (min-width: 40em) {
    .break-medium {
      display: block; } }

.break-large {
  display: inline; }
  @media print, screen and (min-width: 64em) {
    .break-large {
      display: block; } }

.panel-m-1 {
  margin: 5rem 0; }
  @media screen and (min-width: 75em) {
    .panel-m-1 {
      margin: 6.25rem 0; } }
  @media screen and (min-width: 90em) {
    .panel-m-1 {
      margin: 8.3125rem 0; } }

.panel-p-1 {
  padding: 5rem 0; }
  @media screen and (min-width: 75em) {
    .panel-p-1 {
      padding: 6.25rem 0; } }
  @media screen and (min-width: 90em) {
    .panel-p-1 {
      padding: 8.3125rem 0; } }

.panel-m-2 {
  margin: 3.75rem 0; }
  @media screen and (min-width: 75em) {
    .panel-m-2 {
      margin: 7.25rem 0; } }

.panel-p-2 {
  padding: 3.75rem 0; }
  @media screen and (min-width: 75em) {
    .panel-p-2 {
      padding: 7.25rem 0; } }

.panel-m-small {
  margin: 3.75rem 0; }
  @media screen and (min-width: 75em) {
    .panel-m-small {
      margin: 5.3125rem 0; } }

.panel-p-small {
  padding: 3.75rem 0; }
  @media screen and (min-width: 75em) {
    .panel-p-small {
      padding: 5.3125rem 0; } }

.list-simple:last-child {
  margin-bottom: 0; }

.list-simple li {
  margin-bottom: 0.9375rem; }
  .list-simple li:last-child {
    margin-bottom: 0; }

.list-simple a {
  font-weight: bold; }

.inner {
  margin-left: auto;
  margin-right: auto;
  width: 84%;
  max-width: 101.25rem; }

[data-scroll] {
  -webkit-transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, -webkit-transform 1s;
  transition: opacity 1s, transform 1s;
  transition: opacity 1s, transform 1s, -webkit-transform 1s; }

[data-scroll="in"] {
  opacity: 1;
  -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
          transform: translateY(0); }

[data-scroll="out"] {
  opacity: 0;
  -webkit-transform: translateY(70px);
      -ms-transform: translateY(70px);
          transform: translateY(70px); }

.fade-in {
  -webkit-animation-name: fade-in;
          animation-name: fade-in;
  -webkit-animation-duration: 1.4s;
          animation-duration: 1.4s;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }

@-webkit-keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fade-in {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.fade-up {
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 1.4s;
          animation-duration: 1.4s;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }

@-webkit-keyframes fade-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(70px);
            transform: translateY(70px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes fade-up {
  from {
    opacity: 0;
    -webkit-transform: translateY(70px);
            transform: translateY(70px); }
  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

table, th, td {
  border: 1px solid #ccc;
  padding: 1rem;
  border-collapse: collapse; }

.bg-navy {
  background: #151F35 ; }

.bg-pink {
  background: #EB5E94 ; }

.bg-purple {
  background: #4C4394 ; }

.bg-red {
  background: #E64550 ; }

.bg-blue {
  background: #41A494 ; }

.bg-yellow {
  background: #FDC400 ; }

.bg-orange {
  background: #E6881E ;  }

.bg-gray {
  background: #F5F5F5 ; }

*[class*="bg-"].invert {
  color: #ffffff; }

.sr-only {
  position: absolute;
  left: -62.5rem;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

form {
  position: relative; }

input.input-large {
  letter-spacing: -0.02em;
  font-size: 1.125rem;
  padding-right: 3.125rem; }
  @media print, screen and (min-width: 64em) {
    input.input-large {
      height: 3.125rem;
      padding-left: 1.25rem;
      padding-right: 5rem; } }
  @media screen and (min-width: 90em) {
    input.input-large {
      height: 5rem;
      font-size: 1.875rem;
      padding-left: 1.875rem; } }
  @media screen and (min-width: 120em) {
    input.input-large {
      height: 6.25rem;
      font-size: 2.125rem; } }
  input.input-large::-webkit-input-placeholder {
    color: #151F35; }
  input.input-large::-moz-placeholder {
    color: #151F35; }
  input.input-large:-ms-input-placeholder {
    color: #151F35; }
  input.input-large::-ms-input-placeholder {
    color: #151F35; }
  input.input-large::placeholder {
    color: #151F35; }

input {
  height: 3.625rem;
  letter-spacing: -0.02em; }

input.no-border {
  border-color: transparent; }

.fieldset {
  border: 0;
  padding: 0;
  margin: 0; }

[type="checkbox"] + label {
  font-weight: bold; }

[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px; }

[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  padding-left: 1.875rem;
  cursor: pointer; }

[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 1rem;
  height: 1rem;
  border: 1px solid #4A4A4A;
  background-color: #ffffff; }

[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 1rem;
  height: 1rem;
  border: 1px solid #41A494;
  background-color: #41A494; }

[type="checkbox"]:not(:checked) + label:after {
  opacity: 0; }

[type="checkbox"]:checked + label:after {
  opacity: 1; }

[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
  border: 1px solid rgba(74, 74, 74, 0.5);
  background-color: rgba(255, 255, 255, 0.5); }

[type="checkbox"]:disabled:checked + label:after {
  background-color: #ccc; }

[type="checkbox"]:disabled + label {
  color: #aaa; }

[type="checkbox"]:checked:focus + label:before,
[type="checkbox"]:not(:checked):focus + label:before {
  border: 2px solid #000000; }

h2, .h2 {
  font-size: 1.125rem; }
  @media screen and (min-width: 75em) {
    h2, .h2 {
      font-size: 2rem; } }

h3, .h3 {
  font-size: 1rem; }
  @media screen and (min-width: 75em) {
    h3, .h3 {
      font-size: 1.875rem; } }

h4, .h4 {
  font-size: 1rem; }
  @media screen and (min-width: 75em) {
    h4, .h4 {
      font-size: 1.75rem; } }

h5, .h5 {
  font-size: 0.875rem; }
  @media screen and (min-width: 75em) {
    h5, .h5 {
      font-size: 1.5625rem; } }

h6, .h6 {
  font-size: 0.75rem; }

.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  letter-spacing: -0.02em;
  line-height: 100%;
  font-weight: 700; }

@media screen and (min-width: 120em) {
  main p, main ul {
    font-size: 1.25rem; } }

p, .p {
  font-size: 0.875rem; }
  @media print, screen and (min-width: 40em) {
    p, .p {
      font-size: 1rem; } }
  p a, .p a {
    font-weight: bold; }

.text-body {
  font-size: 1rem;
  color: #151F35;
  text-transform: none; }
  @media screen and (min-width: 120em) {
    .text-body {
      font-size: 1.25rem; } }

p.text-large {
  font-size: 1.125rem;
  letter-spacing: -0.02em; }
  @media print, screen and (min-width: 40em) {
    p.text-large {
      font-size: 1.25rem; } }
  @media screen and (min-width: 90em) {
    p.text-large {
      font-size: 1.375rem; } }
  @media screen and (min-width: 120em) {
    p.text-large {
      font-size: 1.75rem; } }

p + h2,
p + h3,
p + h4,
p + h5,
p + h6 {
  margin-top: 2.5rem; }
  @media screen and (min-width: 75em) {
    p + h2,
    p + h3,
    p + h4,
    p + h5,
    p + h6 {
      margin-top: 3.75rem; } }

.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6 {
  letter-spacing: -0.04em;
  line-height: 1;
  font-weight: 400; }

.display-1 {
  font-size: 3.75rem; }
  @media print, screen and (min-width: 40em) {
    .display-1 {
      font-size: 4.25rem; } }
  @media screen and (min-width: 90em) {
    .display-1 {
      font-size: 7.5rem; } }
  @media screen and (min-width: 120em) {
    .display-1 {
      font-size: 8.125rem; } }

.display-2 {
  font-size: 3.125rem;
  letter-spacing: -0.04em; }
  @media print, screen and (min-width: 40em) {
    .display-2 {
      font-size: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .display-2 {
      font-size: 5.625rem; } }
  @media screen and (min-width: 120em) {
    .display-2 {
      font-size: 6.25rem; } }

.display-3 {
  font-size: 2.5rem;
  line-height: 113.1%;
  letter-spacing: -0.03em; }
  @media print, screen and (min-width: 40em) {
    .display-3 {
      font-size: 3.125rem; } }
  @media screen and (min-width: 75em) {
    .display-3 {
      font-size: 3.75rem; } }
  @media screen and (min-width: 90em) {
    .display-3 {
      font-size: 5rem; } }
  @media screen and (min-width: 120em) {
    .display-3 {
      font-size: 5.625rem; } }

.display-4 {
  font-size: 2.125rem;
  line-height: 87.6%; }
  @media print, screen and (min-width: 40em) {
    .display-4 {
      font-size: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .display-4 {
      font-size: 3.375rem; } }
  @media screen and (min-width: 90em) {
    .display-4 {
      font-size: 4.625rem; } }

.display-5 {
  font-size: 1.75rem; }
  @media print, screen and (min-width: 40em) {
    .display-5 {
      font-size: 2.125rem; } }
  @media screen and (min-width: 75em) {
    .display-5 {
      font-size: 3.625rem; } }

.display-6 {
  font-size: 1.375rem; }
  @media print, screen and (min-width: 40em) {
    .display-6 {
      font-size: 1.75rem; } }
  @media screen and (min-width: 75em) {
    .display-6 {
      font-size: 3.375rem; } }

.intro {
  font-size: 1.625rem;
  letter-spacing: -0.03em;
  line-height: 118.7%;
  font-weight: 600;
  font-family: "degular"; }
  .intro:last-child {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .intro {
      font-size: 2rem; } }
  @media screen and (min-width: 75em) {
    .intro {
      font-size: 2.5rem;
      /*max-width: 52.125rem;*/
      margin: auto; 
      padding-bottom:2.5rem; } }

.title-animate .word {
  display: inline-block; }

.date {
  margin-bottom: 1.25rem;
  font-weight: bold;
  color: #EB5E94;
  display: block; }

blockquote {
  margin: 0;
  padding: 0;
  border-left: 0; }
  blockquote p {
    font-weight: bold; }
  blockquote cite {
    display: inline-block;
    font-style: normal; }
    blockquote cite:before {
      content: none; }

@media print, screen and (min-width: 40em) {
  .meta-text {
    font-size: 1.25rem;
    line-height: 1.28;
    letter-spacing: -0.04em; } }

@media screen and (min-width: 75em) {
  .meta-text {
    font-size: 1.375rem; } }

@media screen and (min-width: 90em) {
  .meta-text {
    font-size: 1.5625rem; } }

@media screen and (min-width: 120em) {
  .meta-text {
    font-size: 1.875rem; } }

.banner {
  position: relative;
  z-index: 3;
  background-color: #ffffff; }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-navy {
      background-color: #151F35; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-pink {
      background-color: #EB5E94; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-purple {
      background-color: #4C4394; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-red {
      background-color: #E64550; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-blue {
      background-color: #41A494; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner.bg-yellow {
      background-color: #FDC400; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'] .search-toggle {
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-white.svg"); } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'] .menu-toggle::before, .banner[class*='bg-'] .menu-toggle::after {
      background-color: #ffffff; }
    .banner[class*='bg-'] .menu-toggle span::before, .banner[class*='bg-'] .menu-toggle span::after {
      background-color: #ffffff; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'].search-open .menu-toggle::before, .banner[class*='bg-'].search-open .menu-toggle::after {
      background-color: #000000; }
    .banner[class*='bg-'].search-open .menu-toggle span::before, .banner[class*='bg-'].search-open .menu-toggle span::after {
      background-color: #000000; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'].search-open .search-toggle {
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'].menu-open .menu-toggle::before, .banner[class*='bg-'].menu-open .menu-toggle::after {
      background-color: #000000; }
    .banner[class*='bg-'].menu-open .menu-toggle span::before, .banner[class*='bg-'].menu-open .menu-toggle span::after {
      background-color: #000000; } }
  @media print, screen and (max-width: 63.99875em) {
    .banner[class*='bg-'].menu-open .search-toggle {
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); } }
  @media print, screen and (max-width: 89.99875em) {
    .banner {
      padding: 1.25rem 0;
      min-height: 4.125rem; } }
  @media screen and (min-width: 75em) {
    .banner {
      padding: 2.875rem 0;
      padding-bottom: 0; }
      .banner::before, .banner::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; }
      .banner::after {
        clear: both; } }
  .banner.is-white {
    position: absolute;
    width: 100%;
    background-color: transparent;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(14.06%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 14.06%, rgba(0, 0, 0, 0) 100%); }
    @media screen and (min-width: 75em) {
      .banner.is-white {
        color: #ffffff; } }
  .banner__inner {
    max-width: none; }
    @media screen and (min-width: 75em) {
      .banner__inner::before, .banner__inner::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; }
      .banner__inner::after {
        clear: both; } }
 .banner__logo {
    display: block;
    position: absolute;
    top: 0;
    width: 45%;
    max-width: 200px;
    z-index: 2;
    color: #151F35; }
    @media print, screen and (min-width: 40em) {
      .banner__logo {
        width: 25%;
        max-width: 180px; } }
    @media print, screen and (min-width: 64em) {
      .banner__logo {
        width: 50%;
        max-width: 313px; } }
    @media screen and (min-width: 75em) {
      .banner__logo {
        margin-bottom: calc(-5.5rem - 3px);
        float: left;
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content; } }
    @media screen and (min-width: 90em) {
      .banner__logo {
        width: 22vw;
        max-width: none; } }
    @media (min-width: 1919px) {
      .banner__logo {
        width: 18vw; } }
    .banner__logo:focus {
      color: inherit; }
    .is-white .banner__logo span {
      color: #ffffff; }
    .is-white .banner__logo {
      color: #ffffff; }
  @media print, screen and (max-width: 74.99875em) {
    .banner__links {
      margin: 0 auto 2.5rem;
      width: 84%; } }
  @media screen and (min-width: 75em) {
    .banner__links {
      position: absolute;
      right: 0;
      top: 0;
      padding: 0.3125rem 8% 0.4375rem 1.8125rem;
      background: #101010; }
      .is-white .banner__links {
        background: #ffffff; } }
  .banner__links ul {
    margin: 0; }
    .banner__links ul li {
      display: inline-block;
      margin-right: 1.25rem; }
      @media screen and (min-width: 75em) {
        .banner__links ul li {
          margin: 0 1.25rem 0 0; } }
      .banner__links ul li:last-child {
        margin-right: 0; }
  .banner__links a {
    text-transform: uppercase;
    font-size: 0.6875rem;
    line-height: 1.3;
    font-weight: bold;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    @media screen and (min-width: 75em) {
      .banner__links a {
        color: #151F35;
        font-size: 0.875rem;
        font-weight: 700;
        font-family: "degular";
        text-transform: capitalize;
        letter-spacing: -0.01em;
        color: #ffffff; }
        .banner__links a:hover {
          color: #ffffff;
          text-decoration: underline;
          text-underline-offset: 2px; }
        .is-white .banner__links a {
          color: #151F35; }
          .is-white .banner__links a:hover {
            color: #348378;
            text-decoration: none; } }
  @media print, screen and (max-width: 74.99875em) {
    .banner__menu {
      position: fixed;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%;
      padding: 7.1875rem 0 1.25rem;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      overflow: scroll;
      background-color: #ffffff;
      z-index: 1;
      -webkit-transform: translateY(-100%);
          -ms-transform: translateY(-100%);
              transform: translateY(-100%);
      -webkit-transition: -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1);
      transition: -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1);
      transition: transform 1.3s cubic-bezier(1, 0, 0, 1);
      transition: transform 1.3s cubic-bezier(1, 0, 0, 1), -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1); }
      .banner__menu.is-active {
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0); } }
  @media print, screen and (min-width: 64em) and (max-width: 74.99875em) {
    .banner__menu {
      width: 50%;
      -webkit-box-shadow: -30px 34px 0px rgba(0, 0, 0, 0.25);
              box-shadow: -30px 34px 0px rgba(0, 0, 0, 0.25);
      -webkit-transform: translateX(120%);
          -ms-transform: translateX(120%);
              transform: translateX(120%);
      -webkit-transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: transform 1s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 1s cubic-bezier(0.645, 0.045, 0.355, 1); } }
  @media screen and (min-width: 75em) {
    .banner__menu {
      float: right; } }
  .banner__search {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: #ffffff; }
    @media print, screen and (max-width: 74.99875em) {
      .banner__search {
        -webkit-transform: translateY(-100%);
            -ms-transform: translateY(-100%);
                transform: translateY(-100%);
        -webkit-transition: -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1);
        transition: -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1);
        transition: transform 1.3s cubic-bezier(1, 0, 0, 1);
        transition: transform 1.3s cubic-bezier(1, 0, 0, 1), -webkit-transform 1.3s cubic-bezier(1, 0, 0, 1); }
        .banner__search.is-active {
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0); } }
    @media screen and (min-width: 75em) {
      .banner__search {
        opacity: 0;
        -webkit-transform: translateY(-200%);
            -ms-transform: translateY(-200%);
                transform: translateY(-200%);
        -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s, -webkit-transform 0s 0.25s; }
        .banner__search.is-active {
          opacity: 1;
          -webkit-transform: translateY(0);
              -ms-transform: translateY(0);
                  transform: translateY(0);
          -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
          transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
          transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s;
          transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s, -webkit-transform 0s; } }

.content-w-sidebar {
  margin: 4.375rem 0; }

.site-footer {
  background-color: #ffffff; }
  .site-footer__nav {
    padding: 3.75rem 0;
    background-color: #F0F4F5; }
    @media screen and (min-width: 75em) {
      .site-footer__nav {
        padding: 7.3125rem 0; } }
    .site-footer__nav ul {
      margin-bottom: 2.5rem; }
      @media print, screen and (min-width: 64em) {
        .site-footer__nav ul {
          margin-bottom: 0; } }
  .site-footer h2 {
    font-size: 1.3125rem;
    margin-bottom: 1.25rem;
    line-height: 1.75rem;
    letter-spacing: -0.03em;
    font-family: "degular";
    font-weight: 700;
    color: #000000; }
  @media screen and (min-width: 120em) {
    .site-footer p {
      font-size: 1rem; } }
  .site-footer a {
    color: #2E2E2E;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    font-family: "degular"; }
    .site-footer a:hover {
      color: #41A494; }
  .site-footer__accreditations {
    padding: 2.5rem 0; }
    @media print, screen and (min-width: 64em) {
      .site-footer__accreditations {
        padding: 3.75rem 0 2.5rem; } }
  .site-footer__links {
    padding: 0 0 3.125rem; }
    .site-footer__links ul {
      font-size: 0.6875rem;
      margin-bottom: 0; }
      .site-footer__links ul li {
        margin-bottom: 0.625rem; }
        @media print, screen and (min-width: 40em) {
          .site-footer__links ul li {
            display: inline-block;
            margin: 0 1.875rem 0.625rem 0; } }
        .site-footer__links ul li:last-child {
          margin-right: 0; }

.noticeStyle {
  margin-bottom: auto !important; }

.accordion-title {
  text-transform: capitalize;
  font-weight: bold;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  font-family: "degular";
  border-bottom: 1px solid #b8ccd1; }
  .accordion-title:before {
    color: #EB5E94;
    font-weight: 400; }
    @media print, screen and (max-width: 39.99875em) {
      .accordion-title:before {
        font-size: 1.125rem;
        top: calc(50% - 2.5px); } }
    @media print, screen and (min-width: 64em) {
      .accordion-title:before {
        font-size: 2.5rem;
        margin-top: -1.25rem; } }
  @media print, screen and (min-width: 40em) {
    .accordion-title {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .accordion-title {
      font-size: 1.5625rem;
      padding: 1.5625rem 2.5rem; } }

.accordion-content {
  padding-top: 1.875rem;
  padding-bottom: 1.875rem;
  border-left: 0;
  border-right: 0;
  border-top: 0;
  border-bottom: 1px solid #b8ccd1;
  word-break: break-word; }
  @media print, screen and (min-width: 64em) {
    .accordion-content {
      padding-left: 2.5rem;
      padding-right: 2.5rem; } }
  .accordion-content p:last-child {
    margin-bottom: 0; }
  .accordion-content ul li {
    margin-bottom: 0.9375rem; }
    .accordion-content ul li a {
      color: #000000; }
      .accordion-content ul li a:hover {
        color: #EB5E94; }

@media screen and (min-width: 75em) {
  .accordion-block {
    margin-top: 12.4375rem; } }

.accreditations {
  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: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start; }
  @media print, screen and (min-width: 64em) {
    .accreditations {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between;
      margin: 0 -0.625rem; } }
  .accreditations > * {
    width: 50%;
    padding: 10px; }
    @media screen and (min-width: 28.75em) {
      .accreditations > * {
        width: 20%; } }
    @media print, screen and (min-width: 64em) {
      .accreditations > * {
        width: 10%; } }

.announcements {
  position: relative;
  overflow: hidden; }
  @media print, screen and (min-width: 64em) {
    .announcements {
      padding-top: 3.75rem; }
      .announcements:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 8%;
        height: 100%;
        background-color: #f0f4f5; } }
  @media screen and (min-width: 120em) {
    .announcements {
      padding-top: 5.625rem; } }
  .announcements__inner {
    max-width: 1620px; }
  @media print, screen and (min-width: 64em) {
    .announcements__list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }
  @media print, screen and (max-width: 39.99875em) {
    .announcements__image {
      width: 83.33333%; } }
  .announcements__image img {
    position: relative; }
  .announcements__image + .announcements__text {
    margin-top: 2.1875rem; }
  .announcements__title {
    max-width: 30.625rem;
    margin-bottom: 0.9375rem;
    font-size: 1.5rem;
    color: #000000; }
    @media screen and (min-width: 90em) {
      .announcements__title {
        font-size: 1.875rem; } }
    @media screen and (min-width: 120em) {
      .announcements__title {
        font-size: 2.375rem; } }
  .announcements__text > * {
    position: relative; }
  .announcements__text p {
    max-width: 31.25rem; }
  .announcements__card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-align-content: flex-start;
        -ms-flex-line-pack: start;
            align-content: flex-start;
    margin-right: 2.5rem; }
    .announcements__card > * {
      -webkit-box-flex: 1;
      -webkit-flex: 1 100%;
          -ms-flex: 1 100%;
              flex: 1 100%; }
    @media print, screen and (min-width: 64em) {
      .announcements__card {
        width: 33.33333%;
        margin-right: 0; }
        .announcements__card--flipped {
          width: 41.66667%; }
        .announcements__card--block {
          width: 25%; } }
  @media print, screen and (min-width: 64em) {
    .announcements__card:nth-of-type(1) .announcements__text:before {
      content: "";
      display: block;
      position: absolute;
      left: -100%;
      right: -100%;
      height: 100%;
      margin-top: -2.1875rem;
      background-color: #ffffff; } }
  @media print, screen and (min-width: 64em) {
    .announcements__card:nth-of-type(1) .announcements__text {
      padding-right: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .announcements__card:nth-of-type(1) .announcements__text {
      padding-right: 4.375rem; } }
  @media screen and (min-width: 120em) {
    .announcements__card:nth-of-type(1) .announcements__text {
      padding-right: 6.25rem; } }
  @media print, screen and (min-width: 64em) {
    .announcements__card:nth-of-type(1) .announcements__image {
      margin-left: -28.57143%;
      padding-right: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .announcements__card:nth-of-type(1) .announcements__image {
      padding-right: 4.375rem; } }
  @media screen and (min-width: 120em) {
    .announcements__card:nth-of-type(1) .announcements__image {
      padding-right: 6.25rem; } }
  @media print, screen and (min-width: 64em) {
    .announcements__card--flipped .announcements__text {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1;
      padding-right: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .announcements__card--flipped .announcements__text {
      padding-right: 4.375rem; } }
  @media screen and (min-width: 120em) {
    .announcements__card--flipped .announcements__text {
      padding-right: 6.25rem; } }
  @media print, screen and (min-width: 64em) {
    .announcements__card--flipped .announcements__image {
      position: relative;
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
      margin-top: 2.5rem;
      padding-bottom: 20px; }
      .announcements__card--flipped .announcements__image:after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 70%;
        height: 1.25rem;
        background-color: #41A494; } }
  .announcements__card--block .announcements__text {
    position: relative;
    padding: 1.875rem;
    background-color: #EB5E94; }
    @media print, screen and (min-width: 64em) {
      .announcements__card--block .announcements__text {
        margin-top: -3.75rem;
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start; }
        .announcements__card--block .announcements__text:before {
          content: "";
          display: block;
          position: absolute;
          top: 0;
          left: 0;
          right: -16.875rem;
          height: 100%;
          background-color: #EB5E94; } }
    @media screen and (min-width: 120em) {
      .announcements__card--block .announcements__text {
        margin-top: -5.625rem; } }
    @media screen and (min-width: 90em) {
      .announcements__card--block .announcements__text {
        padding: 3.75rem 3.125rem; } }
    @media screen and (min-width: 120em) {
      .announcements__card--block .announcements__text {
        padding: 5rem 5rem; } }
  .announcements__card--block .announcements__title {
    color: #ffffff; }
  .announcements .slick-list {
    overflow: visible; }
  .announcements .slick-initialized .slick-slide {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }

.az {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: -0.5rem;
  list-style: none; }
  @media print, screen and (max-width: 39.99875em) {
    .az {
      display: none; } }
  @media print, screen and (max-width: 39.99875em) {
    .az.is-active {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-top: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .az {
      margin: -0.9375rem; } }
  .az li {
    margin: 0.5rem; }
    @media screen and (min-width: 75em) {
      .az li {
        margin: 0.9375rem; } }
    .az li a {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-content: center;
          -ms-flex-line-pack: center;
              align-content: center;
      -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;
      margin-bottom: 0;
      width: 4.0625rem;
      height: 4.0625rem; }
      @media screen and (min-width: 120em) {
        .az li a {
          width: 5.9375rem;
          height: 5.9375rem; } }

.block {
  position: relative;
  text-align: center;
  padding: 2.5rem 1.875rem; }
  @media print, screen and (max-width: 63.99875em) {
    .block:first-child {
      padding-top: 0; }
    .block:after {
      content: "";
      position: absolute;
      left: 60px;
      right: 60px;
      bottom: 0;
      height: 1px;
      background-color: #b8ccd1; } }
  @media print, screen and (min-width: 64em) {
    .block {
      padding: 2.5rem 1.875rem;
      -webkit-align-self: stretch;
          -ms-flex-item-align: stretch;
              align-self: stretch;
      text-align: left;
      background-color: #EB5E94; }
      .block:nth-last-child(-n+3) {
        margin-bottom: 0; } }
  @media screen and (min-width: 90em) {
    .block {
      padding: 4.375rem 3.125rem; } }
  .block h3 {
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .block h3 {
        font-size: 1.875rem; } }
    @media print, screen and (min-width: 64em) {
      .block h3 {
        color: #ffffff; } }
    @media screen and (min-width: 75em) {
      .block h3 {
        font-size: 1.875rem; } }
    @media screen and (min-width: 120em) {
      .block h3 {
        font-size: 2.25rem; } }
  @media print, screen and (min-width: 64em) {
    .block p {
      color: #ffffff; } }
  .block p:last-child {
    margin-bottom: 0; }

.block-list {
  margin-bottom: -1.25rem; }
  @media screen and (min-width: 90em) {
    .block-list {
      margin-bottom: -2.5rem; } }
  .block-list__item {
    margin-bottom: 1.25rem; }
    @media screen and (min-width: 90em) {
      .block-list__item {
        margin-bottom: 2.5rem; } }
  .block-list a {
    display: block; }
    @media print, screen and (min-width: 40em) {
      .block-list a {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; } }
    .block-list a:hover h3 {
      color: #EB5E94; }
  .block-list h3 {
    color: #000000;
    margin-bottom: 0;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
    @media print, screen and (min-width: 40em) {
      .block-list h3 {
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                align-self: center; } }
  .block-list img {
    max-width: 6.5rem;
    margin-bottom: 0.625rem; }
    @media print, screen and (min-width: 40em) {
      .block-list img {
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start;
        margin-right: 1.25rem; } }

.breadcrumb {
  position: relative;
  z-index: 3; }
  .breadcrumb.is-white {
    color: #ffffff; }
  .breadcrumb.is-white a {
    color: #ffffff;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    .breadcrumb.is-white a:before {
      background-color: #ffffff; }
  .breadcrumb {
    margin: 0;
    font-size: 0.75rem;
    font-weight: bold;
    color: #000000; }
    .theme-pink .breadcrumb {
      background-color: #EB5E94; }
    .breadcrumb a:focus {
      outline: 2px dotted; }
    .breadcrumb a {
      display: inline-block;
      position: relative;
      color: #000000;
      -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      overflow: hidden; }
      .breadcrumb a:focus {
        outline: 2px dotted; }
      .breadcrumb a:after {
        content: ">";
        display: inline-block;
        margin: 0 0.375rem 0 0.5rem; }
      .breadcrumb a:last-child:after {
        content: ""; }
      .breadcrumb a:before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        right: 1.25rem;
        height: 1px;
        background-color: #EB5E94;
        -webkit-transform: translateX(-110%);
            -ms-transform: translateX(-110%);
                transform: translateX(-110%);
        -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
        transition: -webkit-transform 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
        transition: transform 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
        transition: transform 0.25s cubic-bezier(0.645, 0.045, 0.355, 1), -webkit-transform 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
      .breadcrumb a:hover:before {
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0); }

.button-link-group > * {
  margin: 0.375rem 1.875rem 0.375rem 0; }
  .button-link-group > *:last-child {
    margin-right: 0; }

.button,
.button-link {
  font-weight: bold;
  letter-spacing: -0.01em;
  font-family: 'DM Sans';
  text-transform: capitalize;
  -webkit-filter: contrast(1);
          filter: contrast(1); }

.button-link {
  position: relative;
  display: inline-block;
  overflow: hidden;
  text-transform: inherit;
  letter-spacing: -0.01em; }
  .button-link:after {
    content: "";
    width: 100%;
    height: 2px;
    display: block;
    background-color: #41A494;
    -webkit-transform: translateX(-110%);
        -ms-transform: translateX(-110%);
            transform: translateX(-110%);
    -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
  .button-link:hover, .button-link:focus {
    color: inherit; }
    .button-link:hover:after, .button-link:focus:after {
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0); }
  .button-link.white {
    color: #ffffff; }
    .button-link.white:after {
      background-color: #FDC400; }

.button.small {
  text-transform: none; }
  @media screen and (min-width: 75em) {
    .button.small {
      font-size: 0.875rem; } }

button.button-link {
  color: #EB5E94;
  cursor: pointer; }

.search-button {
  position: absolute;
  top: 0;
  right: 0;
  width: 2.5rem;
  height: 100%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  padding: 0;
  background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-purple.svg");
  background-repeat: no-repeat;
  background-position: center right 1.25rem;
  background-size: 1.125rem; }

.search-button-large {
  position: absolute;
  top: 0;
  right: 0.625rem;
  width: 2.5rem;
  height: 100%;
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  padding: 0;
  background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-purple.svg");
  background-repeat: no-repeat;
  background-position: center right; }
  @media print, screen and (max-width: 63.99875em) {
    .search-button-large {
      background-size: 1.6875rem; } }
  @media print, screen and (min-width: 64em) {
    .search-button-large {
      right: 1.25rem; } }
  @media screen and (min-width: 120em) {
    .search-button-large {
      width: 2.8125rem;
      background-size: 2.625rem; } }

.masthead-button {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #ffffff;
  padding: 1.5rem;
  -webkit-transform: translateY(50%);
      -ms-transform: translateY(50%);
          transform: translateY(50%);
  font-size: 1.5rem;
  line-height: 0.94;
  letter-spacing: -0.03em;
  background-color: #EB5E94; }
  .masthead-button:hover, .masthead-button:focus {
    color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    .masthead-button {
      width: 100%; } }
  @media print, screen and (min-width: 40em) {
    .masthead-button {
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0);
      font-size: 1.875rem;
      width: 11.25rem;
      height: 11.25rem;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      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; }
      .masthead-button:after {
        content: "";
        position: absolute;
        bottom: 0.9375rem;
        right: 0.9375rem;
        width: 1.5rem;
        height: 1.25rem;
        display: block;
        background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right-white.svg");
        background-repeat: no-repeat;
        background-size: 1.5rem;
        opacity: 0;
        -webkit-transform: translateX(-50px);
            -ms-transform: translateX(-50px);
                transform: translateX(-50px);
        -webkit-transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      .masthead-button:hover:after {
        opacity: 1;
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0); } }
  @media screen and (min-width: 75em) {
    .masthead-button {
      right: 8%;
      bottom: 6.25rem;
      width: 13.125rem;
      height: 13.125rem;
      font-size: 2.375rem; } }
  @media screen and (min-width: 90em) {
    .masthead-button {
      width: 15.625rem;
      height: 15.625rem;
      font-size: 2.75rem; } }

.button.hollow.white.negative:hover, .button.hollow.white.negative:focus {
  background-color: #ffffff;
  border-color: #ffffff;
  color: #000000; }

.remove:after {
  content: "x";
  margin-left: 0.5rem; }

.close-button {
  width: 40px;
  height: 40px; }
  .close-button:before, .close-button:after {
    content: "";
    position: absolute;
    right: 0;
    width: 1.875rem;
    height: 0.125rem;
    background-color: #151F35; }
  .close-button:before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: 1.25rem; }
  .close-button:after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg); }
  .close-button.white:before, .close-button.white:after {
    background-color: #ffffff; }

.callout {
  margin-bottom: 0;
  padding-left: 3.125rem;
  padding-right: 3.125rem;
  z-index: 1; }
  .callout.primary {
    color: #ffffff;
    background-color: #EB5E94; }
    .callout.primary .close-button:before, .callout.primary .close-button:after {
      background-color: #ffffff; }
  .callout .button-link {
    margin-bottom: -0.625rem; }
  .callout a:only-child {
    display: block; }
  .callout p + a {
    margin-top: -1.25rem; }

.content-cols {
  background-color: #f0f4f5; }
  .content-cols:nth-child(odd) {
    background-color: #ffffff; }
  .content-cols .grid-x > .cell:last-child {
    margin-bottom: 0; }
  @media screen and (min-width: 75em) {
    .content-cols .grid-x {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  .content-cols .cell {
    margin-bottom: 3.75rem; }
    @media screen and (min-width: 75em) {
      .content-cols .cell {
        margin-bottom: 0; }
        .content-cols .cell.xlarge-6 p {
          max-width: 34.5rem; } }
  .content-cols p {
    line-height: 150.7%;
    color: #2E2E2E; }
    @media screen and (min-width: 75em) {
      .content-cols p {
        font-size: 1rem; } }
  .content-cols p:last-child {
    margin-bottom: 0; }
  .content-cols .h2 {
    margin-bottom: 1.25rem;
    text-transform: capitalize;
    letter-spacing: 0; }
    @media print, screen and (min-width: 40em) {
      .content-cols .h2 {
        font-size: 2rem; } }
  .content-cols ul.no-bullet {
    margin-bottom: 0; }
    .content-cols ul.no-bullet + * {
      margin-top: 1.875rem; }
      @media screen and (min-width: 75em) {
        .content-cols ul.no-bullet + * {
          margin-top: 3.75rem; } }
    .content-cols ul.no-bullet li {
      font-weight: 600;
      letter-spacing: -0.04em;
      line-height: 150%;
      font-size: 0.75rem; }
      .content-cols ul.no-bullet li:not(:last-child) {
        margin-bottom: 1rem; }
      @media screen and (min-width: 75em) {
        .content-cols ul.no-bullet li {
          font-size: 1rem; } }
  @media print, screen and (min-width: 40em) {
    .content-cols__main > * {
      margin-right: 1.875rem; } }

.cookie-banner {
  position: fixed;
  display: none;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -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;
  width: 100%;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  z-index: 3;
  background-color: #f0f4f5;
  -webkit-animation-name: fade-up;
          animation-name: fade-up;
  -webkit-animation-duration: 1.4s;
          animation-duration: 1.4s;
  -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
          animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
  -webkit-animation-fill-mode: backwards;
          animation-fill-mode: backwards; }
  .cookie-banner.is-active {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .cookie-banner .button {
    margin-bottom: 0;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0; }
  .cookie-banner p {
    margin-bottom: 0;
    margin-right: 0.9375rem; }
    .cookie-banner p a {
      color: #41A494; }

.cluster-image {
  position: relative;
  padding: 5% 0 22% 0; }
  .cluster-image::before, .cluster-image::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; }
  .cluster-image::after {
    clear: both; }
  .cluster-image > * {
    position: absolute; }
    .cluster-image > *:nth-of-type(1) {
      position: relative;
      width: 70%;
      margin-right: 10%;
      float: right;
      border-bottom: 20px solid #41A494; }
    .cluster-image > *:nth-of-type(2) {
      width: 20%;
      top: 0;
      right: 0; }
    .cluster-image > *:nth-of-type(3) {
      width: 33%;
      top: 18%;
      left: 0; }
    .cluster-image > *:nth-of-type(4) {
      width: 44%;
      right: 0;
      bottom: 0; }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .cluster-image-text__inner::before, .cluster-image-text__inner::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; }
  .cluster-image-text__inner::after {
    clear: both; } }

@media print, screen and (min-width: 64em) {
  .cluster-image-text__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; } }

@media print, screen and (min-width: 40em) {
  .cluster-image-text__image {
    width: 66.66667%; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .cluster-image-text__image {
    float: right;
    clear: both;
    margin-bottom: -6.25rem; } }

@media print, screen and (min-width: 64em) {
  .cluster-image-text__image {
    width: 58.33333%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-right: 1.875rem; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .cluster-image-text__text {
    clear: both; } }

@media print, screen and (min-width: 40em) {
  .cluster-image-text__text {
    width: 58.33333%; } }

@media print, screen and (min-width: 64em) {
  .cluster-image-text__text {
    -webkit-align-self: center;
        -ms-flex-item-align: center;
            align-self: center;
    width: 41.66667%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 2.5rem; } }

.cluster-image-text__text p {
  max-width: 25rem; }
  @media screen and (min-width: 120em) {
    .cluster-image-text__text p {
      max-width: 31.25rem; } }

.content-card {
  display: block; }
  .content-card img {
    position: relative; }
  .content-card__text {
    width: 100%;
    display: block; }
    .content-card__text > * {
      position: relative; }
  .content-card h3 {
    color: #000000;
    font-size: 1.5rem;
    padding-top: 1.875rem;
    margin-bottom: 0.75rem;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .content-card p {
    margin-bottom: 1.5rem;
    color: #151F35; }
  .content-card:hover h3 {
    color: #EB5E94; }
  .more .content-card:nth-of-type(1) .content-card__text:before {
    content: "";
    position: absolute;
    display: block;
    left: -200%;
    right: -200%;
    height: 100%;
    background-color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    .content-card--small {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 1.875rem; } }
  @media print, screen and (max-width: 39.99875em) {
    .content-card--small img {
      width: 40%;
      margin-right: 1.25rem;
      max-width: 13.75rem; } }
  .content-card--small h3 {
    font-size: 1.125rem;
    margin-bottom: 0; }
    @media print, screen and (max-width: 39.99875em) {
      .content-card--small h3 {
        padding: 0;
        margin: 0; } }
    @media print, screen and (min-width: 40em) {
      .content-card--small h3 {
        padding-top: 0.875rem; } }
    @media screen and (min-width: 75em) {
      .content-card--small h3 {
        font-size: 1.3125rem; } }
  @media print, screen and (max-width: 39.99875em) {
    .content-card--small img {
      -webkit-align-self: flex-start;
          -ms-flex-item-align: start;
              align-self: flex-start; } }
  @media print, screen and (max-width: 39.99875em) {
    .content-card--small .content-card__text {
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center; } }

.course-accreditations {
  margin-top: 2.5rem; }
  .course-accreditations img {
    margin: 0 2.5rem 1.25rem 0;
    max-height: 80px; }
    .course-accreditations img:last-child {
      margin-right: 0; }

.course-buttons {
  margin-bottom: -1rem; }
  @media print, screen and (max-width: 63.99875em) {
    .course-buttons {
      margin-top: 2.5rem; } }
  .course-buttons a {
    display: block;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content; }
    .course-buttons a:hover {
      background: #EB5E94 !important;
      color: #ffffff !important; }
    .course-buttons a:focus {
      outline: 2px dotted #ffffff; }
    @media print, screen and (min-width: 40em) {
      .course-buttons a {
        margin-bottom: 1.25rem; } }
  @media print, screen and (min-width: 40em) {
    .course-buttons {
      margin-bottom: -1.25rem; } }

.course-details h2 {
  margin-bottom: 1.5625rem;
  font-size: 1rem;
  letter-spacing: -0.04em; }
  @media screen and (min-width: 120em) {
    .course-details h2 {
      font-size: 1.25rem; } }

.course-details .h5 {
  letter-spacing: 0; }
  @media screen and (min-width: 75em) {
    .course-details .h5 {
      font-size: 1.125rem; } }

.course-details ul {
  list-style: none;
  font-size: 0.875rem;
  margin-bottom: 0; }
  @media screen and (min-width: 120em) {
    .course-details ul {
      font-size: 1.0625rem; } }
  .course-details ul strong {
    display: block; }
  .course-details ul li {
    margin-bottom: 1.25rem; }

.course-details__row {
  margin-bottom: -1.875rem; }
  @media print, screen and (min-width: 40em) {
    .course-details__row {
      margin-bottom: -2.5rem; } }
  @media screen and (min-width: 75em) {
    .course-details__row {
      margin-bottom: 0; } }

.course-details__text {
  margin-bottom: 1.875rem; }
  .course-details__text p {
    line-height: 150.7%;
    margin-bottom: 6px; }
  @media print, screen and (min-width: 40em) {
    .course-details__text {
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 75em) {
    .course-details__text {
      margin-bottom: -6px; } }

.course-intro .display-4 strong {
  display: block;
  font-weight: 600; }

@media screen and (min-width: 75em) {
  .course-intro .display-4 {
    font-size: 4.625rem;
    margin-bottom: 2.3125rem; } }

.course-intro p {
  line-height: 160%;
  letter-spacing: -0.04em; }
  .course-intro p:last-of-type {
    margin-bottom: 0; }
  @media print, screen and (min-width: 40em) {
    .course-intro p {
      width: 90%;
      max-width: 28.875rem; } }
  @media screen and (min-width: 120em) {
    .course-intro p {
      max-width: 35.125rem; } }

.course-intro button.button-link {
  color: inherit; }

.course-intro button:focus {
  background-color: #FDC400;
  color: #000000; }

.event-card {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 1.875rem;
  background-color: #41A494;
  -webkit-transition: background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  @media print, screen and (min-width: 64em) {
    .event-card {
      padding-bottom: 45%;
      background-color: #EB5E94; } }
  .event-card:nth-of-type(odd) {
    background-color: #EB5E94; }
    @media print, screen and (min-width: 64em) {
      .event-card:nth-of-type(odd) {
        background-color: #41A494; } }
  .event-card__link {
    display: block; }
    @media print, screen and (min-width: 64em) {
      .event-card__link {
        position: absolute;
        top: 0;
        left: 0;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        width: 100%;
        height: 100%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding: 1.875rem; }
        .event-card__link > * {
          -webkit-box-flex: 1;
          -webkit-flex: 1 100%;
              -ms-flex: 1 100%;
                  flex: 1 100%; } }
    @media screen and (min-width: 90em) {
      .event-card__link {
        padding: 2.5rem; } }
    @media screen and (min-width: 120em) {
      .event-card__link {
        padding: 3.125rem; } }
    .event-card__link:after {
      content: "";
      position: absolute;
      bottom: 1.875rem;
      right: 1.875rem;
      width: 1.5rem;
      height: 1.25rem;
      display: block;
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right-white.svg");
      background-repeat: no-repeat;
      background-size: 1.5rem;
      opacity: 0;
      -webkit-transform: translateX(50px);
          -ms-transform: translateX(50px);
              transform: translateX(50px);
      -webkit-transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
      transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
      transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
      transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      @media screen and (min-width: 90em) {
        .event-card__link:after {
          bottom: 2.5rem;
          right: 2.5rem; } }
      @media screen and (min-width: 120em) {
        .event-card__link:after {
          bottom: 3.125rem;
          right: 3.125rem; } }
    .event-card__link:hover:after {
      opacity: 1;
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0); }
  .event-card__title {
    font-size: 1.75rem;
    line-height: 1;
    color: #ffffff;
    margin-bottom: 0.625rem;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .event-card__title {
        margin-bottom: 5rem; } }
    @media screen and (min-width: 90em) {
      .event-card__title {
        font-size: 2.5rem; } }
    @media screen and (min-width: 120em) {
      .event-card__title {
        font-size: 2.875rem; } }
  .event-card time {
    color: #ffffff;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
    @media print, screen and (min-width: 64em) {
      .event-card time {
        -webkit-align-self: flex-end;
            -ms-flex-item-align: end;
                align-self: flex-end; } }
  .event-card__month {
    display: block;
    text-transform: uppercase;
    font-size: 1.1875rem;
    font-weight: bold; }
  .event-card__day {
    display: block;
    font-size: 7rem;
    line-height: 0.87;
    font-weight: 500;
    letter-spacing: -0.02em; }
    @media screen and (min-width: 75em) {
      .event-card__day {
        font-size: 11.375rem; } }
    @media screen and (min-width: 120em) {
      .event-card__day {
        font-size: 15rem; } }

.event-card-group {
  width: 100%; }
  @media print, screen and (min-width: 64em) {
    .event-card-group {
      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;
      height: 100%; } }
  @media print, screen and (min-width: 64em) {
    .event-card-group > * {
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .event-card-group > *:first-child {
      margin-top: -2.5rem; } }
  @media screen and (min-width: 120em) {
    .event-card-group > *:first-child {
      margin-top: -4.375rem; } }
  @media print, screen and (min-width: 64em) {
    .event-card-group > *:last-child {
      -webkit-align-self: flex-end;
          -ms-flex-item-align: end;
              align-self: flex-end; } }
  @media print, screen and (max-width: 39.99875em) {
    .event-card-group .slick-track > * {
      margin-right: 2.5rem; } }
  .event-card-group .slick-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    height: 100%; }
    @media print, screen and (max-width: 39.99875em) {
      .event-card-group .slick-list {
        overflow: visible; } }
  .event-card-group .slick-track {
    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;
    height: 100%; }
  .event-card-group .slick-slide {
    height: auto; }

.feature-blocks__item {
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .feature-blocks__item {
      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; } }
  .feature-blocks__item > * {
    position: relative; }
  .feature-blocks__item:nth-of-type(even) {
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 40em) {
      .feature-blocks__item:nth-of-type(even) {
        margin-bottom: 6.25rem; } }
    .feature-blocks__item:nth-of-type(even):before {
      content: "";
      display: block;
      position: absolute;
      top: 5rem;
      left: 0;
      bottom: 0;
      width: 100%;
      background-color: #f0f4f5; }
      @media print, screen and (max-width: 63.99875em) {
        .feature-blocks__item:nth-of-type(even):before {
          margin-left: -9.52381%;
          margin-right: -9.52381%;
          width: 119.04762%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; } }
      @media print, screen and (min-width: 40em) {
        .feature-blocks__item:nth-of-type(even):before {
          top: 0; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .feature-blocks__item:nth-of-type(odd) .feature-blocks__text {
    padding-right: 0; } }

@media screen and (min-width: 90em) {
  .feature-blocks__item:nth-of-type(odd) .feature-blocks__text {
    padding-left: 6.25rem; } }

@media print, screen and (min-width: 40em) {
  .feature-blocks__item:nth-of-type(even) .feature-blocks__image {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin: 1.875rem 0 -1.875rem; } }

@media print, screen and (min-width: 64em) {
  .feature-blocks__item:nth-of-type(even) .feature-blocks__image {
    margin: 3.75rem 0 -3.75rem; } }

@media print, screen and (min-width: 40em) {
  .feature-blocks__item:nth-of-type(even) .feature-blocks__text {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1; } }

@media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
  .feature-blocks__item:nth-of-type(even) .feature-blocks__text {
    padding-left: 0; } }

@media screen and (min-width: 90em) {
  .feature-blocks__item:nth-of-type(even) .feature-blocks__text {
    padding-right: 6.25rem; } }

@media print, screen and (min-width: 40em) {
  .feature-blocks__image {
    width: 50%; } }

@media print, screen and (min-width: 64em) {
  .feature-blocks__image {
    width: 40%; } }

.feature-blocks__text {
  padding: 1.875rem 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  @media print, screen and (min-width: 40em) {
    .feature-blocks__text {
      width: 50%;
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center;
      padding: 2.1875rem; } }
  @media print, screen and (min-width: 64em) {
    .feature-blocks__text {
      width: 40%; } }
  @media screen and (min-width: 90em) {
    .feature-blocks__text {
      padding: 2.5rem; } }

@media screen and (min-width: 75em) {
  .feature-blocks h2 {
    margin-bottom: 1.25rem; } }

.feature-blocks p {
  margin-bottom: 1.25rem; }
  @media screen and (min-width: 90em) {
    .feature-blocks p {
      width: 80%; } }
  @media screen and (min-width: 120em) {
    .feature-blocks p {
      width: 70%; } }

.feature-blocks ul {
  margin-bottom: 0; }

.feature-event {
  position: relative; }
  .feature-event:nth-child(4n - 1) .feature-event__content,
  .feature-event:nth-child(4n - 3) .feature-event__content {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  @media print, screen and (min-width: 40em) {
    .feature-event:nth-child(4n - 1) .feature-event__text,
    .feature-event:nth-child(4n - 3) .feature-event__text {
      padding: 1.875rem 0 2.5rem 3.75rem; } }
  @media screen and (min-width: 90em) {
    .feature-event:nth-child(4n - 1) .feature-event__text,
    .feature-event:nth-child(4n - 3) .feature-event__text {
      padding: 6.1875rem 0 5.5625rem 5.9375rem; } }
  @media screen and (min-width: 120em) {
    .feature-event:nth-child(4n - 1) .feature-event__text,
    .feature-event:nth-child(4n - 3) .feature-event__text {
      padding: 6.1875rem 0 5.5625rem 10rem; } }
  @media print, screen and (min-width: 40em) {
    .feature-event:nth-child(4n - 1) .feature-event__image,
    .feature-event:nth-child(4n - 3) .feature-event__image {
      margin-left: -9.52381%;
      margin-right: -9.52381%;
      width: 119.04762%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      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: end;
      -webkit-justify-content: flex-end;
          -ms-flex-pack: end;
              justify-content: flex-end;
      padding-top: calc(111% / 2);
      margin-right: auto;
      width: 58.33333%; } }
  .feature-event:nth-child(even)::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/sub-mask-1.svg");
    background-repeat: no-repeat;
    background-size: 100vw;
    z-index: -1; }
    @media print, screen and (max-width: 39.99875em) {
      .feature-event:nth-child(even)::before {
        background-image: none; } }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-event:nth-child(even)::before {
        -webkit-transform: scale(1.4);
            -ms-transform: scale(1.4);
                transform: scale(1.4);
        -webkit-transform-origin: 10% 10%;
            -ms-transform-origin: 10% 10%;
                transform-origin: 10% 10%; } }
    @media screen and (min-width: 120em) {
      .feature-event:nth-child(even)::before {
        background-size: 90vw; } }
  .feature-event__content .date {
    color: #41A494;
    line-height: 150.7%;
    font-family: "degular";
    font-weight: 700;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    @media screen and (min-width: 75em) {
      .feature-event__content .date {
        font-size: 1.125rem;
        margin-bottom: 1.875rem; } }
  .feature-event__content .display-4 strong {
    font-weight: 600; }
  @media screen and (min-width: 75em) {
    .feature-event__content .display-4 {
      margin-bottom: 2.3125rem; } }
  .feature-event__content p {
    line-height: 160%;
    letter-spacing: -0.04em; }
  @media screen and (min-width: 75em) {
    .feature-event__content .text-body {
      margin-top: 2.3125rem;
      margin-bottom: 0.938rem;
      font-size: 1.125rem; } }
  .feature-event__content ul li {
    line-height: 150.7%; }
    @media screen and (min-width: 75em) {
      .feature-event__content ul li {
        font-size: 1.125rem;
        margin-bottom: 0.938rem; } }
  @media screen and (min-width: 75em) {
    .feature-event__content ul {
      margin-bottom: 2.9375rem; } }
  .feature-event__content .button-link {
    color: #CB0064; }
    .feature-event__content .button-link::after {
      background-color: #CB0064; }
    .feature-event__content .button-link:hover, .feature-event__content .button-link:focus, .feature-event__content .button-link:active {
      color: #000000; }
  @media print, screen and (min-width: 40em) {
    .feature-event__content {
      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: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center; } }
  @media print, screen and (max-width: 39.99875em) {
    .feature-event__text {
      margin-left: -9.52381%;
      margin-right: -9.52381%;
      width: 119.04762%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding-left: 9.52381%;
      padding-right: 9.52381%;
      margin-bottom: 1.875rem; } }
  @media print, screen and (min-width: 40em) {
    .feature-event__text {
      width: 50%;
      margin-bottom: 0;
      padding: 1.875rem 3.75rem 2.5rem 0; } }
  @media screen and (min-width: 90em) {
    .feature-event__text {
      padding: 6.1875rem 5.9375rem 5.5625rem 0; } }
  @media screen and (min-width: 120em) {
    .feature-event__text {
      padding: 6.1875rem 10rem 5.5625rem 0; } }
  .feature-event__image {
    position: relative; }
    @media print, screen and (max-width: 39.99875em) {
      .feature-event__image {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; } }
    @media print, screen and (min-width: 40em) {
      .feature-event__image {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        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: end;
        -webkit-justify-content: flex-end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        padding-top: calc(111% / 2);
        margin-left: auto;
        width: 58.33333%; } }
    @media print, screen and (min-width: 40em) {
      .feature-event__image img {
        position: absolute;
        top: 0;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover;
        z-index: 2;
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0; } }

.feature-panel {
  position: relative; }
  @media print, screen and (min-width: 64em) {
    .feature-panel {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .feature-panel {
      padding-top: 5.625rem; } }
  @media screen and (min-width: 120em) {
    .feature-panel {
      padding-top: 6.875rem; } }
  @media screen and (min-width: 75em) {
    .feature-panel .display-2 {
      max-width: 24.375rem; } }
  @media screen and (min-width: 120em) {
    .feature-panel .display-2 {
      max-width: 26.25rem; } }
  .feature-panel:before {
    content: "";
    position: absolute;
    top: 2.5rem;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    background-color: #f0f4f5; }
    @media print, screen and (min-width: 64em) {
      .feature-panel:before {
        top: 0;
        left: 8%; } }
  .feature-panel__inner {
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .feature-panel__inner {
        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; } }
  .feature-panel__content {
    position: relative;
    margin-left: -9.52381%; }
    @media print, screen and (min-width: 40em) {
      .feature-panel__content {
        width: 84.52381%; } }
    @media print, screen and (min-width: 64em) {
      .feature-panel__content {
        width: 59.52381%; } }
    @media screen and (min-width: 75em) {
      .feature-panel__content {
        width: 67.85714%; } }
    .border-graphic .feature-panel__content:after {
      content: "";
      position: absolute;
      top: -1.25rem;
      right: 0;
      width: 6.25rem;
      height: 1.25rem;
      background-color: #EB5E94; }
      @media print, screen and (min-width: 40em) {
        .border-graphic .feature-panel__content:after {
          width: 41.66667%; } }
  .feature-panel__stat {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 70%;
    max-width: 20rem; }
    @media print, screen and (min-width: 40em) {
      .feature-panel__stat {
        width: 50%; } }
    @media screen and (min-width: 120em) {
      .feature-panel__stat {
        max-width: 25rem; } }
  .feature-panel__text {
    padding: 1.875rem 0 3.75rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-panel__text {
        padding-top: 2.5rem; } }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-panel__text {
        padding-left: 41.66667%; } }
    @media print, screen and (min-width: 64em) {
      .feature-panel__text {
        width: 41.66667%;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                align-self: center;
        padding-top: 0; } }
    @media screen and (min-width: 75em) {
      .feature-panel__text {
        width: 33.33333%; }
        .feature-panel__text--expand-xlarge {
          width: 41.66667%;
          padding-right: 1.25rem; } }
  .feature-panel p {
    max-width: 25rem; }
    @media screen and (min-width: 120em) {
      .feature-panel p {
        max-width: 31.25rem; } }
    .feature-panel p:last-child {
      margin-bottom: 0; }
  @media print, screen and (min-width: 64em) {
    .feature-panel:nth-of-type(even):before, .feature-panel--flipped:before {
      top: 0;
      right: 8%;
      left: 0; } }
  @media print, screen and (min-width: 64em) {
    .feature-panel:nth-of-type(even) .feature-panel__content,
    .feature-panel--flipped .feature-panel__content {
      -webkit-box-ordinal-group: 3;
      -webkit-order: 2;
          -ms-flex-order: 2;
              order: 2;
      margin-left: 0;
      margin-right: -9.52381%; } }
  @media print, screen and (min-width: 64em) {
    .feature-panel:nth-of-type(even) .feature-panel__content:after,
    .feature-panel--flipped .feature-panel__content:after {
      right: auto;
      left: 0; } }
  @media print, screen and (min-width: 64em) {
    .feature-panel:nth-of-type(even) .feature-panel__text,
    .feature-panel--flipped .feature-panel__text {
      -webkit-box-ordinal-group: 2;
      -webkit-order: 1;
          -ms-flex-order: 1;
              order: 1; } }
  .feature-panel .slick-dots {
    text-align: left;
    bottom: 1.875rem;
    width: 70%; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-panel .slick-dots {
        bottom: 5rem;
        margin-left: -0.5rem; } }
    @media screen and (min-width: 75em) {
      .feature-panel .slick-dots {
        bottom: 5rem; } }
    @media screen and (min-width: 120em) {
      .feature-panel .slick-dots {
        bottom: 7.5rem; } }
  .feature-panel .slick-slider {
    width: 100%; }
  .feature-panel .slick-list {
    overflow: visible; }
  @media print, screen and (min-width: 64em) {
    .feature-panel .slick-initialized .slick-slide {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }
  @media print, screen and (min-width: 64em) {
    .feature-panel .slick-slide {
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
          -ms-flex-pack: justify;
              justify-content: space-between; } }
  .feature-panel .slick-dotted.slick-slider {
    margin-bottom: 0; }
  .feature-panel .slick-prev, .feature-panel .slick-next {
    top: auto;
    bottom: 1.5625rem;
    z-index: 100; }
    @media screen and (min-width: 75em) {
      .feature-panel .slick-prev, .feature-panel .slick-next {
        bottom: 0.625rem; } }
  .feature-panel .slick-next {
    right: 0; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-panel .slick-next {
        left: 2.1875rem;
        right: auto; } }
    @media print, screen and (min-width: 64em) {
      .feature-panel .slick-next {
        right: 50%; } }
    @media print, screen and (min-width: 64em) {
      .feature-panel .slick-next {
        right: 58.33333%;
        margin-right: 1.875rem; } }
  .feature-panel .slick-prev {
    right: 2.1875rem;
    left: auto; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .feature-panel .slick-prev {
        left: 0;
        right: auto; } }
    @media print, screen and (min-width: 64em) {
      .feature-panel .slick-prev {
        right: 58.33333%;
        margin-right: 4.375rem; } }
  @media screen and (min-width: 75em) {
    .feature-panel--clipped:before {
      bottom: 3.4375rem; } }
  @media print, screen and (min-width: 64em) {
    .feature-panel--clipped .feature-panel__text {
      -webkit-align-self: flex-start;
          -ms-flex-item-align: start;
              align-self: flex-start;
      padding-top: 1.875rem; } }
  @media screen and (min-width: 120em) {
    .feature-panel--clipped .feature-panel__text {
      padding-top: 3.75rem; } }

@media print, screen and (min-width: 64em) {
  .latest-events + .feature-panel:before {
    top: 0;
    right: 0;
    left: 8%; } }

@media print, screen and (min-width: 64em) {
  .latest-events + .feature-panel .feature-panel__content {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    margin-left: -9.52381%;
    margin-right: 0; } }

@media print, screen and (min-width: 64em) {
  .latest-events + .feature-panel .feature-panel__content:after {
    right: 0;
    left: auto; } }

@media print, screen and (min-width: 64em) {
  .latest-events + .feature-panel .feature-panel__text {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2; } }

.form-panel {
  background-color: #f0f4f5;
  padding: 1rem 0; }
  .form-panel button {
    background: #EB5E94;
    color: #fff;
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 1rem 0;
    padding: 0.85em 1em;
    border: 1px solid transparent;
    border-radius: 0;
    -webkit-transition: background-color .25s ease-out,color .25s ease-out;
    transition: background-color .25s ease-out,color .25s ease-out;
    font-size: 1rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    -webkit-filter: contrast(1);
            filter: contrast(1);
    cursor: pointer; }
    .form-panel button:hover {
      background-color: #41A494; }
  @media print, screen and (min-width: 64em) {
    .form-panel {
      padding-top: 3.75rem; } }
  @media screen and (min-width: 75em) {
    .form-panel {
      padding-top: 5.625rem; } }
  @media screen and (min-width: 120em) {
    .form-panel {
      padding-top: 6.875rem;
      padding: 7.5rem; } }
  .form-panel__inner {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    width: 100%; }
  .form-panel__content {
    padding: 3.75rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 3.75rem 3.75rem 0 3.75rem; }
    @media print, screen and (min-width: 40em) {
      .form-panel__content {
        width: 100%;
        padding: 3.75rem; } }
    @media print, screen and (min-width: 64em) {
      .form-panel__content {
        width: 50%; } }
    @media screen and (min-width: 75em) {
      .form-panel__content {
        width: 58.33333%; } }
  .form-panel__text {
    padding: 3.75rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 100%;
    width: 100%; }
    @media print, screen and (min-width: 64em) {
      .form-panel__text {
        width: 41.66667%;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                align-self: center; } }
    @media screen and (min-width: 75em) {
      .form-panel__text {
        width: 33.33333%; }
        .form-panel__text--expand-xlarge {
          width: 41.66667%;
          padding-right: 1.25rem; } }

@media print, screen and (max-width: 39.99875em) {
  .feature-profile__content {
    margin-left: -9.52381%;
    margin-right: -9.52381%;
    width: 119.04762%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-left: 9.52381%;
    padding-right: 9.52381%; } }

@media print, screen and (min-width: 40em) {
  .feature-profile__content {
    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; } }

.feature-profile__image {
  display: none;
  position: relative; }
  @media print, screen and (max-width: 39.99875em) {
    .feature-profile__image {
      max-width: 18.75rem; } }
  @media print, screen and (min-width: 40em) {
    .feature-profile__image {
      display: block;
      padding-top: 32%;
      width: 32%;
      margin-bottom: 20%; } }
  @media print, screen and (min-width: 64em) {
    .feature-profile__image {
      padding-top: 36%;
      max-width: 25rem; } }
  @media screen and (min-width: 90em) {
    .feature-profile__image {
      padding-top: 18rem; } }
  .feature-profile__image img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
    -webkit-mask: url("https://wrexham.ac.uk/media/site-assets/img/mask-shape-2.svg") center center/cover;
    -webkit-mask-size: 100%;
    -webkit-mask-repeat: no-repeat; }

.feature-profile__box {
  position: relative;
  padding: 1.875rem;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content; }
  .feature-profile__box > *,
  .feature-profile__box a,
  .feature-profile__box blockquote,
  .feature-profile__box p,
  .feature-profile__box cite {
    color: #ffffff; }
  @media print, screen and (min-width: 40em) {
    .feature-profile__box {
      width: 50%;
      margin-top: 20%;
      padding: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .feature-profile__box {
      padding: 4.1875rem 4.125rem 4.1875rem 4.125rem; } }
  @media screen and (min-width: 75em) {
    .feature-profile__box {
      /*max-width: 32.6875rem;*/ } }
  @media screen and (min-width: 90em) {
    .feature-profile__box {
      margin-top: 12%; } }

@media print, screen and (min-width: 40em) {
  .feature-profile__quote {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-align-content: center;
        -ms-flex-line-pack: center;
            align-content: center;
    padding-bottom: 0; } }

.feature-profile__quote p, .feature-profile__quote .p {
  line-height: 150.7%;
  font-family: "degular";
  letter-spacing: 0;
  margin-bottom: 1rem; }
  @media print, screen and (min-width: 40em) {
    .feature-profile__quote p, .feature-profile__quote .p {
      margin: 0; } }
  @media print, screen and (min-width: 64em) {
    .feature-profile__quote p, .feature-profile__quote .p {
      font-size: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .feature-profile__quote p, .feature-profile__quote .p {
      font-size: 1.75rem;
      /*max-width: 24.4375rem;*/ } }

@media print, screen and (min-width: 40em) {
  .feature-profile__quote footer {
    display: none; } }

.feature-profile__quote cite {
  font-family: "degular"; }
  @media screen and (min-width: 90em) {
    .feature-profile__quote cite {
      font-size: 1rem; } }

.feature-profile__citations {
  display: none; }
  .feature-profile__citations p, .feature-profile__citations .p {
    margin-bottom: 0;
    line-height: 150.7%;
    font-family: "degular";
    font-weight: 400; }
    .feature-profile__citations p strong, .feature-profile__citations .p strong {
      font-weight: 700; }
    @media screen and (min-width: 75em) {
      .feature-profile__citations p, .feature-profile__citations .p {
        font-size: 1.375rem; } }
  @media print, screen and (min-width: 40em) {
    .feature-profile__citations {
      position: absolute;
      display: block;
      margin-top: 1.25rem;
      left: 8%; } }

.general-content .feature-profile__inner {
  width: 100%;
  max-width: none; }

.find-course {
  position: relative;
  overflow: hidden; }
  .find-course__inner {
    max-width: none;
    position: relative; }
  @media screen and (min-width: 75em) {
    .find-course {
      padding: 9.375rem 0; } }
  @media print, screen and (min-width: 40em) {
    .find-course .grid-x:first-child {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -webkit-flex-direction: row-reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; } }
  .find-course .cell:nth-child(3) .find-course__image {
    margin-top: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .find-course .cell:nth-child(3) .find-course__image {
        margin-top: -33%; } }
  .find-course__search {
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .find-course__search {
        margin-bottom: 0; } }
  .find-course__form form {
    margin-top: 1.5rem; }
    .find-course__form form input {
      border-color: #41A494; }
      .find-course__form form input::-webkit-input-placeholder {
        -webkit-filter: contrast(1);
                filter: contrast(1); }
      .find-course__form form input::-moz-placeholder {
        filter: contrast(1); }
      .find-course__form form input:-ms-input-placeholder {
        filter: contrast(1); }
      .find-course__form form input::-ms-input-placeholder {
        filter: contrast(1); }
      .find-course__form form input::placeholder {
        -webkit-filter: contrast(1);
                filter: contrast(1); }
    .find-course__form form .search-button {
      -webkit-filter: contrast(1);
              filter: contrast(1);
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); }
    @media screen and (min-width: 75em) {
      .find-course__form form {
        margin-top: 2.5rem; } }
    @media screen and (min-width: 120em) {
      .find-course__form form {
        margin-right: 9.375rem; } }
  .find-course__form .button-link {
    color: #151F35;
    font-weight: 700;
    font-family: "Inter", sans-serif;
    letter-spacing: -0.01em;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    @media print, screen and (min-width: 40em) {
      .find-course__form .button-link {
        float: right; } }
    @media screen and (min-width: 75em) {
      .find-course__form .button-link {
        margin-top: 1.563rem; } }
    @media screen and (min-width: 120em) {
      .find-course__form .button-link {
        margin-right: 9.375rem; } }
  .find-course h2 {
    margin-bottom: 0;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    .find-course h2 strong {
      display: block;
      font-weight: 600; }
  .find-course__level {
    position: relative;
    padding-bottom: 2.5rem; }
    .find-course__level::before, .find-course__level::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; }
    .find-course__level::after {
      clear: both; }
    @media print, screen and (max-width: 39.99875em) {
      .find-course__level {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-left: 9.52381%;
        padding-right: 9.52381%; } }
    @media print, screen and (min-width: 40em) {
      .find-course__level {
        background-color: #EB5E94;
        position: static; } }
    @media print, screen and (min-width: 64em) {
      .find-course__level {
        position: static; } }
    .find-course__level:before {
      content: "";
      position: absolute;
      background-color: #EB5E94;
      top: 3.75rem;
      height: 100%;
      width: 100%;
      display: block; }
      @media print, screen and (max-width: 39.99875em) {
        .find-course__level:before {
          margin-left: -9.52381%;
          margin-right: -9.52381%;
          width: 119.04762%;
          -webkit-box-sizing: border-box;
                  box-sizing: border-box; } }
      @media print, screen and (min-width: 40em) {
        .find-course__level:before {
          top: auto;
          width: 50%;
          left: 50%; } }
  .find-course__level-list {
    position: relative;
    margin-bottom: 0;
    padding-top: 1.5rem;
    font-size: 1.75rem;
    line-height: 1.22;
    letter-spacing: -0.04em;
    font-weight: 500;
    background-color: #EB5E94; }
    .find-course__level-list li a {
      color: #ffffff;
      position: relative;
      display: block; }
      .find-course__level-list li a:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        width: 1.5rem;
        height: 1.25rem;
        display: block;
        background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right-white.svg");
        background-repeat: no-repeat;
        background-size: 1.5rem;
        opacity: 0;
        -webkit-transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      .find-course__level-list li a span {
        display: block;
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);
        -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      .find-course__level-list li a:hover:before {
        opacity: 1; }
      .find-course__level-list li a:hover span {
        -webkit-transform: translateX(40px);
            -ms-transform: translateX(40px);
                transform: translateX(40px); }
    @media print, screen and (min-width: 40em) {
      .find-course__level-list {
        float: right;
        width: 33.33333%;
        padding-top: 3.75rem; } }
    @media print, screen and (min-width: 64em) {
      .find-course__level-list {
        padding-bottom: 3.75rem;
        width: 41.66667%; } }
    @media screen and (min-width: 75em) {
      .find-course__level-list {
        font-size: 2.25rem; } }
    @media screen and (min-width: 90em) {
      .find-course__level-list {
        font-size: 2.625rem; } }
    @media screen and (min-width: 120em) {
      .find-course__level-list {
        padding: 6.25rem 0 12.5rem; } }
  .find-course__image figure {
    position: relative;
    padding-top: 100%;
    background-color: #151F35; }
    .find-course__image figure::before {
      content: "";
      position: absolute;
      bottom: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(207.83deg, rgba(0, 0, 0, 0.6) 5.89%, rgba(0, 0, 0, 0) 65.62%);
      -webkit-transform: rotate(-180deg);
          -ms-transform: rotate(-180deg);
              transform: rotate(-180deg);
      z-index: 2;
      opacity: 60%; }
    .find-course__image figure img {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    .find-course__image figure figcaption {
      position: absolute;
      bottom: 1.25rem;
      left: 1.25rem;
      color: #ffffff;
      margin: 0;
      font-family: "degular";
      letter-spacing: -0.04em;
      font-weight: 600;
      line-height: 87.6%;
      z-index: 3;
      max-width: 14.25rem;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      @media screen and (min-width: 75em) {
        .find-course__image figure figcaption {
          bottom: 1.875rem;
          left: 1.875rem; } }
  .find-course__shape {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    padding-top: 64.57%;
    bottom: -5rem;
    left: 0;
    width: 100%;
    z-index: -1; }
    .find-course__shape svg {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%; }
    @media print, screen and (max-width: 39.99875em) {
      .find-course__shape {
        -webkit-transform: scale(3);
            -ms-transform: scale(3);
                transform: scale(3); } }
    @media screen and (min-width: 75em) {
      .find-course__shape {
        bottom: -9.375rem; } }
  .find-course__links {
    margin-top: 2.5rem; }
    @media screen and (min-width: 75em) {
      .find-course__links {
        margin-top: 7.5rem; } }

.filters {
  margin-top: 2.5rem; }
  @media print, screen and (min-width: 64em) {
    .filters {
      margin-top: 4.1875rem; } }
  @media screen and (min-width: 75em) {
    .filters__facets {
      width: 50%; } }
  .filters__legend {
    display: block;
    margin-bottom: 0.75rem;
    font-weight: 400;
    line-height: 150.7%;
    font-size: 1rem;
    font-family: "degular";
    letter-spacing: 0; }
    @media screen and (min-width: 75em) {
      .filters__legend {
        font-size: 1.125rem; } }
  .filters .button.small {
    display: -webkit-inline-box;
    display: -webkit-inline-flex;
    display: -ms-inline-flexbox;
    display: inline-flex;
    letter-spacing: 0;
    line-height: 150%;
    font-weight: 700;
    padding: 0.125rem 0.5rem 0.125rem 0.75rem; }
    .filters .button.small::after {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      position: relative;
      top: -2px;
      font-family: "degular"; }
  .filters .button-link {
    color: #41A494; }
    .filters .button-link::after {
      background-color: #41A494; }
  .filters .tabs {
    margin-bottom: -1rem; }
    @media print, screen and (max-width: 39.99875em) {
      .filters .tabs {
        overflow: auto;
        white-space: nowrap; } }
    .filters .tabs-title {
      margin-right: 1.25rem;
      margin-bottom: 1rem; }
      .filters .tabs-title:last-child {
        margin-right: 0; }
      @media print, screen and (max-width: 39.99875em) {
        .filters .tabs-title {
          display: inline-block;
          float: none; } }
      @media screen and (min-width: 90em) {
        .filters .tabs-title {
          margin-right: 2.375rem; } }
      .filters .tabs-title > a {
        position: relative;
        padding: 0;
        text-transform: none;
        background-color: transparent;
        font-family: "degular";
        font-size: 1rem;
        line-height: 150.7%;
        font-weight: 700;
        letter-spacing: 0; }
        @media screen and (min-width: 75em) {
          .filters .tabs-title > a {
            font-size: 1.125rem; } }
        .filters .tabs-title > a:hover, .filters .tabs-title > a:focus, .filters .tabs-title > a[aria-selected='true'] {
          background-color: transparent;
          color: #348378; }
  .filters .tabs-content {
    width: 100%; }
  .filters .tabs-panel {
    position: relative;
    margin-top: 1.25rem;
    padding-top: 2.5rem;
    padding-bottom: 1.25rem;
    background-color: #f0f4f5; }
    .filters .tabs-panel:before {
      content: "";
      position: absolute;
      top: 0;
      display: block;
      left: -9999px;
      right: -9999px;
      height: 100%;
      background-color: #f0f4f5; }
    @media screen and (min-width: 75em) {
      .filters .tabs-panel {
        padding-top: 3.75rem;
        padding-bottom: 2.5rem; } }
    .filters .tabs-panel .cell {
      margin-bottom: 1.5625rem; }
    .filters .tabs-panel a {
      font-size: 14px;
      color: #000;
      font-weight: 700;
      position: relative; }
      .filters .tabs-panel a:hover {
        text-decoration: underline; }
  .filters__actions {
    margin-top: 2.5rem; }
    @media print, screen and (min-width: 40em) {
      .filters__actions {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; } }
    @media screen and (min-width: 75em) {
      .filters__actions {
        margin-top: 3.75rem; } }
    @media print, screen and (min-width: 40em) {
      .filters__actions .button-link {
        -webkit-flex-shrink: 0;
            -ms-flex-negative: 0;
                flex-shrink: 0;
        -webkit-align-self: flex-start;
            -ms-flex-item-align: start;
                align-self: flex-start;
        margin-left: auto; } }
  .filters__buttons .button {
    margin-right: 1.25rem; }
  .filters__az {
    margin-top: 2.5rem; }
    @media screen and (min-width: 75em) {
      .filters__az {
        margin-top: 3.75rem; } }
    .filters__az .az {
      margin-left: 0;
      margin-bottom: -0.625rem; }
      @media screen and (min-width: 75em) {
        .filters__az .az {
          display: grid;
          grid-template-columns: repeat(auto-fill, 67px);
          grid-gap: 0.719rem;
          margin-bottom: 0; } }
      @media screen and (min-width: 90em) {
        .filters__az .az {
          grid-gap: 1.763rem; } }
      .filters__az .az li {
        margin: 0;
        width: 4.125rem;
        height: 4.125rem;
        margin-right: 0.625rem;
        margin-bottom: 0.625rem; }
        .filters__az .az li a {
          width: 100%;
          height: 100%;
          padding: 0; }
          @media screen and (min-width: 75em) {
            .filters__az .az li a {
              width: 4.125rem; } }
        @media screen and (min-width: 75em) {
          .filters__az .az li {
            width: -webkit-max-content;
            width: -moz-max-content;
            width: max-content;
            margin: 0; } }

.prog-search-results {
  background: #fff; }

.search-result-card.specs {
  background-color: #f0f4f5;
  width: 100% !important;
  padding: 0;
  border: 1px solid rgba(203, 206, 206, 0.65);
  margin-bottom: 1rem;
  -webkit-transition: .3s;
  transition: .3s; }
  .search-result-card.specs:hover {
    cursor: pointer;
    -webkit-transform: scale(1.025);
        -ms-transform: scale(1.025);
            transform: scale(1.025);
    background: #cb0064;
    color: #fff; }
    .search-result-card.specs:hover a {
      color: #fff; }

.filter-toggle {
  position: relative;
  display: block;
  padding: 1.25rem 1rem;
  width: 100%;
  font-size: 0.75rem;
  font-weight: bold;
  text-transform: uppercase;
  text-align: left;
  border-top: 1px solid #b8ccd1;
  border-bottom: 1px solid #b8ccd1;
  color: inherit; }
  .filter-toggle:before {
    content: "+";
    position: absolute;
    top: 50%;
    right: 1rem;
    margin-top: -0.5rem;
    color: #EB5E94; }
    @media print, screen and (max-width: 39.99875em) {
      .filter-toggle:before {
        font-size: 1.125rem;
        top: calc(50% - 3px); } }
  .filter-toggle.is-active:before {
    content: "-"; }

.gallery {
  position: relative; }
  @media print, screen and (min-width: 40em) {
    .gallery {
      margin: 8.75rem 0; } }
  @media screen and (min-width: 90em) {
    .gallery {
      margin: 10.8125rem 0; } }
  .gallery img {
    margin-right: 1.25rem;
    height: 70vw; }
    @media print, screen and (min-width: 40em) {
      .gallery img {
        height: 43vw; } }
    @media print, screen and (min-width: 64em) {
      .gallery img {
        height: 28vw; } }
  .gallery figure {
    position: relative; }
    .gallery figure::before {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: calc(100% - 1.25rem);
      height: 40%;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(14.06%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0)));
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 14.06%, rgba(0, 0, 0, 0) 100%);
      -webkit-transform: rotate(-180deg);
          -ms-transform: rotate(-180deg);
              transform: rotate(-180deg);
      z-index: 1; }
    .gallery figure figcaption {
      position: absolute;
      left: 1rem;
      bottom: 1rem;
      margin: 0;
      color: #ffffff;
      font-weight: 600;
      letter-spacing: -0.04em;
      line-height: 87.6%;
      z-index: 2;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      @media screen and (min-width: 75em) {
        .gallery figure figcaption {
          bottom: 1.5rem;
          left: 1.3125rem; } }
  .gallery .slick-prev, .gallery .slick-next {
    top: -1.25rem;
    right: 8%;
    left: auto;
    z-index: 100; }
  .gallery .slick-prev {
    margin-right: 2.1875rem; }
  .gallery__wrapper {
    position: relative; }
  .gallery__nav {
    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;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    width: 3.9375rem;
    height: 3.9375rem; }
    .gallery__nav .slick-prev,
    .gallery__nav .slick-next {
      top: 0;
      position: relative;
      height: auto;
      width: 0.75rem;
      background-image: none;
      color: #151F35; }
      .gallery__nav .slick-prev:hover, .gallery__nav .slick-prev:focus, .gallery__nav .slick-prev:active,
      .gallery__nav .slick-next:hover,
      .gallery__nav .slick-next:focus,
      .gallery__nav .slick-next:active {
        background-image: none; }
      .gallery__nav .slick-prev:focus,
      .gallery__nav .slick-next:focus {
        outline: 2px dotted;
        background: none; }
      .gallery__nav .slick-prev svg,
      .gallery__nav .slick-next svg {
        width: 100%;
        height: 100%; }
      @media print, screen and (min-width: 64em) {
        .gallery__nav .slick-prev,
        .gallery__nav .slick-next {
          width: 0.75rem; } }
      @media screen and (min-width: 75em) {
        .gallery__nav .slick-prev,
        .gallery__nav .slick-next {
          width: 1rem; } }
    .gallery__nav .slick-prev {
      left: 0;
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      margin-right: 4px; }
      @media screen and (min-width: 75em) {
        .gallery__nav .slick-prev {
          margin-right: 9px; } }
    .gallery__nav .slick-next {
      right: 0;
      -webkit-transform: scaleX(-1);
          -ms-transform: scaleX(-1);
              transform: scaleX(-1);
      margin-left: 4px; }
      @media screen and (min-width: 75em) {
        .gallery__nav .slick-next {
          margin-left: 9px; } }
    @media screen and (min-width: 75em) {
      .gallery__nav {
        width: 7.875rem;
        height: 7.875rem; } }
    .gallery__nav::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      background: #ffffff;
      border: 1px solid #41A494;
      width: 100%;
      height: 100%;
      border-radius: 100%; }
    @media print, screen and (max-width: 39.99875em) {
      .gallery__nav {
        right: 1rem; } }

@media print, screen and (min-width: 40em) {
  .general-content > *:not(img):not(aside) {
    width: 85%;
    margin-left: auto;
    margin-right: auto; } }

@media screen and (min-width: 75em) {
  .general-content > *:not(img):not(aside) {
    width: 75%; } }

@media screen and (min-width: 120em) {
  .general-content > *:not(img):not(aside) {
    width: 80%; } }

.general-content > .gallery__wrapper {
  width: 100%; }
  .general-content > .gallery__wrapper + * {
    margin-top: 1.875rem; }
  @media screen and (min-width: 90em) {
    .general-content > .gallery__wrapper .gallery__nav {
      left: calc(65vw + 0.625rem + 1.25rem); } }
  @media all and (device-width: 1920px) and (device-height: 1080px) and (orientation: landscape) {
    .general-content > .gallery__wrapper .gallery__nav {
      left: calc(65vw + 0.625rem + 32px); } }

.general-content h2, .general-content .h2 {
  letter-spacing: -0.04em; }
  @media screen and (min-width: 75em) {
    .general-content h2, .general-content .h2 {
      font-size: 1.875rem;
      margin-bottom: 1.875rem; } }

.general-content > img,
.general-content aside {
  margin-bottom: 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .general-content > img,
    .general-content aside {
      margin-bottom: 5rem; } }
  .general-content > img:last-child,
  .general-content aside:last-child {
    margin-bottom: 0; }

.general-content > .feature-img-cols {
  width: 84vw;
  max-width: 101.25rem; }

.general-content > .feature-profile {
  width: 74vw;
  max-width: 101.25rem; }

.general-content p + img {
  margin-top: 1rem; }
  @media print, screen and (min-width: 40em) {
    .general-content p + img {
      margin-top: 3.5rem; } }

.general-content p + aside {
  margin-top: 2.5rem; }
  @media print, screen and (min-width: 40em) {
    .general-content p + aside {
      margin-top: 5rem; } }

.general-content p.intro {
  line-height: 115% 0.7;
  letter-spacing: -0.04em;
  font-family: "degular";
  font-weight: 600;
  margin-bottom: 2rem; }
  @media screen and (min-width: 75em) {
    .general-content p.intro {
      margin-bottom: 3.25rem;
      font-size: 2.25rem; } }

.general-content p a {
  color: #41A494;
  -webkit-filter: contrast(1);
          filter: contrast(1); }

.general-content ul {
  padding-left: 2rem; }

.general-content .slick-list.draggable {
  overflow: visible; }

.general-content .slick-list.dragging, .general-content .slick-list.draggable:active:hover {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.general-content .gallery__nav {
  right: calc(63px - 26px); }
  @media print, screen and (min-width: 40em) {
    .general-content .gallery__nav {
      left: calc(70vw + 0.625rem); } }
  @media screen and (min-width: 75em) {
    .general-content .gallery__nav {
      left: calc(65vw + 0.625rem); } }

.hashtag__title {
  display: block;
  margin-bottom: 1.25rem;
  text-align: center;
  font-size: 2.125rem;
  line-height: 1;
  letter-spacing: -0.04em;
  font-weight: bold; }
  @media print, screen and (min-width: 40em) {
    .hashtag__title {
      font-size: 3.75rem; } }
  @media print, screen and (min-width: 64em) {
    .hashtag__title {
      font-size: 6.25rem;
      letter-spacing: -0.05em; } }
  @media screen and (min-width: 75em) {
    .hashtag__title {
      font-size: 7.375rem;
      margin-bottom: 2.5rem; } }
  @media screen and (min-width: 90em) {
    .hashtag__title {
      font-size: 9.25rem; } }
  @media screen and (min-width: 120em) {
    .hashtag__title {
      font-size: 11.75rem; } }
  .hashtag__title em {
    color: #EB5E94; }

.hashtag__social {
  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: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0;
  list-style: none;
  font-weight: bold;
  line-height: 1; }
  @media print, screen and (min-width: 64em) {
    .hashtag__social {
      font-size: 1.25rem;
      letter-spacing: -0.03em; } }
  @media screen and (min-width: 90em) {
    .hashtag__social {
      font-size: 1.5rem; } }
  .hashtag__social li {
    margin-bottom: 20px; }
    @media print, screen and (max-width: 39.99875em) {
      .hashtag__social li {
        -webkit-box-flex: 1;
        -webkit-flex: 1 100%;
            -ms-flex: 1 100%;
                flex: 1 100%; } }
    @media print, screen and (min-width: 40em) {
      .hashtag__social li {
        margin: 10px; } }
    @media print, screen and (min-width: 64em) {
      .hashtag__social li {
        margin: 15px; } }
  .hashtag__social svg {
    fill: #000000;
    margin-right: 5px;
    -webkit-transition: fill 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: fill 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hashtag__social span {
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hashtag__social a {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    color: #000000; }
    .hashtag__social a:hover {
      color: #EB5E94; }
      .hashtag__social a:hover svg {
        fill: #EB5E94; }

@media print, screen and (min-width: 64em) {
  .intro-w-stat .intro {
    width: 95%; } }

@media print, screen and (max-width: 63.99875em) {
  .intro-w-stat .stat {
    margin-top: 2.5rem; } }

.latest-events {
  position: relative; }
  .latest-events:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 2.5rem;
    background-color: #f0f4f5; }
    @media print, screen and (min-width: 64em) {
      .latest-events:before {
        bottom: 0; } }
  .latest-events:after {
    content: "";
    display: block;
    position: absolute;
    top: -1.25rem;
    right: 0;
    width: 6.25rem;
    height: 1.25rem;
    background-color: #EB5E94; }
    @media print, screen and (min-width: 40em) {
      .latest-events:after {
        width: 20.83333%; } }
  @media print, screen and (max-width: 63.99875em) {
    .latest-events {
      padding-top: 3.75rem; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .latest-events {
      padding-bottom: 2.5rem; } }
  .latest-events__inner {
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .latest-events__inner {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; } }
  @media print, screen and (min-width: 40em) {
    .latest-events__text {
      width: 50%; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .latest-events__text {
      padding-bottom: 2.5rem; } }
  @media print, screen and (min-width: 64em) {
    .latest-events__text {
      padding: 4.6875rem 0 5.9375rem;
      width: 33.33333%; } }
  @media screen and (min-width: 75em) {
    .latest-events__text {
      padding: 7.5rem 0 10rem; } }
  @media screen and (min-width: 120em) {
    .latest-events__text {
      padding: 11.25rem 0 13.75rem; } }
  .latest-events__text p {
    max-width: 25rem; }
    @media screen and (min-width: 120em) {
      .latest-events__text p {
        max-width: 31.25rem; } }
  @media print, screen and (min-width: 40em) {
    .latest-events__events {
      width: 50%;
      padding-left: 1.25rem;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; } }
  @media print, screen and (min-width: 64em) {
    .latest-events__events {
      width: 66.66667%;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      padding-left: 2.5rem;
      -webkit-box-sizing: border-box;
              box-sizing: border-box; } }

.latest-news {
  position: relative; }
  .latest-news h3 {
    font-size: 1.5rem; }
    @media screen and (min-width: 120em) {
      .latest-news h3 {
        font-size: 2rem; } }
  .latest-news a {
    display: block; }
  .latest-news__inner {
    position: relative; }
    @media print, screen and (min-width: 64em) {
      .latest-news__inner {
        padding-top: 3.75rem; } }
    .latest-news__inner:before {
      content: "";
      position: absolute;
      top: 5rem;
      right: 0;
      bottom: 0;
      left: 0;
      display: block;
      background-color: #f0f4f5; }
      @media print, screen and (max-width: 63.99875em) {
        .latest-news__inner:before {
          left: -9.52381%;
          right: -9.52381%; } }
      @media print, screen and (min-width: 64em) {
        .latest-news__inner:before {
          top: 0;
          left: 0;
          margin-left: 25%;
          margin-right: -9.52381%; } }
    @media print, screen and (min-width: 64em) {
      .latest-news__inner {
        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; } }
  .latest-news__feature {
    position: relative;
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .latest-news__feature {
        margin-left: -9.52381%; } }
    @media print, screen and (min-width: 64em) {
      .latest-news__feature {
        width: 50%;
        margin-bottom: 0; }
        .latest-news__feature::before, .latest-news__feature::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; }
        .latest-news__feature::after {
          clear: both; } }
    @media screen and (min-width: 75em) {
      .latest-news__feature {
        width: 41.66667%; } }
    .latest-news__feature a {
      display: block; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .latest-news__feature img {
        width: 75%; } }
    @media print, screen and (min-width: 64em) {
      .latest-news__feature img {
        width: 90%;
        float: right; } }
    @media screen and (min-width: 120em) {
      .latest-news__feature img {
        width: 80%; } }
    .latest-news__feature a > div {
      position: relative;
      padding: 1.5625rem 1.5625rem 2.8125rem;
      width: 100%;
      margin-top: -3.75rem; }
      .latest-news__feature a > div:after {
        content: "";
        position: absolute;
        bottom: 1.25rem;
        right: 1.25rem;
        width: 1.5rem;
        height: 1.25rem;
        display: block;
        background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right-white.svg");
        background-repeat: no-repeat;
        background-size: 1.5rem;
        opacity: 0;
        -webkit-transform: translateX(50px);
            -ms-transform: translateX(50px);
                transform: translateX(50px);
        -webkit-transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: opacity 0.25s cubic-bezier(0.86, 0, 0.07, 1), transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      @media print, screen and (min-width: 40em) {
        .latest-news__feature a > div {
          position: absolute;
          top: 0;
          right: -9.52381%;
          padding: 3.125rem;
          width: 50%;
          margin-top: 0; } }
      @media print, screen and (min-width: 64em) {
        .latest-news__feature a > div {
          left: 0;
          right: auto;
          width: 60%;
          padding: 3.125rem 2.1875rem 3.75rem 0; }
          .latest-news__feature a > div:before {
            content: "";
            position: absolute;
            top: 0;
            left: -170px;
            right: 0;
            display: block;
            height: 100%; }
          .latest-news__feature a > div.bg-navy:before {
              background: #151F35;}
        	.latest-news__feature a > div.bg-pink:before {
              background: #EB5E94;}
            .latest-news__feature a > div.bg-purple:before {
              background: #4C4394;}
            .latest-news__feature a > div.bg-red:before {
              background: #E64550;}
            .latest-news__feature a > div.bg-blue:before {
              background: #41A494;}
            .latest-news__feature a > div.bg-yellow:before {
        	  background: #FDC400;}
      		.latest-news__feature a > div.bg-orange:before {
              background: #E6881E;}
        	.latest-news__feature a > div.bg-gray:before {
              background: #F5F5F5;} } }
      @media screen and (min-width: 120em) {
        .latest-news__feature a > div {
          padding: 5rem 3.125rem 6.25rem 0; } }
      .latest-news__feature a > div > * {
        position: relative; }
      .latest-news__feature a > div h3 {
        margin-bottom: 0; }
    .latest-news__feature a:hover > div:after {
      opacity: 1;
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0); }
  .latest-news__more {
    position: relative;
    padding-bottom: 3.75rem; }
    @media print, screen and (min-width: 64em) {
      .latest-news__more {
        width: 41.66667%;
        padding: 1.875rem 0; } }
    @media screen and (min-width: 75em) {
      .latest-news__more {
        width: 50%;
        -webkit-align-self: center;
            -ms-flex-item-align: center;
                align-self: center; } }
    .latest-news__more h3 {
      color: #000000;
      -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
      .latest-news__more h3:hover {
        color: #EB5E94; }

.wgu-logo {
  display: block;
  fill: #151F35; }
  @media print, screen and (max-width: 39.99875em) {
    .wgu-logo {
      height: auto; } }
  .is-white .wgu-logo {
    fill: #ffffff; }

  .logo-wrapper svg {
    width: 100%;
    height: 100%; }

main {
  position: relative;
  overflow: hidden;
  display: block;
  z-index: 1;
  background-color: #ffffff; }
  main:focus {
    outline: 0; }

.masthead {
  position: relative;
  padding: 2.5rem 0 0;
  background-color: #f0f4f5; }
  .masthead.theme-pink {
    background-color: #EB5E94; }
    .masthead.theme-pink p {
      color: #ffffff;
      background-color: #EB5E94;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
  @media print, screen and (min-width: 64em) {
    .masthead {
      background-color: transparent; }
      .masthead.theme-pink {
        background-color: transparent; } }
  @media screen and (min-width: 75em) {
    .masthead {
      padding-top: 5rem; } }
  @media screen and (min-width: 120em) {
    .masthead {
      padding-top: 6.25rem; } }
  .masthead.border-graphic:after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    bottom: -1.25rem;
    width: 13.75rem;
    height: 1.25rem;
    background-color: #EB5E94; }
    @media print, screen and (min-width: 64em) {
      .masthead.border-graphic:after {
        bottom: 2.5rem;
        margin-bottom: -1.25rem;
        width: 15%; } }
    @media screen and (min-width: 75em) {
      .masthead.border-graphic:after {
        bottom: 5rem; } }
    @media screen and (min-width: 120em) {
      .masthead.border-graphic:after {
        bottom: 6.25rem; } }
  .masthead__inner {
    position: relative;
    max-width: none; }
    @media print, screen and (min-width: 64em) {
      .masthead__inner::before, .masthead__inner::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; }
      .masthead__inner::after {
        clear: both; }
      .masthead__inner:before {
        content: "";
        position: absolute;
        top: -2.5rem;
        right: 0;
        bottom: 2.5rem;
        left: -9.52381%;
        display: block;
        background-color: #f0f4f5; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .masthead__inner:before {
      top: -5rem;
      bottom: 5rem; } }
  @media screen and (min-width: 64em) and (min-width: 120em) {
    .masthead__inner:before {
      top: -6.25rem;
      bottom: 6.25rem; } }
    @media print, screen and (min-width: 64em) {
        .theme-pink .masthead__inner:before {
          background-color: #EB5E94; } }
  .masthead__content {
    position: relative;
    padding: 0 0 2.5rem;
    z-index: 2; }
    @media print, screen and (min-width: 40em) {
      .masthead__content {
        padding-bottom: 3.75rem; } }
    @media print, screen and (min-width: 64em) {
      .masthead__content {
        float: left;
        width: 50%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding: 0 2.5rem 5rem 0; } }
  @media screen and (min-width: 64em) and (min-width: 75em) {
    .masthead__content {
      padding-bottom: 7.5rem; } }
  @media screen and (min-width: 64em) and (min-width: 120em) {
    .masthead__content {
      padding-bottom: 8.75rem; } }
  .masthead__text {
    position: relative;
    margin-top: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .masthead__text {
        margin-top: 3.75rem; } }
    @media print, screen and (min-width: 64em) {
      .masthead__text {
        margin-top: 15%; } }
  .theme-pink .masthead__title {
    background-color: #EB5E94;
    color: #ffffff; }
    .theme-pink .masthead__title span {
      color: #ffffff; }
  .masthead__title + * {
    margin-top: 1.875rem; }
  .masthead__image {
    position: relative;
    z-index: 1; }
    @media print, screen and (max-width: 63.99875em) {
      .masthead__image {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box; } }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .masthead__image {
        height: 40vh;
        overflow: hidden; }
        .masthead__image img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover;
          font-family: 'object-fit: cover;'; } }
    @media print, screen and (min-width: 64em) {
      .masthead__image {
        float: left;
        width: 59.52381%;
        margin-right: -9.52381%; } }
    .masthead__image img {
      width: 100%; }
    @media print, screen and (min-width: 64em) {
      .masthead__image--stretch {
        position: absolute;
        top: 0;
        right: 0;
        height: 100%; }
        .masthead__image--stretch img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          -o-object-fit: cover;
             object-fit: cover;
          font-family: 'object-fit: cover;'; } }
  @media print, screen and (min-width: 64em) {
    .masthead__form-wide {
      width: 200%;
      margin-top: 2.5rem;
      margin-bottom: 5rem; } }
  @media screen and (min-width: 90em) {
    .masthead__form-wide {
      margin-top: 4.375rem;
      margin-bottom: 8.125rem; } }
  @media screen and (min-width: 120em) {
    .masthead__form-wide {
      margin-top: 6.25rem;
      margin-bottom: 9.375rem; } }
  .masthead__detail-text {
    padding: 2.5rem 0; }
    @media print, screen and (max-width: 63.99875em) {
      .masthead__detail-text {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-left: 9.52381%;
        padding-right: 9.52381%;
        background-color: #ffffff; } }
    @media screen and (min-width: 75em) {
      .masthead__detail-text {
        padding: 3.75rem 0; } }
  @media print, screen and (min-width: 64em) {
    .masthead--detail .masthead__inner:before {
      content: none; } }
  .masthead--detail .masthead__content {
    padding-bottom: 0; }
  .masthead--detail .masthead__text {
    padding-bottom: 2.5rem; }
    @media print, screen and (min-width: 64em) {
      .masthead--detail .masthead__text {
        padding-bottom: 5rem; }
        .masthead--detail .masthead__text:before {
          content: "";
          position: absolute;
          bottom: 0;
          top: -9999px;
          left: -9999px;
          right: -9999px;
          background-color: #f0f4f5; }
        .masthead--detail .masthead__text > * {
          position: relative; } }
    @media screen and (min-width: 90em) {
      .masthead--detail .masthead__text {
        padding-bottom: 8.75rem; } }
    @media screen and (min-width: 120em) {
      .masthead--detail .masthead__text {
        padding-bottom: 10.625rem; } }
  .masthead--detail .masthead__image {
    z-index: 3; }
  @media print, screen and (min-width: 64em) {
    .masthead--detail.theme-pink .masthead__text {
      background-color: #EB5E94; }
      .masthead--detail.theme-pink .masthead__text:before {
        background-color: #EB5E94; } }
  .masthead--event {
    background-color: transparent; }
    .masthead--event a {
      -webkit-transition: all ease 0.3s;
      transition: all ease 0.3s; }
      .masthead--event a:hover {
        padding-left: 1rem; }
    .masthead--event.border-graphic:after {
      bottom: 0; }
    .masthead--event li {
      color: #fff; }
  .masthead--event .masthead__inner:before {
    content: none; }
  @media print, screen and (max-width: 63.99875em) {
    .masthead--event .masthead__inner {
      padding-bottom: 3.125rem; } }
  @media print, screen and (min-width: 64em) {
    .masthead--event .masthead__inner {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end; } }
  @media screen and (min-width: 75em) {
    .masthead--event .masthead__content {
      width: 58.33333%; } }
  @media print, screen and (min-width: 64em) {
    .masthead--event .masthead__text {
      margin-top: 7%; } }
  .masthead__panel {
    padding: 1.875rem;
    background-color: #EB5E94; }
    @media print, screen and (min-width: 64em) {
      .masthead__panel {
        width: 50%; } }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .masthead__panel {
        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; } }
    @media screen and (min-width: 75em) {
      .masthead__panel {
        width: 41.66667%;
        padding: 3.125rem; } }
    @media screen and (min-width: 120em) {
      .masthead__panel {
        padding: 3.75rem;
        width: 33.33333%; } }
    .masthead__panel h2 {
      font-size: 2.625rem;
      line-height: 1;
      letter-spacing: -0.04em;
      color: #ffffff; }
      @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
        .masthead__panel h2 {
          width: 40%; } }
      @media screen and (min-width: 75em) {
        .masthead__panel h2 {
          font-size: 4.5rem;
          line-height: .76; } }
      @media screen and (min-width: 120em) {
        .masthead__panel h2 {
          font-size: 5.75rem; } }
    .masthead__panel ul {
      list-style: none;
      margin: 0;
      font-size: 1.25rem;
      font-weight: 500; }
      @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
        .masthead__panel ul {
          width: 50%; } }
      @media screen and (min-width: 75em) {
        .masthead__panel ul {
          font-size: 2rem;
          letter-spacing: -0.04em; } }
    .masthead__panel li {
      padding-left: 30px;
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right-white.svg");
      background-repeat: no-repeat;
      background-size: 1.25rem;
      background-position: 0 7px; }
      @media screen and (min-width: 75em) {
        .masthead__panel li {
          background-position: 0 16px; } }
    .masthead__panel a {
      color: #ffffff; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .masthead--post .masthead__text {
      width: 80%; } }
  @media screen and (min-width: 75em) {
    .masthead--post .masthead__text {
      width: 87%; } }
  @media print, screen and (max-width: 39.99875em) {
    .masthead--post .masthead__text p {
      display: none; } }
  @media screen and (min-width: 75em) {
    .masthead--post .masthead__text p {
      max-width: 41.25rem; } }
  @media print, screen and (min-width: 64em) {
    .masthead--profile .masthead__inner {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .masthead--profile .masthead__inner:before {
        right: auto;
        bottom: 0;
        width: 72.52381%; } }
  @media print, screen and (min-width: 64em) {
    .masthead--profile .masthead__content {
      width: 63%; } }
  @media print, screen and (min-width: 64em) {
    .masthead--profile .masthead__title {
      width: 85%; } }
  .masthead__meta {
    margin-bottom: 0; }
    .masthead__meta::before, .masthead__meta::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; }
    .masthead__meta::after {
      clear: both; }
    @media screen and (min-width: 75em) {
      .masthead__meta {
        width: 80%; } }
    @media screen and (min-width: 90em) {
      .masthead__meta {
        width: 65%; } }
    .masthead__meta dt {
      float: left;
      clear: left;
      margin-right: 0.3125rem;
      font-weight: normal; }
      .masthead__meta dt:after {
        content: ":"; }
    .masthead__meta dd {
      float: left;
      clear: right;
      margin-bottom: 1.25rem; }
      @media screen and (min-width: 75em) {
        .masthead__meta dd {
          margin-bottom: 2.5rem; } }
      .masthead__meta dd:last-child {
        margin-bottom: 0; }
    .theme-pink .masthead__meta {
      color: #ffffff;
      background-color: #EB5E94; }
  .masthead__contact {
    background-color: #ffffff; }
    @media print, screen and (max-width: 63.99875em) {
      .masthead__contact {
        margin-left: -9.52381%;
        margin-right: -9.52381%;
        width: 119.04762%;
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-left: 9.52381%;
        padding-right: 9.52381%;
        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: 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: 64em) {
      .masthead__contact {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-align-content: flex-end;
            -ms-flex-line-pack: end;
                align-content: flex-end;
        float: left;
        width: 37%;
        padding-bottom: 5rem; } }
    @media screen and (min-width: 75em) {
      .masthead__contact {
        padding-bottom: 7.5rem; } }
    @media screen and (min-width: 120em) {
      .masthead__contact {
        padding-bottom: 8.75rem; } }
    .masthead__contact img {
      width: 100%; }
      @media print, screen and (max-width: 63.99875em) {
        .masthead__contact img {
          -webkit-box-ordinal-group: 3;
          -webkit-order: 2;
              -ms-flex-order: 2;
                  order: 2;
          max-width: 15rem; } }
      @media print, screen and (min-width: 64em) {
        .masthead__contact img {
          width: 60%;
          max-width: 21.25rem;
          -webkit-align-self: flex-end;
              -ms-flex-item-align: end;
                  align-self: flex-end; } }
    .masthead__contact dl {
      margin: 0; }
      @media print, screen and (max-width: 63.99875em) {
        .masthead__contact dl {
          -webkit-box-ordinal-group: 2;
          -webkit-order: 1;
              -ms-flex-order: 1;
                  order: 1;
          margin: 1.875rem 1.875rem 1.875rem 0; } }
      @media print, screen and (min-width: 64em) {
        .masthead__contact dl {
          margin: 1.875rem 0 0 1.875rem;
          -webkit-box-flex: 1;
          -webkit-flex: 1 100%;
              -ms-flex: 1 100%;
                  flex: 1 100%; } }
      @media screen and (min-width: 90em) {
        .masthead__contact dl {
          margin: 3.75rem 0 0 3.75rem; } }
      .masthead__contact dl a {
        font-weight: bold; }
      .masthead__contact dl dd {
        margin-bottom: 1.25rem; }
        @media screen and (min-width: 90em) {
          .masthead__contact dl dd {
            margin-bottom: 1.875rem; } }
        .masthead__contact dl dd:last-child {
          margin-bottom: 0; }
  .masthead__scroll {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: none;
    position: absolute;
    right: 0;
    bottom: 0;
    cursor: pointer;
    z-index: 3; }
    .masthead__scroll svg {
      width: 100%;
      height: 100%; }
    .masthead__scroll.left {
      left: 0; }
    .masthead__scroll.bg-navy svg {
      color: #151F35; }
      .masthead__scroll.bg-navy svg path:last-child {
        stroke: #ffffff; }
    @media print, screen and (max-width: 63.99875em) {
      .masthead__scroll {
        width: 10%; } }
    @media print, screen and (min-width: 40em) {
      .masthead__scroll {
        right: 2.75rem;
        width: 3.75rem; }
        .masthead__scroll.left {
          left: 2.75rem; } }
    @media screen and (min-width: 75em) {
      .masthead__scroll {
        right: 5.5rem; }
        .masthead__scroll.left {
          left: 5.5rem; } }
    .masthead__scroll.bg-blue {
      color: #41A494; }
      .masthead__scroll.bg-blue svg {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex; }
        .masthead__scroll.bg-blue svg path:first-child {
          color: #41A494; }

.masthead-image {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #EB5E94;
  overflow: hidden; }
  .masthead-image__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    min-height: 82vh;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 9.0625rem 0 0;
    max-width: none; }
    .masthead-image__inner > * {
      -webkit-box-flex: 1;
      -webkit-flex: 1 100%;
          -ms-flex: 1 100%;
              flex: 1 100%; }
    @media print, screen and (min-width: 40em) {
      .masthead-image__inner {
        padding: 12.25rem 0 1.25rem;
        min-height: 70vh; } }
    @media print, screen and (min-width: 64em) {
      .masthead-image__inner {
        min-height: 100vh;
        padding-bottom: 3.75rem; } }
    @media screen and (min-width: 75em) {
      .masthead-image__inner {
        padding: 14.75rem 0 3.75rem; } }
    @media screen and (min-width: 120em) {
      .masthead-image__inner {
        padding: 16rem 0 3.75rem; } }
  .masthead-image.border-graphic .masthead-image__inner:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 8%;
    width: 25%;
    height: 1.25rem;
    background-color: #EB5E94; }
  .masthead-image__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
    .masthead-image__image img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover;
      font-family: 'object-fit: cover;'; }
    .masthead-image__image:after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(0,0,0,.36);
    }
  .masthead-image__text {
    position: relative;
    -webkit-align-self: flex-end;
        -ms-flex-item-align: end;
            align-self: flex-end;
    margin-top: 2.5rem;
    color: #ffffff;
    z-index: 2; }
    .masthead-image__text ul {
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .masthead-image__text ul.bg-navy a {
        color: #41A494; }
      .masthead-image__text ul li:not(:last-child) {
        margin-right: 1.25rem; }
      .masthead-image__text ul li a {
        letter-spacing: -0.01em;
        line-height: 1.1875rem; }
        .masthead-image__text ul li a:hover {
          text-decoration: underline;
          text-underline-offset: 2px; }
        @media print, screen and (min-width: 40em) {
          .masthead-image__text ul li a {
            font-size: 1rem; } }
      @media screen and (min-width: 75em) {
        .masthead-image__text ul {
          margin-top: 1.875rem;
          margin-bottom: 0; } }
  .masthead-image__title {
    width: 58.33333%; }
    .masthead-image__title + * {
      margin-top: 1.25rem; }
    .masthead-image__title strong {
      display: block;
      font-weight: 600;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
    .masthead-image__title.display-1 {
      line-height: 87.6%;
      letter-spacing: -0.04em;
      margin-bottom: 2.5rem; }
      @media screen and (min-width: 75em) {
        .masthead-image__title.display-1 {
          margin-bottom: 1.25rem; } }
  .masthead-image__shape {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 50%; }
    @media print, screen and (max-width: 39.99875em) {
      .masthead-image__shape {
        width: 72%; } }
    @media screen and (min-width: 75em) {
      .masthead-image__shape {
        min-width: 37.6875rem;
        max-width: 31.25rem; } }
    @media (min-width: 1200px) and (min-height: 700px) and (max-width: 1440px) and (max-height: 910px) {
      .masthead-image__shape {
        width: 35%; } }
    .masthead-image__shape svg {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      height: 100%; }
    .masthead-image__shape[class*="bg-"] {
      background: none; }
    .masthead-image__shape.bg-navy svg {
      color: #151F35; }
    .masthead-image__shape.bg-blue svg {
      color: #41A494; }
    .masthead-image__shape.bg-pink svg {
      color: #EB5E94; }

.menu-feature {
  position: relative; }
  @media screen and (min-width: 75em) {
    .menu-feature.xlarge-offset-1 {
      margin: 0 auto; } }
  .menu-feature a {
    display: block;
    color: #ffffff; }
    .menu-feature a:focus {
      outline: 2px dotted #151F35; }
    @media screen and (min-width: 75em) {
      .menu-feature a {
        position: relative;
        width: 15.3125rem;
        height: 15.3125rem;
        padding-top: 15.3125rem; }
        .menu-feature a img {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; } }
    @media screen and (min-width: 120em) {
      .menu-feature a {
        width: 21.25rem;
        height: 21.25rem;
        padding-top: 21.25rem; } }
  .menu-feature__text {
    position: absolute;
    left: -1.875rem;
    bottom: 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 1.875rem;
    width: 19.375rem;
    background-color: #41A494; }
    .menu-feature__text .display-6 {
      line-height: 87.6%;
      letter-spacing: -0.04em;
      margin-bottom: 0.938rem; }
      .menu-feature__text .display-6 strong {
        font-weight: 600; }
      @media screen and (min-width: 75em) {
        .menu-feature__text .display-6 {
          font-size: 2.625rem; } }
      @media screen and (min-width: 120em) {
        .menu-feature__text .display-6 {
          font-size: 3.375rem;
          margin-bottom: 1.25rem; } }
    .menu-feature__text p {
      font-weight: 400;
      letter-spacing: -0.01em;
      line-height: 117%;
      margin-bottom: 1.625rem;
      max-width: 9.25rem; }
      .menu-feature__text p strong {
        font-weight: 700;
        line-height: 1; }
      @media screen and (min-width: 120em) {
        .menu-feature__text p {
          font-size: 1rem;
          margin-bottom: 2.5rem;
          max-width: 12.125rem; } }
    @media screen and (min-width: 75em) {
      .menu-feature__text {
        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-justify-content: space-around;
            -ms-flex-pack: distribute;
                justify-content: space-around;
        left: 100%;
        top: 50%;
        max-width: 15.3125rem;
        height: 100%;
        padding: 1.625rem 2.063rem 2rem 1.625rem; } }
    @media screen and (min-width: 120em) {
      .menu-feature__text {
        width: 21.25rem;
        padding: 2.125rem 3.125rem 2.125rem 3.125rem;
        max-width: none; } }
  .menu-feature p:last-child {
    margin-bottom: 0; }

.menu-toggle {
  position: absolute;
  top: 1.625rem;
  right: 8%;
  margin-right: 3rem;
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
  -webkit-transition: all .25s ease-out;
  transition: all .25s ease-out; }
  .menu-toggle span:before, .menu-toggle:before, .menu-toggle:after {
    content: "";
    position: absolute;
    right: 0;
    width: 1.875rem;
    height: 0.125rem;
    background-color: #151F35;
    -webkit-transition: all .25s ease-out;
    transition: all .25s ease-out; }
    .is-white .menu-toggle span:before, .is-white .menu-toggle:before, .is-white .menu-toggle:after {
      background-color: #ffffff; }
    @media print, screen and (max-width: 74.99875em) {
      .search-open .menu-toggle span:before, .search-open .menu-toggle:before, .search-open .menu-toggle:after {
        background-color: #151F35; } }
  .menu-toggle:before {
    top: 0; }
  .menu-toggle:after {
    top: 0.5rem; }
  .menu-toggle span {
    text-indent: 100%;
    width: 100%;
    white-space: nowrap;
    overflow: hidden;
    display: block;
    padding: 0;
    opacity: 1;
    -webkit-transition: opacity .25s ease-out;
    transition: opacity .25s ease-out;
    -webkit-filter: contrast(233.33%);
            filter: contrast(233.33%); }
    .menu-toggle span:before {
      top: 0.25rem; }
    .is-white .menu-toggle span {
      color: #ffffff; }
  @media screen and (min-width: 75em) {
    .menu-toggle {
      display: none; } }
  .menu-toggle.is-active:before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
    top: 0.5rem; }
  .menu-toggle.is-active:after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg); }
  .menu-toggle.is-active span {
    opacity: 0; }
  .is-white .menu-toggle.is-active span:before, .is-white .menu-toggle.is-active:before, .is-white .menu-toggle.is-active:after {
    background-color: #151F35; }
  .menu-open .menu-toggle,
  .search-open .menu-toggle {
    position: fixed; }

.more {
  overflow: hidden; }
  .more h2 {
    position: relative;
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 64em) {
      .more h2 {
        margin-bottom: 3.125rem; } }
    .more h2:after {
      content: "";
      display: block;
      position: absolute;
      bottom: -2.5rem;
      left: 0;
      height: 1.25rem;
      width: 40%;
      max-width: 12.5rem;
      background-color: #EB5E94; }
      @media print, screen and (min-width: 64em) {
        .more h2:after {
          bottom: -3.125rem; } }
  .more__inner {
    position: relative;
    padding-top: 3.75rem; }
    @media print, screen and (min-width: 40em) {
      .more__inner {
        padding-top: 5rem; } }
    @media screen and (min-width: 75em) {
      .more__inner {
        padding-top: 6.25rem; } }
    .more__inner:before {
      content: "";
      position: absolute;
      top: 0;
      left: -9.52381%;
      right: -9.52381%;
      height: 100%;
      background-color: #f0f4f5; }
      @media print, screen and (min-width: 64em) {
        .more__inner:before {
          right: 8%; } }
  @media print, screen and (min-width: 64em) {
    .more__cards {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
          -ms-flex-flow: row wrap;
              flex-flow: row wrap;
      margin-left: -0.625rem;
      margin-right: -0.625rem; }
      .more__cards > .content-card {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto;
        width: calc(33.33333% - 1.25rem);
        margin-left: 0.625rem;
        margin-right: 0.625rem; } }
  @media screen and (min-width: 75em) {
    .more__cards {
      margin-left: -1.24687rem;
      margin-right: -1.24687rem; }
      .more__cards > .content-card {
        -webkit-box-flex: 0;
        -webkit-flex: 0 0 auto;
            -ms-flex: 0 0 auto;
                flex: 0 0 auto;
        width: calc(33.33333% - 2.49375rem);
        margin-left: 1.24687rem;
        margin-right: 1.24687rem; } }
  .more__cards .slick-track > * {
    margin-right: 2.5rem; }
  .more .slick-list {
    overflow: visible; }
  .more.theme-dark h2 {
    color: #ffffff;
    background-color: #1a1a1a;
    display: inline-block; }
    .more.theme-dark h2:after {
      background-color: #41A494; }
  .more.theme-dark .more__inner:before {
    background-color: #1a1a1a; }

#noItemsFoundMessage h2 {
  margin-bottom: 6rem; }

#noItemsFoundMessage button {
  color: #EB5E94;
  font-weight: bold;
  text-decoration: underline; }
  #noItemsFoundMessage button:hover {
    cursor: pointer;
    text-decoration: none; }

.search-toggle {
  position: absolute;
  top: 1.25rem;
  right: 8%;
  width: 2.5rem;
  height: 2.5rem;
  z-index: 2;
  background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg");
  background-repeat: no-repeat;
  background-size: 1.625rem;
  background-position: center 1px; }
  @media screen and (min-width: 75em) {
    .search-toggle {
      margin-right: -3.75rem;
      top: 3.75rem;
      background-size: 1rem;
      background-position: center 0; } }
  .is-white .search-toggle {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-white.svg"); }
    .is-white .search-toggle span {
      color: #ffffff; }
    .is-white .search-toggle:focus {
      color: #ffffff; }
      .is-white .search-toggle:focus span {
        color: #ffffff; }
  @media print, screen and (max-width: 74.99875em) {
    .menu-open.is-white .search-toggle {
      background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); } }
  .is-white .search-toggle.is-active {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); }
  @media print, screen and (max-width: 74.99875em) {
    .menu-open .search-toggle,
    .search-open .search-toggle {
      position: fixed; } }

.pagination {
  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-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin: 0;
  list-style: none; }
  @media print, screen and (max-width: 39.99875em) {
    .pagination {
      -webkit-box-pack: center;
      -webkit-justify-content: center;
          -ms-flex-pack: center;
              justify-content: center; } }
  @media print, screen and (min-width: 40em) {
    .pagination {
      margin-bottom: -1.813rem; } }
  @media print, screen and (max-width: 39.99875em) {
    .pagination li:first-child, .pagination li:last-child {
      -webkit-box-flex: 1;
      -webkit-flex: 1 100%;
          -ms-flex: 1 100%;
              flex: 1 100%; } }
  @media print, screen and (min-width: 40em) {
    .pagination li:first-child {
      margin-right: auto; } }
  @media print, screen and (min-width: 40em) {
    .pagination li:last-child {
      margin-left: auto; } }
  .pagination .hollow.button.clear {
    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;
    text-align: center;
    border-color: #CB0064;
    color: #CB0064;
    font-family: "degular";
    letter-spacing: -0.01em;
    line-height: 1;
    text-transform: capitalize;
    padding: 0.5625rem 1.25rem;
    min-height: 2.4rem; }
    .pagination .hollow.button.clear:hover {
      background-color: #CB0064;
      color: #ffffff; }
    @media screen and (min-width: 75em) {
      .pagination .hollow.button.clear {
        font-size: 1.375rem; } }
  .pagination .button.clear {
    padding: 0.8125rem;
    font-family: "degular"; }
    .pagination .button.clear, .pagination .button.clear.disabled, .pagination .button.clear[disabled], .pagination .button.clear.disabled:hover, .pagination .button.clear[disabled]:hover, .pagination .button.clear.disabled:focus, .pagination .button.clear[disabled]:focus {
      color: #000000; }
    .pagination .button.clear:hover, .pagination .button.clear:focus {
      color: black; }
    .pagination .button.clear.is-active, .pagination .button.clear.is-active.disabled, .pagination .button.clear.is-active[disabled], .pagination .button.clear.is-active.disabled:hover, .pagination .button.clear.is-active[disabled]:hover, .pagination .button.clear.is-active.disabled:focus, .pagination .button.clear.is-active[disabled]:focus {
      color: #EB5E94; }
    .pagination .button.clear.is-active:hover, .pagination .button.clear.is-active:focus {
      color: #921243; }
    @media screen and (min-width: 75em) {
      .pagination .button.clear {
        font-size: 1.375rem; } }
  .pagination .is-active a {
    color: #EB5E94; }

.panel {
  padding: 2.5rem 0;
  background-color: #f0f4f5; }
  @media print, screen and (min-width: 40em) {
    .panel {
      padding: 3.75rem 0; } }
  @media print, screen and (min-width: 64em) {
    .panel {
      padding: 5rem 0; } }
  @media screen and (min-width: 75em) {
    .panel {
      padding: 6.25rem 0; } }

@media print, screen and (max-width: 63.99875em) {
  .masthead--detail + .panel {
    margin-top: 0; } }

.play-video {
  display: block;
  position: relative;
  cursor: pointer; }
  .play-video:before, .play-video:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
        -ms-transform: translateX(-50%) translateY(-50%);
            transform: translateX(-50%) translateY(-50%); }
  .play-video:before {
    width: 5.75rem;
    height: 5.75rem;
    background-color: #EB5E94;
    border-radius: 999px;
    z-index: 2;
    -webkit-transition: background-color 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: background-color 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  .play-video:after {
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 43px solid #ffffff;
    z-index: 3;
    margin-left: 5px;
    -webkit-transition: border-color 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition: border-color 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  .play-video:hover:before {
    background-color: #FDC400; }
  .play-video:hover:after {
    border-left-color: #000000; }
  .play-video img {
    position: relative;
    z-index: 1; }

@media print, screen and (max-width: 74.99875em) {
  .primary-menu {
    margin-left: auto;
    margin-right: auto;
    width: 84%; } }

.primary-menu ul {
  margin-bottom: 0; }
  @media print, screen and (max-width: 74.99875em) {
    .primary-menu ul li {
      width: 100%; } }
  .primary-menu ul li > a,
  .primary-menu ul li > span,
  .primary-menu ul li > button {
    display: block;
    width: 100%;
    text-transform: uppercase;
    font-weight: bold;
    padding: 0;
    text-align: left; }
    @media print, screen and (max-width: 74.99875em) {
      .primary-menu ul li > a,
      .primary-menu ul li > span,
      .primary-menu ul li > button {
        -webkit-box-sizing: border-box;
                box-sizing: border-box;
        padding-right: 1.25rem; } }
  .primary-menu ul li > span,
  .primary-menu ul li > button {
    cursor: pointer; }
    @media print, screen and (max-width: 74.99875em) {
      .primary-menu ul li > span,
      .primary-menu ul li > button {
        position: relative; }
        .primary-menu ul li > span:before, .primary-menu ul li > span:after,
        .primary-menu ul li > button:before,
        .primary-menu ul li > button:after {
          content: "";
          position: absolute;
          background-color: #8a8a8a;
          opacity: 1;
          -webkit-transition: opacity .25s ease-in-out;
          transition: opacity .25s ease-in-out; }
        .primary-menu ul li > span:before,
        .primary-menu ul li > button:before {
          right: 0;
          width: 0.75rem;
          height: 0.125rem; }
        .primary-menu ul li > span:after,
        .primary-menu ul li > button:after {
          right: 0.3125rem;
          width: 0.125rem;
          height: 0.75rem; }
        .primary-menu ul li > span.is-active:after,
        .primary-menu ul li > button.is-active:after {
          opacity: 0; } }

@media screen and (min-width: 75em) {
  .primary-menu > ul {
    margin-right: -0.9375rem; }
    .primary-menu > ul::before, .primary-menu > ul::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; }
    .primary-menu > ul::after {
      clear: both; } }

@media screen and (min-width: 120em) {
  .primary-menu > ul {
    margin-right: -1.875rem; } }

@media print, screen and (max-width: 74.99875em) {
  .primary-menu > ul > li {
    margin-bottom: 0.9375rem; } }

@media screen and (min-width: 75em) {
  .primary-menu > ul > li {
    float: left; } }

.primary-menu > ul > li > a,
.primary-menu > ul > li > span,
.primary-menu > ul > li > button {
  font-size: 2rem;
  line-height: 1.32;
  letter-spacing: -0.01em;
  color: #151F35;
  text-transform: capitalize;
  font-family: "degular";
  font-weight: 700;
  letter-spacing: -0.01em; }
  @media screen and (min-width: 75em) {
    .primary-menu > ul > li > a,
    .primary-menu > ul > li > span,
    .primary-menu > ul > li > button {
      position: relative;
      font-size: 1rem;
      padding: 0.75rem 1rem 1.688rem 1rem; }
      .primary-menu > ul > li > a:after,
      .primary-menu > ul > li > span:after,
      .primary-menu > ul > li > button:after {
        content: "";
        position: absolute;
        left: 0.9375rem;
        bottom: 0.75rem;
        width: 0;
        height: 0.3125rem;
        background-color: #41A494;
        -webkit-transition: width .15s ease-in-out;
        transition: width .15s ease-in-out; }
      .is-white .primary-menu > ul > li > a, .is-white
      .primary-menu > ul > li > span, .is-white
      .primary-menu > ul > li > button {
        color: #ffffff; } }
  @media screen and (min-width: 120em) {
    .primary-menu > ul > li > a,
    .primary-menu > ul > li > span,
    .primary-menu > ul > li > button {
      padding-left: 1.875rem;
      padding-right: 1.875rem;
      font-size: 1.125rem; }
      .primary-menu > ul > li > a:after,
      .primary-menu > ul > li > span:after,
      .primary-menu > ul > li > button:after {
        left: 1.875rem; } }
  @media print, screen and (max-width: 74.99875em) {
    .primary-menu > ul > li > a:hover, .primary-menu > ul > li > a:focus,
    .primary-menu > ul > li > span:hover,
    .primary-menu > ul > li > span:focus,
    .primary-menu > ul > li > button:hover,
    .primary-menu > ul > li > button:focus {
      /*color: inherit;*/ } }
  @media screen and (min-width: 75em) {
    .primary-menu > ul > li > a:hover:after, .primary-menu > ul > li > a:focus:after,
    .primary-menu > ul > li > span:hover:after,
    .primary-menu > ul > li > span:focus:after,
    .primary-menu > ul > li > button:hover:after,
    .primary-menu > ul > li > button:focus:after {
      width: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .primary-menu > ul > li > a:focus,
    .primary-menu > ul > li > span:focus,
    .primary-menu > ul > li > button:focus {
      color: inherit; } }

@media print, screen and (max-width: 74.99875em) {
  .primary-menu > ul > li > span:before,
  .primary-menu > ul > li > button:before {
    top: 1.25rem; }
  .primary-menu > ul > li > span:after,
  .primary-menu > ul > li > button:after {
    top: 0.9375rem; } }

@media screen and (min-width: 75em) {
  .primary-menu > ul > li.is-active > a:after,
  .primary-menu > ul > li.is-active > span:after,
  .primary-menu > ul > li.is-active > button:after {
    width: 1.25rem; } }

.primary-menu .sub-nav {
  display: none;
  padding: 2.1875rem 0;
  background-color: #F0F4F5; }
  @media print, screen and (max-width: 74.99875em) {
    .primary-menu .sub-nav {
      margin-left: -9.52381%;
      margin-right: -9.52381%;
      width: 119.04762%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding-left: 9.52381%;
      padding-right: 9.52381%;
      margin-top: 1.25rem;
      margin-bottom: 1.5625rem; }
      .primary-menu .sub-nav.is-active {
        display: block; } }
  @media screen and (min-width: 75em) {
    .primary-menu .sub-nav .close-button {
      /*display: none; */
      position: absolute;
      top: 0.5rem;
      margin-right: -3.75rem;
      right: 8%; } }
  @media screen and (min-width: 75em) {
    .primary-menu .sub-nav {
      display: block;
      position: absolute;
      padding-top: 8.1875rem;
      padding-bottom: 4.25rem;
      width: 100%;
      top: 6.8125rem;
      left: 0;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding-left: 8%;
      padding-right: 8%;
      opacity: 0;
      -webkit-transform: translateY(-200%);
          -ms-transform: translateY(-200%);
              transform: translateY(-200%);
      -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s, -webkit-transform 0s 0.25s; }
      .primary-menu .sub-nav.is-active {
        opacity: 1;
        -webkit-transform: translateY(0);
            -ms-transform: translateY(0);
                transform: translateY(0);
        -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s, -webkit-transform 0s; } }
  .primary-menu .sub-nav ul li {
    margin-bottom: 1.5625rem; }
    @media screen and (min-width: 75em) {
      .primary-menu .sub-nav ul li {
        margin-bottom: 0.9375rem; } }
    @media screen and (min-width: 120em) {
      .primary-menu .sub-nav ul li {
        margin-bottom: 1.875rem; } }
    .primary-menu .sub-nav ul li:last-child {
      margin-bottom: 0; }
    .primary-menu .sub-nav ul li a,
    .primary-menu .sub-nav ul li span,
    .primary-menu .sub-nav ul li button {
      font-size: 1rem;
      line-height: 1.3125rem;
      text-transform: capitalize;
      font-weight: 700;
      color: #151F35;
      -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      font-family: "degular"; }
      @media screen and (min-width: 75em) {
        .primary-menu .sub-nav ul li a,
        .primary-menu .sub-nav ul li span,
        .primary-menu .sub-nav ul li button {
          padding-right: 1.25rem; } }
      @media screen and (min-width: 120em) {
        .primary-menu .sub-nav ul li a,
        .primary-menu .sub-nav ul li span,
        .primary-menu .sub-nav ul li button {
          font-size: 1.125rem; } }
      .primary-menu .sub-nav ul li a:hover, .primary-menu .sub-nav ul li a:focus,
      .primary-menu .sub-nav ul li span:hover,
      .primary-menu .sub-nav ul li span:focus,
      .primary-menu .sub-nav ul li button:hover,
      .primary-menu .sub-nav ul li button:focus {
        color: #348378; }
      .primary-menu .sub-nav ul li a:focus,
      .primary-menu .sub-nav ul li span:focus,
      .primary-menu .sub-nav ul li button:focus {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content; }
    @media print, screen and (max-width: 74.99875em) {
      .primary-menu .sub-nav ul li span,
      .primary-menu .sub-nav ul li button {
        position: relative; }
        .primary-menu .sub-nav ul li span:before,
        .primary-menu .sub-nav ul li button:before {
          top: 0.4375rem; }
        .primary-menu .sub-nav ul li span:after,
        .primary-menu .sub-nav ul li button:after {
          top: 0.125rem; } }

@media screen and (min-width: 75em) {
  .primary-menu .sub-nav > div > ul {
    position: relative; } }

@media screen and (min-width: 75em) {
  .primary-menu .sub-nav > div > ul > li {
    width: 50%; } }

.primary-menu .sub-nav > div > ul > li > ul {
  display: none; }
  @media print, screen and (max-width: 74.99875em) {
    .primary-menu .sub-nav > div > ul > li > ul {
      margin: 1.875rem 0 1.875rem 2.5rem; }
      .primary-menu .sub-nav > div > ul > li > ul.is-active {
        display: block; } }
  @media screen and (min-width: 75em) {
    .primary-menu .sub-nav > div > ul > li > ul {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      width: 50%;
      opacity: 0;
      -webkit-transform: translateX(-300%);
          -ms-transform: translateX(-300%);
              transform: translateX(-300%);
      -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s;
      transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s 0.25s, -webkit-transform 0s 0.25s; }
      .primary-menu .sub-nav > div > ul > li > ul.is-active {
        opacity: 1;
        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);
        -webkit-transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s;
        transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0s, -webkit-transform 0s; } }
  .primary-menu .sub-nav > div > ul > li > ul > li > a,
  .primary-menu .sub-nav > div > ul > li > ul > li > span,
  .primary-menu .sub-nav > div > ul > li > ul > li > button {
    color: #151F35; }

.search-results {
  margin: 3.75rem 0; }
  .search-results .display-5 {
    font-weight: 700;
    letter-spacing: -0.02em; }
    @media screen and (min-width: 75em) {
      .search-results .display-5 {
        margin-bottom: 3.75rem; } }
  .search-results .search-result-card.specs a {
    display: block; }
    .search-results .search-result-card.specs a:focus {
      outline: 2px dotted; }
  @media screen and (min-width: 75em) {
    .search-results {
      margin: 5.625rem 0 7.125rem 0; } }

.search-result-card {
  padding: 2.5rem 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  margin-top: -1px; }
  @media screen and (min-width: 75em) {
    .search-result-card {
      padding: 3.75rem 0; } }
  .search-result-card h2 {
    margin-bottom: 0.9375rem;
    letter-spacing: -0.04em;
    font-family: "degular";
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    .search-result-card h2 a {
      color: #000000;
      -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
      .search-result-card h2 a:hover, .search-result-card h2 a:focus {
        color: #EB5E94; }
    @media screen and (min-width: 75em) {
      .search-result-card h2 {
        margin-bottom: 1.5rem;
        line-height: 2.25rem;
        width: 85%; } }
  .search-result-card p {
    line-height: 150.7%;
    font-size: 0.875rem; }
    @media print, screen and (min-width: 64em) {
      .search-result-card p {
        width: 90%; } }
    @media screen and (min-width: 75em) {
      .search-result-card p {
        width: 75%;
        font-size: 1rem; } }
  @media print, screen and (min-width: 64em) {
    .search-result-card__link {
      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; } }
  .search-result-card__link h2 {
    color: #000000;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .search-result-card__link p {
    color: #151F35; }
  .search-result-card__link:hover h2 {
    color: #EB5E94; }
  @media print, screen and (min-width: 64em) {
    .search-result-card__text {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
          -ms-flex: 1;
              flex: 1; } }
  @media print, screen and (max-width: 63.99875em) {
    .search-result-card__image {
      max-width: 8.75rem; } }
  @media print, screen and (min-width: 64em) {
    .search-result-card__image {
      width: 25%;
      margin-left: 1.25rem; } }
  @media screen and (min-width: 75em) {
    .search-result-card__image {
      margin-left: 0; } }

@media print, screen and (max-width: 63.99875em) {
  .secondary-content {
    margin-top: 5rem; } }

@media screen and (min-width: 90em) {
  .secondary-content > * {
    width: 75%;
    margin-left: 1.5rem; } }

.secondary-content aside h2 {
  text-transform: capitalize;
  font-weight: 700;
  font-family: "degular"; }
  @media print, screen and (min-width: 40em) {
    .secondary-content aside h2 {
      font-size: 1.125rem; } }
  @media print, screen and (min-width: 64em) {
    .secondary-content aside h2 {
      font-size: 1.5625rem;
      line-height: 2.0625rem;
      margin-bottom: 2.9375rem; } }

.secondary-menu h2 {
  font-size: 1.3125rem;
  line-height: 1.28;
  margin-bottom: 0.875rem;
  letter-spacing: -0.03em; }
  @media screen and (min-width: 75em) {
    .secondary-menu h2 {
      font-size: 1.5rem; } }

.secondary-menu ul {
  padding: 1.875rem 2.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  font-weight: bold;
  text-transform: uppercase;
  color: #000000;
  background-color: #f0f4f5; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .secondary-menu ul::before, .secondary-menu ul::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; }
    .secondary-menu ul::after {
      clear: both; } }
  @media screen and (min-width: 120em) {
    .secondary-menu ul {
      font-size: 1rem; } }
  .secondary-menu ul a {
    color: #000000;
    display: block;
    -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    text-transform: capitalize; }
    .secondary-menu ul a:hover {
      color: #41A494; }
  .secondary-menu ul li {
    position: relative;
    margin-bottom: 1.25rem;
    padding-left: 1.25rem; }
    .secondary-menu ul li a,
    .secondary-menu ul li span {
      position: relative; }
      .secondary-menu ul li a::before,
      .secondary-menu ul li span::before {
        content: "";
        position: absolute;
        right: calc(100% + 0.75rem);
        top: 0;
        bottom: 0;
        margin: auto;
        background-image: url(https://wrexham.ac.uk/media/site-assets/img/chevron-right.svg);
        background-repeat: no-repeat;
        background-position: right;
        background-size: 0.5rem;
        height: 0.5rem;
        padding: 0.5rem; }
    .secondary-menu ul li:last-child {
      margin-bottom: 0; }
    .secondary-menu ul li.is-active a {
      color: #41A494; }

ul[class^=multilevel-linkul] {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-top: 1.25rem; }
  ul[class^=multilevel-linkul] li {
    padding-left: 0; }

span[class^=currentbranch] a {
  color: #41A494;
  -webkit-filter: contrast(1);
          filter: contrast(1); }

#recite-header .recite-controls button {
  -webkit-filter: grayscale(1);
          filter: grayscale(1); }

@media print, screen and (min-width: 64em) {
  .related h2 {
    margin-top: 1.25rem; } }

.related .display-5 {
  font-weight: 600;
  line-height: 95.2%;
  margin-bottom: 1.875rem; }
  @media screen and (min-width: 75em) {
    .related .display-5 {
      font-size: 2.8125rem; } }

.related h3 {
  letter-spacing: -0.03em;
  font-weight: 700; }
  @media screen and (min-width: 75em) {
    .related h3 {
      font-size: 1.5rem;
      line-height: 2rem; } }

.related a:hover h3 {
  color: #41A494; }

.related.invert a,
.related.invert h3 {
  color: #ffffff; }

.related-aside-card {
  padding: 2.125rem 0;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  margin-top: -1px; }
  .related-aside-card__link {
    display: block; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .related-aside-card__link {
        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; } }
  .related-aside-card__link .related-aside-card__title {
    color: #000000; }
  .related-aside-card__image {
    margin-bottom: 1.25rem;
    max-width: 8.75rem; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .related-aside-card__image {
        margin: 0 20px 0 0; } }
  .related-aside-card__title {
    margin-bottom: 0;
    letter-spacing: -0.03em;
    font-family: "degular";
    font-weight: 600;
    max-width: 17.875rem; }
    @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
      .related-aside-card__title {
        -webkit-box-flex: 1;
        -webkit-flex: 1;
            -ms-flex: 1;
                flex: 1; } }
    @media print, screen and (min-width: 64em) {
      .related-aside-card__title {
        font-size: 1.3125rem;
        line-height: 1.4375rem; } }

.reveal {
  padding: 0;
  overflow: visible; }
  @media print, screen and (max-width: 39.99875em) {
    .reveal {
      width: 84%;
      max-width: 101.25rem;
      right: auto;
      left: auto;
      margin: 0 auto;
      min-height: 0;
      height: auto;
      top: 50% !important;
      -webkit-transform: translateY(-70%);
          -ms-transform: translateY(-70%);
              transform: translateY(-70%); } }
  .reveal__content {
    background-color: #ffffff;
    padding: 1.25rem;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
    @media print, screen and (min-width: 64em) {
      .reveal__content {
        padding: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .reveal__content {
        padding: 3.75rem; } }
  .reveal--video .reveal__content {
    padding: 0; }
  .reveal .responsive-embed {
    margin-bottom: 0; }
  .reveal .close-button {
    position: absolute;
    top: -2.5rem;
    right: 0; }

.reveal-content {
  display: none; }

.round-off {
  padding: 2.5rem 0;
  background-color: #1a1a1a; }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .round-off {
      text-align: center; } }
  @media screen and (min-width: 75em) {
    .round-off {
      padding: 3.75rem 0; } }
  @media screen and (min-width: 90em) {
    .round-off {
      padding: 5rem 0; } }
  .round-off h2 {
    color: #ffffff; }
  @media print, screen and (max-width: 39.99875em) {
    .round-off .button {
      width: 100%; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .round-off .button {
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .round-off .button {
      width: 100%; } }

.section-features__item {
  border-top: 10px solid #EB5E94;
  padding-top: 1.25rem;
  margin-top: 2.5rem; }
  @media print, screen and (min-width: 64em) {
    .section-features__item {
      margin-top: 3.75rem;
      padding-top: 1.875rem; } }

.section-features__link {
  display: block;
  color: #151F35; }

.section-features__title {
  margin-bottom: 0.5rem;
  color: #000000;
  -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }

.section-features__link:hover p {
  color: #151F35; }

.section-features__link:hover .section-features__title {
  color: #EB5E94; }

.section-features p:last-child {
  margin-bottom: 0; }

.skip-link__container {
  text-align: left;
  margin: 0 auto;
  width: 84%; }

.skip-link a {
  display: inline-block;
  position: absolute;
  left: -624.9375rem;
  background-color: #FDC400;
  color: #000000; }
  .skip-link a:focus {
    left: 0;
    z-index: 4; }

.site-search {
  margin: 12.5rem auto 3.125rem;
  width: 84%; }
  @media screen and (min-width: 75em) {
    .site-search {
      margin-top: 12.5rem; } }
  @media screen and (min-width: 75em) {
    .site-search label input {
      height: 6.25rem;
      font-size: 3.75rem;
      letter-spacing: -0.05em; } }
  @media screen and (min-width: 120em) {
    .site-search label input {
      height: 8.125rem;
      font-size: 5.625rem; } }

input.border-bottom {
  border-top: 0;
  border-right: 0;
  border-left: 0;
  padding-left: 0;
  padding-right: 0;
  border-width: 0.3125rem;
  border-color: #EB5E94;
  font-weight: 500;
  font-size: 1.25rem;
  letter-spacing: -0.03em;
  color: #151F35; }
  input.border-bottom::-webkit-input-placeholder {
    color: #151F35; }
  input.border-bottom::-moz-placeholder {
    color: #151F35; }
  input.border-bottom:-ms-input-placeholder {
    color: #151F35; }
  input.border-bottom::-ms-input-placeholder {
    color: #151F35; }
  input.border-bottom::placeholder {
    color: #151F35; }
  input.border-bottom:focus {
    -webkit-box-shadow: 0px 2px 0px 0px #1a1a1a;
            box-shadow: 0px 2px 0px 0px #1a1a1a;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    border-width: 0.3125rem;
    border-color: #1a1a1a; }

.slick-prev, .slick-next {
  width: 1.25rem;
  height: 1rem; }
  .slick-prev:before, .slick-next:before {
    content: none; }
  .slick-prev:focus, .slick-next:focus {
    background-color: #FDC400; }

.slick-next {
  background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right.svg"); }
  .slick-next:hover, .slick-next:focus {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-right.svg"); }

.slick-prev {
  background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-left.svg"); }
  .slick-prev:hover, .slick-prev:focus {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/arrow-left.svg"); }

*[class*="invert"] .slick-dots button {
  -webkit-box-shadow: 0px 0px 0px 2px #ffffff inset;
          box-shadow: 0px 0px 0px 2px #ffffff inset; }

.slick-dots li {
  width: 13px;
  height: 13px;
  margin: 0 7px; }
  .slick-dots li button {
    width: 100%;
    height: 100%;
    -webkit-box-shadow: 0px 0px 0px 2px #000000 inset;
            box-shadow: 0px 0px 0px 2px #000000 inset;
    -webkit-transition: -webkit-box-shadow 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: -webkit-box-shadow 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: box-shadow 0.25s cubic-bezier(0.86, 0, 0.07, 1);
    transition: box-shadow 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-box-shadow 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
    .slick-dots li button:before {
      content: "";
      width: 100%;
      height: 100%; }
    .slick-dots li button:hover, .slick-dots li button:focus {
      -webkit-box-shadow: 0px 0px 0px 2px #EB5E94 inset;
              box-shadow: 0px 0px 0px 2px #EB5E94 inset; }
  .slick-dots li.slick-active button {
    -webkit-box-shadow: none;
            box-shadow: none;
    background-color: #EB5E94;
    color: #ffffff !important; }
    .slick-dots li.slick-active button:focus {
      -webkit-box-shadow: 0px 0px 0px 2px #EB5E94;
              box-shadow: 0px 0px 0px 2px #EB5E94; }

.social-links {
  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-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  margin-top: 2.5rem; }
  @media print, screen and (min-width: 64em) {
    .social-links {
      margin-top: 5.3125rem;
      -webkit-box-align: center;
      -webkit-align-items: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      -webkit-flex-wrap: wrap;
          -ms-flex-wrap: wrap;
              flex-wrap: wrap; } }
  .social-links h2 {
    font-size: 1.5rem;
    margin: 0.3125rem 2.5rem 0.75rem; }
  .social-links 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;
    margin-bottom: 0; }
    .social-links ul li a {
      display: block;
      width: 1.5rem;
      height: 1.5rem; }
      .social-links ul li a svg {
        width: 100%;
        height: 100%; }
    .social-links ul li:not(:last-child) {
      margin-right: 2.3125rem; }
  .social-links svg {
    fill: #000000;
    -webkit-transition: fill 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    transition: fill 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .social-links a:hover svg {
    fill: #41A494; }
  .social-links span {
    display: block;
    margin-bottom: 0;
    font-weight: 400;
    line-height: 1;
    margin-top: 1.25rem;
    margin-right: auto; }
    @media print, screen and (min-width: 64em) {
      .social-links span {
        margin-left: 2.5rem;
        margin-top: 0; } }

.wgu-stat {
  padding: 1.5625rem 1.25rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #ffffff;
  background-color: #EB5E94; }
  @media print, screen and (min-width: 40em) {
    .wgu-stat {
      padding: 2.1875rem 1.875rem; } }
  @media screen and (min-width: 90em) {
    .wgu-stat {
      padding: 3.4375rem 2.8125rem 3.75rem; } }
  .wgu-stat p {
    font-size: 0.75rem; }
    .wgu-stat p:last-child {
      margin-bottom: 0; }
    @media print, screen and (min-width: 64em) {
      .wgu-stat p {
        font-size: 0.875rem; } }
    @media screen and (min-width: 90em) {
      .wgu-stat p {
        font-size: 1rem; } }
    @media screen and (min-width: 120em) {
      .wgu-stat p {
        font-size: 1.25rem; } }
  .wgu-stat span {
    display: block;
    margin-bottom: 0.625rem;
    font-size: 2.5rem;
    line-height: 1; }
    @media print, screen and (min-width: 40em) {
      .wgu-stat span {
        font-size: 3.75rem;
        line-height: 0.94;
        letter-spacing: -0.03em;
        margin-bottom: 1.25rem; } }
    @media screen and (min-width: 90em) {
      .wgu-stat span {
        font-size: 5.875rem; } }
    @media screen and (min-width: 120em) {
      .wgu-stat span {
        font-size: 8.75rem; } }
  @media screen and (min-width: 75em) {
    .wgu-stat--medium-down-flex {
      max-width: 25rem; } }
  @media print, screen and (max-width: 63.99875em) {
    .wgu-stat--medium-down-flex p {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .wgu-stat--medium-down-flex p {
      font-size: 1rem; } }
  @media print, screen and (max-width: 63.99875em) {
    .wgu-stat--medium-down-flex span {
      margin-right: 0.9375rem;
      margin-bottom: 0; } }
  @media print, screen and (min-width: 40em) and (max-width: 63.99875em) {
    .wgu-stat--medium-down-flex span {
      margin-right: 1.875rem;
      font-size: 6.25rem; } }

.tabs {
  border: 0; }
  .tabs-content {
    border: 0; }
    @media screen and (min-width: 75em) {
      .tabs-content {
        width: 90%; } }
  .tabs-content.vertical {
    border: 0; }
  .tabs-panel {
    padding: 0; }
    .tabs-panel h2 {
      font-weight: 700;
      letter-spacing: -0.04em; }
      @media screen and (min-width: 75em) {
        .tabs-panel h2 {
          margin-bottom: 2.1875rem; } }
    .tabs-panel h3 {
      font-weight: 600;
      letter-spacing: -0.04em;
      margin-bottom: 9px; }
      @media screen and (min-width: 75em) {
        .tabs-panel h3 {
          font-size: 1.5rem; } }
    .tabs-panel p {
      line-height: 150.7%; }
  .tabs-title {
    margin-bottom: 1.25rem; }
    .tabs-title:last-child {
      margin-bottom: 0; }
    .tabs-title > a {
      display: inline-block;
      font-size: 1rem;
      letter-spacing: -0.01em;
      font-weight: bold;
      color: #151F35;
      background-color: #f0f4f5;
      -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
      transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
      .tabs-title > a:hover, .tabs-title > a[aria-selected='true'] {
        background-color: #EB5E94;
        color: #ffffff;
        -webkit-filter: contrast(1);
                filter: contrast(1); }
      .tabs-title > a[aria-selected='true']:focus {
        border: 1px solid transparent;
        outline: 2px dotted #EB5E94; }
  .tabs__staff-titles {
    background-color: #f0f4f5; }
  .tabs__staff-content {
    background-color: #f0f4f5; }
    .tabs__staff-content h3 {
      margin-top: 2rem; }
    .tabs__staff-content table {
      background: #fff;
      padding: 4rem;
      border-radius: 5px;
      -webkit-box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2);
              box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2); }
    .tabs__staff-content th {
      background-color: #EB5E94;
      color: #ffffff; }

.panel-p-1__staff {
  margin-bottom: 3rem; }

.tag {
  display: inline-block;
  padding: 0.125rem 0.3125rem 0;
  color: #151F35;
  text-transform: uppercase;
  font-size: 0.75rem;
  font-weight: bold;
  letter-spacing: -0.01em;
  line-height: 1.33;
  background: #41A494;
  -webkit-filter: contrast(1);
          filter: contrast(1); }

.sortPG .tag-group .tag {
  background: #e78931; }
.sortUG .tag-group .tag {
  background: #f06399; }
.tag-group a.tag:hover, .tag-group a.tag:focus, .tag-group a.tag:hover, .tag-group a.tag:focus {
  background-color: #000000; }

a.tag {
  -webkit-transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
  transition: color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0.25s cubic-bezier(0.645, 0.045, 0.355, 1); }
  a.tag:focus {
    display: block; }
  a.tag:hover, a.tag:focus {
    display: inline-block;
    background-color: #000000;
    color: #ffffff;
    outline: 2px dotted #000000; }

.tag-group > * {
  margin-right: 0.9375rem; }
  .tag-group > *:last-child {
    margin-right: 0; }


#unistats-widget-frame {
  display: block;
  margin: 0 auto; }

.content-card-pink {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  background-color: #41A494;
  border: 5px solid #41A494;
  margin-bottom: 1rem; }
  .content-card-pink a:hover {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    background-color: white;
    color: #2e2e2e; }
  .content-card-pink .h3 {
    color: #fff;
    font-size: 2.25rem; }
  .content-card-pink:hover h3 {
    color: #41A494;}
  .content-card-pink__text {
    color: #fff;
    padding: 4.375rem 3.125rem;
    margin-bottom: 1rem; }
    .content-card-pink__text > * {
      -webkit-filter: contrast(1);
              filter: contrast(1); }
  .content-card-pink a:hover .content-card-pink__text {
    -webkit-transition: 0.3s;
    transition: 0.3s;
    background-color: white;
    color: #2e2e2e; }
    .content-card-pink a:hover .content-card-pink__text h3 {
      -webkit-transition: 0.3s;
      transition: 0.3s;
      color: #2e2e2e; }

.content-card-pink-second-level {
  padding: 1rem; }
  .content-card-pink-second-level .h3 {
    font-size: 1.3rem; }
  .content-card-pink-second-level p {
    font-size: 1rem; }

.content-card-pink.bg-navy {
	background-color: #151F35;
    border: 5px solid #151F35;}
.content-card-pink.bg-navy:hover h3 {
  color: #151F35;}
.content-card-pink.bg-pink {
	background-color: #EB5E94;
    border: 5px solid #EB5E94;}
.content-card-pink.bg-pink:hover h3 {
  color: #EB5E94;}
.content-card-pink.bg-purple {
	background-color: #4C4394;
    border: 5px solid #4C4394;}
.content-card-pink.bg-purple:hover h3 {
  color: #4C4394;}
.content-card-pink.bg-red {
	background-color: #E64550;
    border: 5px solid #E64550;}
.content-card-pink.bg-red:hover h3 {
  color: #E64550;}
.content-card-pink.bg-blue {
	background-color: #41A494;
    border: 5px solid #41A494;}
.content-card-pink.bg-blue:hover h3 {
  color: #41A494;}
.content-card-pink.bg-orange {
	background-color: #E6881E;
    border: 5px solid #E6881E;}
.content-card-pink.bg-orange:hover h3 {
  color: #E6881E;}

.content-card-pink.bg-yellow {
	background-color: #FDC400;
    border: 5px solid #FDC400;}
.content-card-pink.bg-yellow:hover h3 {
  color: #FDC400;}

.content-card-pink.bg-gray {
	background-color: #F5F5F5;
    border: 5px solid #F5F5F5;}
.content-card-pink.bg-gray:hover h3 {
  color: #151F35;}



.status-container {
  background: #f0f4f5;
  padding: 4rem 0; }

.service-report {
  padding: 2rem;
  border-radius: 3px; }
  .service-report P {
    margin: 0;
    font-weight: bold; }
  .service-report img {
    padding-right: 1rem; }
  .service-report.isOnline {
    background: #F1FCEB; }
  .service-report.isOffline {
    background: #fcfaeb; }
  .service-report.serviceDown {
    background: #f0f4f5; }

.service-info {
  margin: 1rem 0; }
  .service-info a {
    display: block;
    -webkit-filter: contrast(1);
            filter: contrast(1); }

.status-table-wrapper {
  background: #fff;
  padding: 4rem;
  border-radius: 5px;
  -webkit-box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2); }

.status-table {
  width: 100%;
  display: table;
  border-collapse: collapse; }
  .status-table a {
    -webkit-filter: contrast(1);
            filter: contrast(1); }

.status-table-row {
  display: table-row;
  background: #fff;
  border-bottom: 2px solid #f0f4f5; }
  .status-table-row.header {
    font-weight: bold;
    background: #f0f4f5; }

.status-table-cell {
  padding: 6px 12px;
  display: table-cell; }
  .status-table-cell[data-title~="System"] {
    font-weight: bold; }
    .status-table-cell[data-title~="System"] a:hover {
      text-decoration: underline; }
  .status-table-cell[data-title~="Description"] {
    font-style: italic; }

.isOffline {
  color: #C25700; }

.isOnline {
  color: green; }

.statusCustomMessage {
  background: #fff;
  padding: 4rem;
  border-radius: 5px;
  -webkit-box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 5px 5px 15px 3px rgba(0, 0, 0, 0.2);
  margin: 2rem 0; }

.progspecs {
  background-color: #f0f4f5;
  padding: 2em 0 1em 0; }
  .progspecs ul {
    list-style: none; }
  .progspecs h2, .progspecs .h2 {
    letter-spacing: -0.04em; }
    @media screen and (min-width: 75em) {
      .progspecs h2, .progspecs .h2 {
        font-size: 1.875rem;
        margin-bottom: 1.875rem; } }

.site-footer-cta .display-6 {
  font-size: 1.875rem;
  line-height: 95.2%;
  letter-spacing: -0.03em;
  margin-bottom: 1.25rem;
  font-weight: 600; }
  @media screen and (min-width: 75em) {
    .site-footer-cta .display-6 {
      font-size: 2.5rem;
      margin-bottom: 1.875rem; } }

.site-footer-cta .button {
  width: 100%;
  border-width: 2px;
  text-transform: uppercase;
  -webkit-filter: contrast(1);
          filter: contrast(1);
  background: #151F35;
  color: #ffffff; }
  .site-footer-cta .button:hover {
    color: #151F35;
    border-color: #ffffff;
    background-color: #ffffff; }
  .site-footer-cta .button:focus {
    color: inherit;
    border-color: inherit; }

.site-footer-cta.invert h2, .site-footer-cta.invert button, .site-footer-cta.invert p, .site-footer-cta.invert a {
  color: #ffffff;
  border-color: #ffffff; }

.masthead-split {
  position: relative;
  overflow: hidden; }
  .masthead-split.bg-pink .breadcrumb a, .masthead-split.bg-red .breadcrumb a, .masthead-split.bg-blue .breadcrumb a {
    color: #151F35; }
  .masthead-split.bg-pink p, .masthead-split.bg-red p, .masthead-split.bg-blue p {
    color: #151F35; }
  .masthead-split.bg-pink ul li, .masthead-split.bg-red ul li, .masthead-split.bg-blue ul li {
    color: #151F35; }
    .masthead-split.bg-pink ul li strong, .masthead-split.bg-red ul li strong, .masthead-split.bg-blue ul li strong {
      color: #ffffff; }
    .masthead-split.bg-pink ul li a strong, .masthead-split.bg-red ul li a strong, .masthead-split.bg-blue ul li a strong {
      color: #ffffff; }
  .masthead-split .breadcrumb {
    width: 100%;
    margin-bottom: 2.5rem; }
    .masthead-split .breadcrumb a {
      -webkit-filter: contrast(1);
              filter: contrast(1); }
    @media print, screen and (min-width: 64em) {
      .masthead-split .breadcrumb {
        position: absolute;
        top: 20%; } }
    @media screen and (min-width: 75em) {
      .masthead-split .breadcrumb {
        top: 10%; } }
  .masthead-split__inner {
    position: relative;
    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: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 80px 0 2.5rem 0;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    min-height: 60vh;
    overflow: hidden; }
    @media print, screen and (min-width: 40em) {
      .masthead-split__inner {
        padding: 10.25rem 0 3.75rem;
        min-height: 40vh; } }
    @media print, screen and (min-width: 64em) {
      .masthead-split__inner {
        min-height: 90vh;
        padding: 0; } }
  .masthead-split__text h1 {
    line-height: 87.6%;
    letter-spacing: -0.04em;
    font-weight: 400;
    max-width: 30.3125rem;
    margin-bottom: 1.875rem; }
    .masthead-split__text h1 strong {
      display: block;
      color: #151F35;
      font-weight: 400; }
    @media screen and (min-width: 75em) {
      .masthead-split__text h1 {
        margin-bottom: 2.875rem; } }
  .masthead-split__text .h2 {
    font-weight: 600;
    line-height: 87.6%;
    letter-spacing: -0.04em;
    max-width: 17.5rem;
    margin-bottom: 0; }
    .masthead-split__text .h2 + * {
      margin-top: 1.875rem; }
    @media screen and (min-width: 75em) {
      .masthead-split__text .h2 {
        max-width: 32.5rem; }
        .masthead-split__text .h2 + * {
          margin-top: 3.125rem; } }
  .masthead-split__text p {
    max-width: 22.25rem;
    font-size: 0.875rem;
    letter-spacing: -0.02em;
    line-height: 157%;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    .masthead-split__text p:last-of-type {
      margin-bottom: 0; }
    @media screen and (min-width: 75em) {
      .masthead-split__text p {
        font-size: 1rem;
        max-width: 26.875rem; } }
  @media print, screen and (min-width: 64em) {
    .masthead-split__text {
      width: 50%; } }
  .masthead-split__image {
    position: relative;
    padding-top: 100%; }
    .masthead-split__image img {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    @media print, screen and (min-width: 64em) {
      .masthead-split__image {
        position: absolute;
        top: 0;
        right: 0;
        width: 50%;
        padding-top: 100vh; }
        .masthead-split__image img {
          -webkit-mask: url("https://wrexham.ac.uk/media/site-assets/img/masthead-mask.svg") center center/cover;
          -webkit-mask-repeat: no-repeat;
          -webkit-mask-position: left center;
          -webkit-mask-size: cover; } }
    @media screen and (min-width: 90em) {
      .masthead-split__image {
        width: 53%; } }
  .masthead-split__links {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: wrap;
    -webkit-flex: wrap;
        -ms-flex: wrap;
            flex: wrap; }
    .masthead-split__links li:not(:last-child) {
      margin-right: 1rem; }
      @media screen and (min-width: 75em) {
        .masthead-split__links li:not(:last-child) {
          margin-right: 1.875rem; } }
    .masthead-split__links a {
      font-size: 1rem;
      line-height: 1;
      font-weight: 700;
      font-family: "degular";
      letter-spacing: -0.01em;
      text-transform: capitalize;
      color: #ffffff;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      .masthead-split__links a:hover {
        text-decoration: underline;
        text-underline-offset: 2px; }
      @media screen and (min-width: 75em) {
        .masthead-split__links a {
          margin-right: 1.125rem;
          font-size: 1.15625rem; } }
  .masthead-split__list {
    margin-bottom: 0; }
    .masthead-split__list + * {
      margin-top: 1.25rem; }
      @media screen and (min-width: 75em) {
        .masthead-split__list + * {
          margin-top: 3.125rem; } }
    .masthead-split__list li {
      line-height: 110%;
      letter-spacing: -0.02em;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      .masthead-split__list li:not(:last-child) {
        margin-bottom: 1.125rem; }
        @media screen and (min-width: 75em) {
          .masthead-split__list li:not(:last-child) {
            margin-bottom: 2.125rem; } }
      @media screen and (min-width: 75em) {
        .masthead-split__list li {
          font-size: 1.25rem; } }
    .masthead-split__list a {
      color: inherit; }
      .masthead-split__list a:hover {
        text-decoration: underline;
        text-underline-offset: 2px; }
  .masthead-split .masthead__scroll {
    bottom: -2px;
    top: auto;
    left: auto;
    right: 0;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content; }
    .masthead-split .masthead__scroll svg {
      height: auto; }
    @media print, screen and (min-width: 64em) {
      .masthead-split .masthead__scroll {
        position: absolute;
        top: auto;
        bottom: -2px; }
        .masthead-split .masthead__scroll.left {
          left: 0; } }
  .masthead-split:not(.invert) .masthead-split__inner {
    padding-bottom: 0; }
    @media print, screen and (min-width: 64em) {
      .masthead-split:not(.invert) .masthead-split__inner {
        padding: 12.75rem 0; } }
  .masthead-split:not(.invert) .masthead-split__image {
    padding-top: 115%; }
    .masthead-split:not(.invert) .masthead-split__image img {
      -webkit-mask: none;
      -o-object-fit: cover;
         object-fit: cover;
      top: 6.625rem; }
    @media print, screen and (min-width: 64em) {
      .masthead-split:not(.invert) .masthead-split__image {
        padding-top: calc((115% / 2));
        top: auto;
        bottom: 0;
        top: auto; } }
  .masthead-split:not(.invert) {
    overflow: hidden; }

.feature-img {
  position: relative; }
  .feature-img .play-video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto; }
    .feature-img .play-video:focus::before {
      outline: 2px dotted #ffffff;
      outline-offset: 5px; }
    .feature-img .play-video::before {
      background-color: #E64550; }
    .feature-img .play-video:hover::before {
      background-color: #e95b65; }
    .feature-img .play-video:hover::after {
      border-left-color: #ffffff; }
    @media print, screen and (max-width: 39.99875em) {
      .feature-img .play-video {
        bottom: 11%;
        right: 7%;
        top: auto;
        left: auto; }
        .feature-img .play-video::before {
          width: 2.5rem;
          height: 2.5rem; }
        .feature-img .play-video::after {
          border-top: 12px solid transparent;
          border-bottom: 12px solid transparent;
          border-left: 20px solid #ffffff;
          margin-left: 2px; } }
  .feature-img__image {
    position: relative;
    padding-top: 100%; }
    .feature-img__image::before {
      content: "";
      position: absolute;
      top: 0;
      width: 100%;
      height: 11.1875rem;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(14.06%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0)));
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 14.06%, rgba(0, 0, 0, 0) 100%);
      z-index: 1; }
    .feature-img__image img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    @media print, screen and (min-width: 40em) {
      .feature-img__image {
        padding-top: 62.5%; } }
	@media print, screen and (min-width: 75em)
      .feature-img__image {
          padding-top: 50%;
      }
  .feature-img__text {
    position: absolute;
    bottom: 0;
    left: 0;
    width: calc(82% + 0.938rem); }
    .feature-img__text .display-4 {
      margin-bottom: 1.25rem; }
      .feature-img__text .display-4 strong {
        display: block;
        font-weight: 600; }
      .feature-img__text .display-4.feature-img__title--display strong {
        display: contents; }
      @media screen and (min-width: 75em) {
        .feature-img__text .display-4 {
          margin-bottom: 1.875rem; } }
/*	.feature-img__text ul { Bloom removed?
      width: -webkit-max-content;
      width: -moz-max-content;
      width: max-content;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex; }
      .feature-img__text ul li:not(:last-child) {
        margin-right: 1.25rem; }
      .feature-img__text ul li a {
        letter-spacing: -0.01em;
        line-height: 1.1875rem; }
        .feature-img__text ul li a:hover {
          text-decoration: underline;
          text-underline-offset: 2px; }
        @media print, screen and (min-width: 40em) {
          .feature-img__text ul li a {
            font-size: 1rem; } }
      @media screen and (min-width: 75em) {
        .feature-img__text ul {
          margin-top: 1.875rem;
          margin-bottom: 0; } } */
    .feature-img__text p {
      font-weight: 400;
      margin-bottom: 0;
      max-width: calc(100% - 3.75rem);
      line-height: 143%; }
      @media screen and (min-width: 75em) {
        .feature-img__text p {
          font-size: 0.875rem;
          max-width: none; }
          .feature-img__text p strong {
            font-size: 1rem;
            letter-spacing: -0.01em; } }
      .feature-img__text p + * {
        margin-top: 0.625rem;
        max-width: none; }
        @media screen and (min-width: 75em) {
          .feature-img__text p + * {
            margin-top: 1.875rem; } }
    .feature-img__text a {
      display: block;
      margin-bottom: 0;
      color: inherit; }
      .feature-img__text a:hover {
        color: inherit;
        text-decoration: underline; }
      @media screen and (min-width: 75em) {
        .feature-img__text a {
          font-size: 1rem; } }
    @media print, screen and (min-width: 40em) {
      .feature-img__text {
        width: 50%;
        max-width: 39.1875rem; } }
    @media print, screen and (min-width: 64em) {
      .feature-img__text {
        width: 42%; } }
    @media screen and (min-width: 90em) {
      .feature-img__text {
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content; } }
    .feature-img__text > * {
      position: relative;
      z-index: 2;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
  .feature-img__shape {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    background: none;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1; }
    .feature-img__shape svg {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      width: 100%;
      height: 100%; }
    .feature-img__shape.bg-yellow svg {
      color: #FDC400; }
    .feature-img__shape.bg-blue svg {
      color: #41A494; }
    .feature-img__shape.bg-blue + .feature-img__content {
      color: #ffffff; }
      .feature-img__shape.bg-blue + .feature-img__content p {
        color: #151F35; }
    .feature-img__shape.bg-purple svg {
      color: #4C4394; }
    .feature-img__shape.bg-purple + .feature-img__content {
      color: #ffffff; }
    .feature-img__shape.bg-navy svg {
      color: #151F35; }
    .feature-img__shape.bg-navy + .feature-img__content {
      color: #ffffff; }
      .feature-img__shape.bg-navy + .feature-img__content p, .feature-img__shape.bg-navy + .feature-img__content a {
        background-color: #151F35; }
  .feature-img__content {
    padding: 0.938rem; }
    .feature-img__content p {
      font-family: "Inter", sans-serif; }
    @media print, screen and (min-width: 40em) {
      .feature-img__content {
        padding: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .feature-img__content {
        padding-right: 0;
        max-width: calc(100% - 0.938rem); }
        .feature-img__content p {
          max-width: 22.25rem; } }

.discover-more-cols {
  border-bottom: 2px solid; }
  @media screen and (min-width: 75em) {
    .discover-more-cols {
      padding-bottom: 5.625rem;
      padding-top: 11.25rem; } }
  .discover-more-cols.invert .content-card h3, .discover-more-cols.invert .content-card p {
    color: #ffffff; }
  .discover-more-cols__inner {
    position: relative; }
  .discover-more-cols .display-2,
  .discover-more-cols .display-4 {
    letter-spacing: -0.05em;
    line-height: 94.6%;
    margin-bottom: 1.875rem; }
    .discover-more-cols .display-2 strong,
    .discover-more-cols .display-4 strong {
      display: block;
      font-weight: 600; }
    @media screen and (min-width: 75em) {
      .discover-more-cols .display-2,
      .discover-more-cols .display-4 {
        margin-bottom: 4.25rem; } }
  .discover-more-cols__image {
    position: relative;
    padding-top: 100%; }
    .discover-more-cols__image::before {
      content: "";
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 40%;
      background: -webkit-gradient(linear, left top, left bottom, color-stop(14.06%, rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0)));
      background: linear-gradient(180deg, rgba(0, 0, 0, 0.4) 14.06%, rgba(0, 0, 0, 0) 100%);
      -webkit-transform: rotate(-180deg);
          -ms-transform: rotate(-180deg);
              transform: rotate(-180deg);
      z-index: 2; }
    .discover-more-cols__image img {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    .discover-more-cols__image figcaption {
      position: absolute;
      bottom: 1rem;
      left: 1rem;
      color: #ffffff;
      margin: 0;
      letter-spacing: -0.04em;
      z-index: 2;
      overflow: hidden; }
      .discover-more-cols__image figcaption:after {
        content: "";
        width: 100%;
        height: 2px;
        display: block;
        background-color: #41A494;
        -webkit-transform: translateX(-110%);
            -ms-transform: translateX(-110%);
                transform: translateX(-110%);
        -webkit-transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1);
        transition: transform 0.25s cubic-bezier(0.86, 0, 0.07, 1), -webkit-transform 0.25s cubic-bezier(0.86, 0, 0.07, 1); }
      @media screen and (min-width: 75em) {
        .discover-more-cols__image figcaption {
          left: 1.3125rem;
          bottom: 1.5rem; } }
  .discover-more-cols .content-card h3 {
    letter-spacing: -0.03em;
    line-height: 1; }
    @media screen and (min-width: 75em) {
      .discover-more-cols .content-card h3 {
        font-size: 1.625rem; } }
  .discover-more-cols .content-card p {
    line-height: 144.2%;
    max-width: 17.875rem; }
  .discover-more-cols .content-card:hover figcaption, .discover-more-cols .content-card:focus figcaption {
    color: #ffffff; }
    .discover-more-cols .content-card:hover figcaption:after, .discover-more-cols .content-card:focus figcaption:after {
      -webkit-transform: translateX(0);
          -ms-transform: translateX(0);
              transform: translateX(0); }

@media screen and (min-width: 75em) {
  .quick-links {
    margin: 7.5rem 0; } }

.quick-links .grid-x {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }
  .quick-links .grid-x:first-child {
    position: relative; }
  .quick-links .grid-x + .grid-x {
    margin-top: 1.875rem; }

.quick-links__box {
  padding: 2.59375rem 3.09375rem 2rem 1.375rem; }
  .quick-links__box h2 {
    margin-bottom: 0;
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 120%;
    max-width: 10rem; }
    @media screen and (min-width: 75em) {
      .quick-links__box h2 {
        max-width: 13.9375rem;
        line-height: 1.8125rem; } }
  @media screen and (min-width: 75em) {
    .quick-links__box {
      padding: 5.1875rem 6.1875rem 4rem 2.75rem; } }

.quick-links__tag {
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 0.25rem 0.375rem 0.1875rem 0.4375rem;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 1;
  font-size: 0.75rem;
  margin-bottom: 0.5625rem;
  letter-spacing: -0.01em;
  font-family: "Inter", sans-serif; }

.quick-links__link, .quick-links__alllink {
  display: block;
  color: #151F35;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin-top: 1.875rem; }
  .quick-links__link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
 .quick-links__link:hover, .quick-links__alllink:hover {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 2px; }
.quick-links__image {
  position: relative;
  padding-top: 67.5%; }
  .quick-links__image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.quick-links__list h3 {
  font-family: "Inter", sans-serif;
  line-height: 87.6%;
  letter-spacing: -0.04em;
  margin-bottom: 1.875rem; }
  @media screen and (min-width: 75em) {
    .quick-links__list h3 {
      font-size: 1.625rem; } }

.quick-links__list .arrow-list {
  padding-left: 1.25rem; }
  .quick-links__list .arrow-list li::before {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/chevron-right-blue.svg"); }
  .quick-links__list .arrow-list li a {
    color: inherit;
    letter-spacing: -0.01em;
    font-family: "Inter", sans-serif;
    font-size: 0.875rem; }
  @media screen and (min-width: 75em) {
    .quick-links__list .arrow-list li:not(:last-child) {
      margin-bottom: 1.125rem; }
    .quick-links__list .arrow-list li::before {
      background-size: 0.5rem;
      padding: 0.5rem;
      height: 0.5rem; }
    .quick-links__list .arrow-list li a {
      font-size: 1.375rem; } }

.student-cta {
  margin-bottom: 2.25rem; }
  .student-cta + * {
    position: relative;
    z-index: 2; }
  @media print, screen and (min-width: 40em) {
    .student-cta {
      margin-top: 6.25rem; } }
  @media screen and (min-width: 75em) {
    .student-cta {
      margin-top: 7.25rem; } }
  @media print, screen and (max-width: 39.99875em) {
    .student-cta .grid-x {
      -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 (max-width: 39.99875em) {
    .student-cta__text {
      padding-bottom: 16%; } }
  .student-cta__text .display-4 {
    margin-bottom: 1.875rem; }
    .student-cta__text .display-4 strong {
      display: block;
      font-weight: 600; }
    @media print, screen and (max-width: 39.99875em) {
      .student-cta__text .display-4 {
        max-width: 13.75rem; } }
    @media screen and (min-width: 75em) {
      .student-cta__text .display-4 {
        margin-bottom: 2.5rem; } }
  .student-cta__text p {
    font-size: 0.875rem;
    font-weight: 400;
    font-family: "Inter", sans-serif;
    line-height: 143%;
    letter-spacing: -0.02em;
    max-width: 19rem; }
  .student-cta__text a {
    color: #151F35;
    font-weight: 700;
    font-family: "Inter", sans-serif;
    font-size: 1rem;
    letter-spacing: -0.01em; }
    .student-cta__text a:hover {
      color: inherit;
      text-decoration: underline; }
  .student-cta__text blockquote p {
    font-size: 1.375rem;
    font-family: "degular";
    line-height: 87.6%;
    max-width: none;
    margin-bottom: 1.875rem; }
    @media print, screen and (min-width: 40em) {
      .student-cta__text blockquote p {
        font-size: 1.75rem; } }
    @media screen and (min-width: 75em) {
      .student-cta__text blockquote p {
        font-size: 2.375rem;
        margin-bottom: 2.875rem; } }
    @media screen and (min-width: 90em) {
      .student-cta__text blockquote p {
        letter-spacing: -2px;
        font-size: 3.125rem;
        max-width: 28.5625rem; } }
  .student-cta__text figcaption {
    font-size: 0.875rem;
    letter-spacing: -0.01em;
    line-height: 127%; }
    @media print, screen and (min-width: 64em) {
      .student-cta__text figcaption {
        font-size: 1rem; } }
    .student-cta__text figcaption cite {
      font-size: 0.875rem;
      text-transform: none;
      font-style: normal;
      letter-spacing: -0.01em;
      line-height: 127%;
      font-weight: 700; }
      @media print, screen and (min-width: 64em) {
        .student-cta__text figcaption cite {
          font-size: 1rem; } }
      .student-cta__text figcaption cite::before {
        content: none; }
  @media print, screen and (min-width: 40em) {
    .student-cta__text {
      max-width: 18.875rem;
      margin: 0 auto;
      margin-right: 0; } }
  @media print, screen and (min-width: 64em) {
    .student-cta__text {
      margin: 3.75rem auto; } }
  @media screen and (min-width: 75em) {
    .student-cta__text {
      max-width: 25.125rem;
      margin-right: 0; } }
  @media screen and (min-width: 90em) {
    .student-cta__text {
      max-width: 31.375rem; } }

.stats-slider .grid-x {
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end; }

.stats-slider h2 strong {
  display: block;
  font-weight: 600; }

@media print, screen and (min-width: 40em) {
  .stats-slider h2 {
    margin: 0;
    max-width: 13.75rem; } }

@media screen and (min-width: 75em) {
  .stats-slider h2 {
    max-width: 30.5625rem; } }

@media screen and (min-width: 75em) {
  .stats-slider p,
  .stats-slider span {
    max-width: 18.375rem; } }

.stats-slider p {
  margin-bottom: 1.875rem;
  letter-spacing: -0.04em;
  line-height: 160%; }

.stats-slider span {
  display: block;
  line-height: 160%;
  letter-spacing: -0.04em;
  font-size: 0.875rem; }
  .stats-slider span strong {
    font-weight: 600; }

.stats-slider__slider {
  margin-top: 3.75rem; }
  .stats-slider__slider:hover {
    cursor: pointer; }
  @media screen and (min-width: 75em) {
    .stats-slider__slider {
      margin-top: 6.25rem; } }
  .stats-slider__slider span {
    line-height: 150.7%;
    letter-spacing: 0;
    display: block;
    margin-bottom: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .stats-slider__slider span {
        margin-bottom: 0; } }
    @media screen and (min-width: 75em) {
      .stats-slider__slider span {
        font-size: 1rem; } }
  .stats-slider__slider .circle {
    width: 60%;
    padding-top: 60%;
    margin-left: auto;
    margin-top: -25%;
    margin-right: 1.25rem; }
    @media print, screen and (min-width: 40em) {
      .stats-slider__slider .circle {
        width: 50%;
        padding-top: calc(100% / 2);
        margin-top: 0;
        margin-right: 0; } }

.stats-slider__slide {
  position: relative;
  display: -webkit-box !important;
  display: -webkit-flex !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  flex-direction: column-reverse; }
  .stats-slider__slide:focus {
    outline: 2px dotted #ffffff; }
  @media print, screen and (min-width: 40em) {
    .stats-slider__slide {
      display: block !important; } }

@media print, screen and (min-width: 40em) {
  .stats-slider__slide-content {
    margin-bottom: 1.25rem;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; } }

@media screen and (min-width: 75em) {
  .stats-slider__slide-content {
    margin-bottom: 1.875rem; } }

.stats-slider__image {
  position: relative;
  padding-top: 100%; }
  .stats-slider__image img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  @media print, screen and (min-width: 40em) {
    .stats-slider__image {
      width: 50%;
      padding-top: calc(100% / 2); } }

@media print, screen and (min-width: 40em) {
  .stats-slider .slick-list.draggable {
    overflow: visible; } }

.stats-slider .slick-list.dragging, .stats-slider .slick-list.draggable:active:hover {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.circle {
  position: relative;
  padding-top: 100%;
  border-radius: 100%; }
  .circle__inner {
    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;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    text-align: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto; }
  .circle .display-1 {
    line-height: 87.6%;
    margin-bottom: 1.125rem; }
    @media screen and (min-width: 90em) {
      .circle .display-1 {
        font-size: 9.375rem; } }
  .circle p {
    line-height: 150.7%;
    letter-spacing: 0;
    margin: 0 auto;
    font-size: 0.75rem;
    max-width: 9.375rem; }
    @media print, screen and (min-width: 64em) {
      .circle p {
        max-width: 13.25rem;
        font-size: 0.875rem; } }
    @media screen and (min-width: 75em) {
      .circle p {
        font-size: 1rem; } }

@media screen and (min-width: 75em) {
  .intro-block {
    padding-top: 9.375rem;
    padding-bottom: 5.5rem; } }

.intro-block .h4 {
  line-height: 130%;
  font-weight: 400;
  letter-spacing: -0.02em;
  margin: 0; }

.intro-block .gallery {
  margin-bottom: 0;
  margin-top: 3.75rem; }
  @media print, screen and (min-width: 64em) {
    .intro-block .gallery {
      margin-top: 5.75rem; } }
  .intro-block .gallery .slick-list.draggable {
    overflow: visible; }

@media print, screen and (min-width: 40em) {
  .intro-block .stats-slider__slider .slick-list.draggable {
    overflow: visible;
    -webkit-clip-path: inset(-100vw -100vw -100vw 0);
            clip-path: inset(-100vw -100vw -100vw 0); } }

.intro-block .stats-slider__slider .slick-list.dragging, .intro-block .stats-slider__slider .slick-list.draggable:active:hover {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.img-text-col {
  position: relative;
  overflow: hidden;
  margin-bottom: -1.875rem; }
  @media print, screen and (min-width: 40em) {
    .img-text-col {
      margin-bottom: 0; } }
  @media screen and (min-width: 75em) {
    .img-text-col {
      padding-top: 12.5rem; } }
  .img-text-col .grid-x {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    position: relative; }
    @media print, screen and (min-width: 40em) {
      .img-text-col .grid-x.img-text-col--right {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: row-reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse; } }
    @media print, screen and (min-width: 64em) {
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:first-child {
        margin-right: -2.5rem; }
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:last-child {
        left: 2.5rem; } }
    @media screen and (min-width: 75em) {
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:first-child {
        margin-right: -6.25rem; }
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:last-child {
        left: 6.25rem; } }
    @media screen and (min-width: 90em) {
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:first-child {
        margin-right: -9.375rem; }
      .img-text-col .grid-x.img-text-col--left .img-text-col__col:last-child {
        left: 9.375rem; }
        .img-text-col .grid-x.img-text-col--left .img-text-col__col:last-child .img-text-col__text {
          padding: 0; } }
    @media print, screen and (min-width: 64em) {
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:first-child {
        margin-left: -2.5rem; }
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:last-child {
        right: 2.5rem;
        left: -2.5rem; } }
    @media screen and (min-width: 75em) {
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:first-child {
        margin-left: -6.25rem; }
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:last-child {
        right: 6.25rem;
        left: -6.25rem; } }
    @media screen and (min-width: 90em) {
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:first-child {
        margin-left: -9.375rem; }
      .img-text-col .grid-x.img-text-col--right .img-text-col__col:last-child {
        right: 9.375rem;
        left: -9.375rem; }
        .img-text-col .grid-x.img-text-col--right .img-text-col__col:last-child .img-text-col__text {
          padding: 0 1.25rem; } }
  .img-text-col__col {
    position: relative; }
  .img-text-col__image {
    position: relative;
    padding-top: 91.1%;
    margin-bottom: 1.25rem; }
    .img-text-col__image img {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
    @media print, screen and (min-width: 40em) {
      .img-text-col__image {
        margin-bottom: 0; } }
  .img-text-col__text {
    margin-bottom: 1.875rem; }
    .img-text-col__text .display-5 {
      line-height: 100%;
      letter-spacing: -0.04em;
      margin-bottom: 0.938rem;
      color: #000000;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      .img-text-col__text .display-5 strong {
        display: block;
        font-weight: 600; }
    .img-text-col__text p {
      font-family: "Inter", sans-serif;
      font-weight: 400;
      line-height: 150.7%;
      max-width: calc(100% - 3.75rem);
      letter-spacing: 0;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      .img-text-col__text p:last-of-type {
        margin-bottom: 0; }
      .img-text-col__text p + * {
        margin-top: 1.25rem; }
        @media screen and (min-width: 75em) {
          .img-text-col__text p + * {
            margin-top: 1.875rem; } }
    .img-text-col__text a {
      font-weight: 700;
      color: #151F35;
      font-family: "degular";
      letter-spacing: -0.01em;
      text-transform: capitalize;
      -webkit-filter: contrast(1);
              filter: contrast(1); }
      .img-text-col__text a:hover {
        text-decoration: underline; }
      @media screen and (min-width: 75em) {
        .img-text-col__text a {
          font-size: 1.125rem; } }
    .img-text-col__text ul {
      margin-bottom: 0; }
      .img-text-col__text ul li {
        line-height: 1; }
        .img-text-col__text ul li:not(:last-child) {
          margin-bottom: 7px; }
    .img-text-col__text.invert h2 {
      color: #ffffff; }
    @media print, screen and (min-width: 40em) {
      .img-text-col__text {
        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;
        height: 100%;
        width: -webkit-min-content;
        width: -moz-min-content;
        width: min-content;
        min-width: 20.625rem;
        margin: auto;
        padding: 1.875rem;
        margin-bottom: 0; } }
    @media screen and (min-width: 75em) {
      .img-text-col__text {
        padding: 0 1.25rem; } }
  .img-text-col__shape {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    padding-top: 100%;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    z-index: -1;
    top: auto;
    -webkit-transform: scale(2);
        -ms-transform: scale(2);
            transform: scale(2); }
    .img-text-col__shape svg {
      position: absolute;
      top: 0;
      width: 100%;
      height: 100%; }
    @media print, screen and (min-width: 40em) {
      .img-text-col__shape {
        top: 32%;
        -webkit-transform: none;
            -ms-transform: none;
                transform: none; } }
    @media screen and (min-width: 75em) {
      .img-text-col__shape {
        top: 36%; } }
    @media screen and (min-width: 90em) {
      .img-text-col__shape {
        top: 31%; } }
    @media screen and (min-width: 120em) {
      .img-text-col__shape {
        top: 28%; } }

@media screen and (min-width: 75em) {
  .event-slider {
    margin-top: 8.9375rem;
    margin-bottom: 8.9375rem; } }

.event-slider__inner {
  position: relative; }
  .event-slider__inner .medium-7 {
    display: none; }
    @media print, screen and (min-width: 40em) {
      .event-slider__inner .medium-7 {
        display: block; } }

@media print, screen and (max-width: 39.99875em) {
  .event-slider__slider {
    margin-top: calc((3.75rem + 1.25rem) * 2); } }

@media print, screen and (min-width: 40em) {
  .event-slider__slider .slick-list.draggable {
    overflow: visible;
    -webkit-clip-path: inset(-100vw -100vw -100vw 0);
            clip-path: inset(-100vw -100vw -100vw 0); } }

.event-slider__slider .slick-list.dragging, .event-slider__slider .slick-list.draggable:active:hover {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

.event-slider__image {
  position: relative;
  padding-top: 70.76%; }
  .event-slider__image img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }

.event-slider__text {
  margin-top: 1.25rem; }
  .event-slider__text .display-4 strong {
    display: block;
    font-weight: 600; }
  @media screen and (min-width: 75em) {
    .event-slider__text .display-4 {
      margin-bottom: 2.5rem; } }
  .event-slider__text p {
    font-family: "Inter", sans-serif;
    font-weight: 400;
    line-height: 143%;
    letter-spacing: -0.02em;
    max-width: 15.125rem;
    margin-bottom: 0; }
    @media screen and (min-width: 75em) {
      .event-slider__text p {
        margin-top: 0.875rem; } }
    .event-slider__text p + * {
      margin-top: 1.25rem; }
      @media screen and (min-width: 75em) {
        .event-slider__text p + * {
          margin-top: 1.875rem; } }
  .event-slider__text a {
    display: block;
    font-weight: 700;
    letter-spacing: -0.01em;
    font-family: "Inter", sans-serif;
    color: #151F35; }
    .event-slider__text a:hover {
      color: #151F35;
      text-decoration: underline; }
  @media print, screen and (min-width: 40em) {
    .event-slider__text {
      max-width: 16.25rem;
      margin: auto;
      margin-top: 0;
      padding: 0 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .event-slider__text {
      padding: 0; } }
  @media screen and (min-width: 75em) {
    .event-slider__text {
      max-width: 22.5rem; } }

.event-slider__date {
  margin-top: 2.5rem; 
  position:relative; }
  .event-slider__date .display-5 {
    line-height: 87.6%;
    letter-spacing: -0.04em;
    margin-bottom: 2.5rem; }
    @media screen and (min-width: 75em) {
      .event-slider__date .display-5 {
        font-size: 2.5rem;
        margin-bottom: 3.125rem; } }
  .event-slider__date span {
    display: block;
    color: #41A494;
    font-family: "degular";
    letter-spacing: -0.04em;
    line-height: 87.6%;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
    .event-slider__date span.small {
      letter-spacing: -0.01em;
      text-transform: uppercase;
      font-family: "Inter", sans-serif;
      font-size: 0.875rem;
      color: #348378;
      font-weight: 700;
      line-height: 1; }
      @media screen and (min-width: 75em) {
        .event-slider__date span.small {
          font-size: 1.125rem; } }
    .event-slider__date span.large {
      font-size: 8.125rem;
      margin-top: -5%; }
      @media print, screen and (min-width: 64em) {
        .event-slider__date span.large {
          margin-top: -10%;
          font-size: 11.25rem; } }
      @media screen and (min-width: 75em) {
        .event-slider__date span.large {
          font-size: 14.375rem; } }
  @media print, screen and (min-width: 40em) {
    .event-slider__date {
      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;
      height: 100%;
      max-width: 14.125rem;
      margin: auto;
      margin-top: 0;
      padding: 0 0.625rem; } }
  @media print, screen and (min-width: 64em) {
    .event-slider__date {
      padding: 0; } }

.event-slider__nav {
  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;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 3.9375rem;
  height: 3.9375rem; }
  .event-slider__nav .slick-prev,
  .event-slider__nav .slick-next {
    top: 0;
    position: relative;
    height: auto;
    width: 0.75rem;
    background-image: none;
    color: #151F35; }
    .event-slider__nav .slick-prev:hover, .event-slider__nav .slick-prev:focus, .event-slider__nav .slick-prev:active,
    .event-slider__nav .slick-next:hover,
    .event-slider__nav .slick-next:focus,
    .event-slider__nav .slick-next:active {
      background-image: none; }
    .event-slider__nav .slick-prev:focus,
    .event-slider__nav .slick-next:focus {
      outline: 2px dotted;
      background: none; }
    .event-slider__nav .slick-prev svg,
    .event-slider__nav .slick-next svg {
      width: 100%;
      height: 100%; }
    @media print, screen and (min-width: 64em) {
      .event-slider__nav .slick-prev,
      .event-slider__nav .slick-next {
        width: 0.75rem; } }
    @media screen and (min-width: 75em) {
      .event-slider__nav .slick-prev,
      .event-slider__nav .slick-next {
        width: 1rem; } }
  .event-slider__nav .slick-prev {
    left: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    margin-right: 4px; }
    @media screen and (min-width: 75em) {
      .event-slider__nav .slick-prev {
        margin-right: 9px; } }
  .event-slider__nav .slick-next {
    right: 0;
    -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
    margin-left: 4px; }
    @media screen and (min-width: 75em) {
      .event-slider__nav .slick-next {
        margin-left: 9px; } }
  @media screen and (min-width: 75em) {
    .event-slider__nav {
      width: 7.875rem;
      height: 7.875rem; } }
  .event-slider__nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #ffffff;
    border: 1px solid #41A494;
    width: 100%;
    height: 100%;
    border-radius: 100%; }
  @media print, screen and (max-width: 39.99875em) {
    .event-slider__nav {
      top: auto;
      bottom: calc(100% + 1.25rem);
      margin-top: 0;
      left: 0;
      right: auto; } }
  @media print, screen and (min-width: 40em) {
    .event-slider__nav {
      top: 50%;
      left: 50%;
      right: -24%; } }
  @media screen and (min-width: 75em) {
    .event-slider__nav {
      margin: auto;
      width: 7.875rem;
      height: 7.875rem; }
      .event-slider__nav .slick-prev {
        margin-right: 9px; }
      .event-slider__nav .slick-next {
        margin-left: 9px; } }

.course-highlights .inner {
  position: relative; }

.course-highlights .circle {
  padding-top: calc(100% - 1.25rem);
  margin-bottom: 1.25rem; }
  .course-highlights .circle .display-2 {
    line-height: 87.6%; }
  @media print, screen and (min-width: 64em) {
    .course-highlights .circle__inner {
      padding: 0 1.25rem; } }
  @media print, screen and (min-width: 40em) {
    .course-highlights .circle {
      margin-bottom: 0;
      padding-top: calc((100% / 3) - 1.25rem); } }
  @media screen and (min-width: 75em) {
    .course-highlights .circle {
      padding-top: calc((100% / 3) - 2.5rem); } }

.course-highlights__shape {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  bottom: -3.75rem;
  width: 100%;
  z-index: -1;
  padding-top: 100%;
  -webkit-transform: scale(1.75);
      -ms-transform: scale(1.75);
          transform: scale(1.75); }
  .course-highlights__shape svg {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 100%; }
  @media print, screen and (min-width: 40em) {
    .course-highlights__shape {
      -webkit-transform: none;
          -ms-transform: none;
              transform: none;
      padding-top: 55%; } }
  @media print, screen and (min-width: 64em) {
    .course-highlights__shape {
      padding-top: 48%;
      bottom: -3.75rem;
      top: auto; } }
  @media screen and (min-width: 75em) {
    .course-highlights__shape {
      padding-top: 59%;
      left: -8%;
      bottom: -7.5rem; } }
  @media screen and (min-width: 120em) {
    .course-highlights__shape {
      padding-top: 52%; } }

@media print, screen and (min-width: 40em) {
  .discover-more-slider .slick-list.draggable {
    overflow: visible;
    -webkit-clip-path: inset(-100vw -100vw -100vw 0);
            clip-path: inset(-100vw -100vw -100vw 0); } }

.discover-more-slider .slick-list.dragging, .discover-more-slider .slick-list.draggable:active:hover {
  cursor: -webkit-grabbing;
  cursor: grabbing; }

@media print, screen and (min-width: 40em) {
  .discover-more-slider__slide {
    margin-right: 1rem; } }

@media screen and (min-width: 75em) {
  .discover-more-slider__slide {
    margin-right: 1.4375rem; } }

.discover-more-slider a:focus {
  padding: 5px;
  outline-offset: -4px; }

.discover-more-slider__nav {
  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;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 3.9375rem;
  height: 3.9375rem;
  bottom: calc(100% - 63px); }
  .discover-more-slider__nav .slick-prev,
  .discover-more-slider__nav .slick-next {
    top: 0;
    position: relative;
    height: auto;
    width: 0.75rem;
    background-image: none;
    color: #151F35; }
    .discover-more-slider__nav .slick-prev:hover, .discover-more-slider__nav .slick-prev:focus, .discover-more-slider__nav .slick-prev:active,
    .discover-more-slider__nav .slick-next:hover,
    .discover-more-slider__nav .slick-next:focus,
    .discover-more-slider__nav .slick-next:active {
      background-image: none; }
    .discover-more-slider__nav .slick-prev:focus,
    .discover-more-slider__nav .slick-next:focus {
      outline: 2px dotted;
      background: none; }
    .discover-more-slider__nav .slick-prev svg,
    .discover-more-slider__nav .slick-next svg {
      width: 100%;
      height: 100%; }
    @media print, screen and (min-width: 64em) {
      .discover-more-slider__nav .slick-prev,
      .discover-more-slider__nav .slick-next {
        width: 0.75rem; } }
    @media screen and (min-width: 75em) {
      .discover-more-slider__nav .slick-prev,
      .discover-more-slider__nav .slick-next {
        width: 1rem; } }
  .discover-more-slider__nav .slick-prev {
    left: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    margin-right: 4px; }
    @media screen and (min-width: 75em) {
      .discover-more-slider__nav .slick-prev {
        margin-right: 9px; } }
  .discover-more-slider__nav .slick-next {
    right: 0;
    -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
    margin-left: 4px; }
    @media screen and (min-width: 75em) {
      .discover-more-slider__nav .slick-next {
        margin-left: 9px; } }
  @media screen and (min-width: 75em) {
    .discover-more-slider__nav {
      width: 7.875rem;
      height: 7.875rem; } }
  .discover-more-slider__nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #ffffff;
    border: 1px solid #41A494;
    width: 100%;
    height: 100%;
    border-radius: 100%; }
  @media print, screen and (min-width: 40em) {
    .discover-more-slider__nav {
      top: auto;
      bottom: 25%;
      left: auto;
      right: -2.5%; } }
  @media screen and (min-width: 75em) {
    .discover-more-slider__nav {
      right: -3.5%; } }

.masthead-image + * {
  position: relative;
  z-index: 2; }

.masthead-image.masthead-image-short .masthead-image__inner {
  min-height: 42vh; }
  @media print, screen and (min-width: 40em) {
    .masthead-image.masthead-image-short .masthead-image__inner {
      min-height: 40vh; } }
  @media print, screen and (min-width: 64em) {
    .masthead-image.masthead-image-short .masthead-image__inner {
      min-height: 60vh;
      padding-bottom: 3.75rem; } }
  @media (min-width: 1200px) and (min-height: 700px) and (max-width: 1440px) and (max-height: 910px) {
    .masthead-image.masthead-image-short .masthead-image__inner {
      min-height: 72vh; } }
  @media screen and (min-width: 75em) {
    .masthead-image.masthead-image-short .masthead-image__inner {
      min-height: 52vh;
      padding-top: 52vh; } }
  @media screen and (min-width: 120em) {
    .masthead-image.masthead-image-short .masthead-image__inner {
      padding-top: 54vh; } }

.masthead-image.masthead-image-short .masthead-image__title {
  font-weight: 400;
  line-height: 68.1%;
  letter-spacing: -0.04em;
  -webkit-filter: contrast(1);
          filter: contrast(1); }
  @media print, screen and (max-width: 63.99875em) {
    .masthead-image.masthead-image-short .masthead-image__title {
      margin-bottom: 1.875rem; } }
  .masthead-image.masthead-image-short .masthead-image__title strong {
    display: block;
    color: #151F35;
    font-weight: 400;
    -webkit-filter: contrast(1);
            filter: contrast(1); }
.masthead-image.masthead-image-short .masthead-image__shape {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex; }
  @media print, screen and (max-width: 39.99875em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      width: 95.3%; } }
  @media print, screen and (min-width: 40em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      width: 60%; } }
  @media print, screen and (min-width: 64em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      width: 50vw; } }
  @media screen and (min-width: 75em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      min-width: auto;
      max-width: initial;
      width: 50%;
      bottom: -5rem !important; } }
  @media screen and (min-width: 120em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      width: 40%;
      max-width: 50rem; } }
  @media (min-width: 1200px) and (min-height: 700px) and (max-width: 1440px) and (max-height: 910px) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-1 {
      width: 50%;
      min-width: auto; } }
  @media print, screen and (max-width: 39.99875em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      width: 70%; } }
  @media print, screen and (min-width: 40em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      width: 55%; } }
  @media print, screen and (min-width: 64em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      width: 45%; } }
  @media screen and (min-width: 75em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      min-width: auto;
      max-width: initial;
      width: 42%; } }
  @media screen and (min-width: 120em) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      width: 41%; } }
  @media (min-width: 1200px) and (min-height: 700px) and (max-width: 1440px) and (max-height: 910px) {
    .masthead-image.masthead-image-short .masthead-image__shape.shape-2 {
      width: 42%;
      min-width: auto; } }

.feature-img-cols {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: 1.875rem; }
  .feature-img-cols__image {
    position: relative; }
    .feature-img-cols__image img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      -o-object-fit: cover;
         object-fit: cover; }
  .feature-img-cols--2 .feature-img-cols__image {
    padding-top: 50%;
    width: 50%; }
    .feature-img-cols--2 .feature-img-cols__image:last-child {
      margin-top: 25%; }
  .feature-img-cols--3 .feature-img-cols__image {
    padding-top: calc(100% / 3);
    width: calc(100% / 3); }
    .feature-img-cols--3 .feature-img-cols__image:nth-child(2) {
      margin-top: 15%; }
    .feature-img-cols--3 .feature-img-cols__image:last-child {
      margin-top: 5%; }
  .feature-img-cols--2 {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem; }
    @media print, screen and (min-width: 64em) {
      .feature-img-cols--2 {
        margin-top: 5.25rem;
        margin-bottom: 1.875rem; } }
  .feature-img-cols--3 {
    margin: 2.5rem 0; }
    @media print, screen and (min-width: 40em) {
      .feature-img-cols--3 {
        margin: 5rem 0; } }
    @media print, screen and (min-width: 64em) {
      .feature-img-cols--3 {
        margin-top: 9.1875rem;
        margin-bottom: 5.9375rem; } }

@media print, screen and (min-width: 64em) {
  .masthead-search:not(.invert) .inner {
    -webkit-box-align: end;
    -webkit-align-items: flex-end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding-bottom: 11.25rem;
    min-height: calc(60vh - 92px); } }

@media screen and (min-width: 90em) {
  .masthead-search:not(.invert) .inner {
    padding-bottom: 12.75rem;
    min-height: calc(100vh - 12.75rem); } }

.masthead-search.purple h1 strong,
.masthead-search.purple h1 .text-highlight {
  color: #4C4394; }
.masthead-search.purple input[type="text"],
.masthead-search.purple input[type="search"] {
  border-color: #4C4394; }

.masthead-search.red h1 strong {
  color: #E64550; }

.masthead-search.red input[type="text"],
.masthead-search.red input[type="search"] {
  border-color: #E64550; }

.masthead-search.blue h1 strong {
  color: #41A494; }

.masthead-search.blue input[type="text"],
.masthead-search.blue input[type="search"] {
  border-color: #41A494; }

.masthead-search.pink h1 strong {
  color: #EB5E94; }

.masthead-search.pink input[type="text"],
.masthead-search.pink input[type="search"] {
  border-color: #EB5E94; }

.masthead-search .masthead-split__text {
  width: 100%; }
  .masthead-search .masthead-split__text h1 strong {
    display: block; }
  @media screen and (min-width: 75em) {
    .masthead-search .masthead-split__text h1 {
      margin-bottom: 3.5rem; } }
  .masthead-search .masthead-split__text p {
    font-size: 0.875rem; }
    .masthead-search .masthead-split__text p + * {
      margin-top: 1.25rem; }
  .masthead-search .masthead-split__text input {
    margin-bottom: 0; }
  .masthead-search .masthead-split__text form .search-button {
    background-image: url("https://wrexham.ac.uk/media/site-assets/img/search-icon-black.svg"); }
  @media print, screen and (min-width: 64em) {
    .masthead-search .masthead-split__text form {
      max-width: 25.6875rem; } }
  @media print, screen and (min-width: 40em) {
    .masthead-search .masthead-split__text {
      width: 50%; } }
  @media print, screen and (min-width: 64em) {
    .masthead-search .masthead-split__text {
      width: 40vw;
      max-width: 32.3125rem; } }

.masthead-search + .filters {
  margin-top: 0;
  position: relative; }
  .masthead-search + .filters .filters__facets {
    margin: 1.25rem 0; }
    @media print, screen and (min-width: 64em) {
      .masthead-search + .filters .filters__facets {
        position: absolute;
        bottom: calc(100% + 2.5rem);
        margin: 0; } }
    @media screen and (min-width: 75em) {
      .masthead-search + .filters .filters__facets {
        bottom: calc(100% + 2.875rem); } }
  .masthead-search + .filters .tabs {
    background: transparent; }
  .masthead-search + .filters .tabs-panel {
    margin-top: 0; }

.masthead-search__image {
  display: none; }
  @media print, screen and (min-width: 64em) {
    .masthead-search__image {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
          -ms-flex-align: end;
              align-items: flex-end;
      position: absolute;
      right: 0;
      top: 8%;
      width: 50%;
      max-width: 51.25rem;
      height: 100%; } }
  @media all and (device-width: 1440px) and (device-height: 900px) and (orientation: landscape) {
    .masthead-search__image {
      top: 0; } }

@media screen and (min-width: 75em) {
  .social-slider {
    padding-top: 11.0625rem 0 5.625rem 0; } }

@media print, screen and (min-width: 40em) {
  .social-slider .slick-list.draggable {
    overflow: visible;
    -webkit-clip-path: none;
            clip-path: none; } }

.social-slider h2 {
  letter-spacing: -0.04em; }
  @media print, screen and (min-width: 64em) {
    .social-slider h2 {
      margin-left: -1.25rem;
      margin-bottom: 4.4375rem; } }
  @media screen and (min-width: 75em) {
    .social-slider h2 {
      margin-left: -1.875rem; } }
  @media screen and (min-width: 90em) {
    .social-slider h2 {
      margin-left: -2.5rem; } }

.social-slider .content-card {
  position: relative;
  padding-top: 100%; }
  .social-slider .content-card img {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
  .social-slider .content-card i {
    position: absolute;
    top: 1rem;
    right: 1.25rem;
    font-size: 1.875rem; }
    @media screen and (min-width: 90em) {
      .social-slider .content-card i {
        font-size: 2.5rem; } }
  .social-slider .content-card a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1; }
  .social-slider .content-card a:focus::before {
    outline: 2px dotted #ffffff;
    outline-offset: 2px; }

@media print, screen and (min-width: 40em) {
  .social-slider__slide {
    margin-right: 1rem; } }

@media screen and (min-width: 75em) {
  .social-slider__slide {
    margin-right: 1.4375rem; } }

.social-slider__nav {
  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;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  width: 3.9375rem;
  height: 3.9375rem;
  bottom: calc(100% - 63px); }
  .social-slider__nav .slick-prev,
  .social-slider__nav .slick-next {
    top: 0;
    position: relative;
    height: auto;
    width: 0.75rem;
    background-image: none;
    color: #151F35; }
    .social-slider__nav .slick-prev:hover, .social-slider__nav .slick-prev:focus, .social-slider__nav .slick-prev:active,
    .social-slider__nav .slick-next:hover,
    .social-slider__nav .slick-next:focus,
    .social-slider__nav .slick-next:active {
      background-image: none; }
    .social-slider__nav .slick-prev:focus,
    .social-slider__nav .slick-next:focus {
      outline: 2px dotted;
      background: none; }
    .social-slider__nav .slick-prev svg,
    .social-slider__nav .slick-next svg {
      width: 100%;
      height: 100%; }
    @media print, screen and (min-width: 64em) {
      .social-slider__nav .slick-prev,
      .social-slider__nav .slick-next {
        width: 0.75rem; } }
    @media screen and (min-width: 75em) {
      .social-slider__nav .slick-prev,
      .social-slider__nav .slick-next {
        width: 1rem; } }
  .social-slider__nav .slick-prev {
    left: 0;
    -webkit-transform: none;
        -ms-transform: none;
            transform: none;
    margin-right: 4px; }
    @media screen and (min-width: 75em) {
      .social-slider__nav .slick-prev {
        margin-right: 9px; } }
  .social-slider__nav .slick-next {
    right: 0;
    -webkit-transform: scaleX(-1);
        -ms-transform: scaleX(-1);
            transform: scaleX(-1);
    margin-left: 4px; }
    @media screen and (min-width: 75em) {
      .social-slider__nav .slick-next {
        margin-left: 9px; } }
  @media screen and (min-width: 75em) {
    .social-slider__nav {
      width: 7.875rem;
      height: 7.875rem; } }
  .social-slider__nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #ffffff;
    border: 1px solid #41A494;
    width: 100%;
    height: 100%;
    border-radius: 100%; }
  @media print, screen and (min-width: 40em) {
    .social-slider__nav {
      top: auto;
      bottom: 25%;
      left: auto;
      right: -2.5%; } }
  @media screen and (min-width: 75em) {
    .social-slider__nav {
      right: -3.5%; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5jc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2ZvdW5kYXRpb24uc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fYnJlYWtwb2ludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXZlYWwuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdmVuZG9yL25vcm1hbGl6ZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL190ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX3VuaXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX2NoZWNrYm94LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19sYWJlbC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9faGVscC10ZXh0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2Zvcm1zL19pbnB1dC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZmllbGRzZXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvZm9ybXMvX3NlbGVjdC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9mb3Jtcy9fZXJyb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdHlwb2dyYXBoeS9fYmFzZS5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19oZWxwZXJzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3R5cG9ncmFwaHkvX2FsaWdubWVudC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy90eXBvZ3JhcGh5L19wcmludC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jbGFzc2VzLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2d1dHRlcnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy94eS1ncmlkL19jZWxsLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3V0aWwvX21hdGguc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MveHktZ3JpZC9fbGF5b3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2NvbGxhcHNlLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX3Bvc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL3h5LWdyaWQvX2ZyYW1lLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2J1dHRvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX2FjY29yZGlvbi5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy9jb21wb25lbnRzL19yZXNwb25zaXZlLWVtYmVkLnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3RhYnMuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvdXRpbC9fY29sb3Iuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxvYXQuc2NzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9mb3VuZGF0aW9uLXNpdGVzL3Njc3MvY29tcG9uZW50cy9fZmxleC5zY3NzIiwiLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2ZvdW5kYXRpb24tc2l0ZXMvc2Nzcy91dGlsL19mbGV4LnNjc3MiLCIuLi8uLi8uLi9ub2RlX21vZHVsZXMvZm91bmRhdGlvbi1zaXRlcy9zY3NzL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsImFic3RyYWN0cy9faGVscGVycy5zY3NzIiwiYWJzdHJhY3RzL192YXJpYWJsZXMuc2NzcyIsImFic3RyYWN0cy9fbWl4aW5zLnNjc3MiLCJhYnN0cmFjdHMvX3V0aWxzLnNjc3MiLCJnbG9iYWwvX2Zvcm1zLnNjc3MiLCJnbG9iYWwvX3R5cG9ncmFwaHkuc2NzcyIsImxheW91dC9fYmFubmVyLnNjc3MiLCJsYXlvdXQvX2NvbnRlbnQtdy1zaWRlYmFyLnNjc3MiLCJsYXlvdXQvX3NpdGUtZm9vdGVyLnNjc3MiLCJjb21wb25lbnRzL19hbGVydC5zY3NzIiwiY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCJjb21wb25lbnRzL19hY2NyZWRpdGF0aW9ucy5zY3NzIiwiY29tcG9uZW50cy9fYW5ub3VuY2VtZW50cy5zY3NzIiwiYWJzdHJhY3RzL19mdW5jdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX2F6LnNjc3MiLCJjb21wb25lbnRzL19ibG9jay5zY3NzIiwiY29tcG9uZW50cy9fYmxvY2stbGlzdC5zY3NzIiwiY29tcG9uZW50cy9fYnJlYWRjcnVtYi5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9uLWdyb3VwLnNjc3MiLCJjb21wb25lbnRzL19idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jYWxsb3V0LnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWNvbHMuc2NzcyIsImNvbXBvbmVudHMvX2Nvb2tpZS1iYW5uZXIuc2NzcyIsImNvbXBvbmVudHMvX2NsdXN0ZXItaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX2NsdXN0ZXItaW1hZ2UtdGV4dC5zY3NzIiwiY29tcG9uZW50cy9fY29udGVudC1jYXJkLnNjc3MiLCJjb21wb25lbnRzL19jb3Vyc2UtYWNjcmVkaXRhdGlvbnMuc2NzcyIsImNvbXBvbmVudHMvX2NvdXJzZS1idXR0b25zLnNjc3MiLCJjb21wb25lbnRzL19jb3Vyc2UtZGV0YWlscy5zY3NzIiwiY29tcG9uZW50cy9fY291cnNlLWludHJvLnNjc3MiLCJjb21wb25lbnRzL19ldmVudC1jYXJkLnNjc3MiLCJjb21wb25lbnRzL19ldmVudC1jYXJkLWdyb3VwLnNjc3MiLCJjb21wb25lbnRzL19mZWF0dXJlLWJsb2Nrcy5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1ldmVudC5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1wYW5lbC5zY3NzIiwiY29tcG9uZW50cy9fZm9ybS1wYW5lbC5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1wcm9maWxlLnNjc3MiLCJjb21wb25lbnRzL19maW5kLWNvdXJzZS5zY3NzIiwiY29tcG9uZW50cy9fZmlsdGVycy5zY3NzIiwiY29tcG9uZW50cy9fZmlsdGVyLXRvZ2dsZS5zY3NzIiwiY29tcG9uZW50cy9fZ2FsbGVyeS5zY3NzIiwiY29tcG9uZW50cy9fZ2VuZXJhbC1jb250ZW50LnNjc3MiLCJjb21wb25lbnRzL19oYXNodGFnLnNjc3MiLCJjb21wb25lbnRzL19pbnRyby13LXN0YXQuc2NzcyIsImNvbXBvbmVudHMvX2xhdGVzdC1ldmVudHMuc2NzcyIsImNvbXBvbmVudHMvX2xhdGVzdC1uZXdzLnNjc3MiLCJjb21wb25lbnRzL19sb2dvLnNjc3MiLCJjb21wb25lbnRzL19tYWluLnNjc3MiLCJjb21wb25lbnRzL19tYXN0aGVhZC5zY3NzIiwiY29tcG9uZW50cy9fbWFzdGhlYWQtaW1hZ2Uuc2NzcyIsImNvbXBvbmVudHMvX21lbnUtZmVhdHVyZS5zY3NzIiwiY29tcG9uZW50cy9fbWVudS10b2dnbGUuc2NzcyIsImNvbXBvbmVudHMvX21vcmUuc2NzcyIsImNvbXBvbmVudHMvX25vLXNlYXJjaC1yZXN1bHRzLnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtdG9nZ2xlLnNjc3MiLCJjb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCJjb21wb25lbnRzL19wYW5lbC5zY3NzIiwiY29tcG9uZW50cy9fcGxheS12aWRlby5zY3NzIiwiY29tcG9uZW50cy9fcHJpbWFyeS1tZW51LnNjc3MiLCJjb21wb25lbnRzL19zZWFyY2gtcmVzdWx0cy5zY3NzIiwiY29tcG9uZW50cy9fc2VhcmNoLXJlc3VsdC1jYXJkLnNjc3MiLCJjb21wb25lbnRzL19zZWNvbmRhcnktY29udGVudC5zY3NzIiwiY29tcG9uZW50cy9fc2Vjb25kYXJ5LW1lbnUuc2NzcyIsImNvbXBvbmVudHMvX3JlY2l0ZW1lLnNjc3MiLCJjb21wb25lbnRzL19yZWxhdGVkLnNjc3MiLCJjb21wb25lbnRzL19yZWxhdGVkLWFzaWRlLWNhcmQuc2NzcyIsImNvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiY29tcG9uZW50cy9fcmV2ZWFsLWNvbnRlbnQuc2NzcyIsImNvbXBvbmVudHMvX3JvdW5kLW9mZi5zY3NzIiwiY29tcG9uZW50cy9fc2VjdGlvbi1mZWF0dXJlcy5zY3NzIiwiY29tcG9uZW50cy9fc2tpcC1saW5rLnNjc3MiLCJjb21wb25lbnRzL19zaXRlLXNlYXJjaC5zY3NzIiwiY29tcG9uZW50cy9fc2xpY2suc2NzcyIsImNvbXBvbmVudHMvX3NvY2lhbC1saW5rcy5zY3NzIiwiY29tcG9uZW50cy9fc3RhdC5zY3NzIiwiY29tcG9uZW50cy9fdGFicy5zY3NzIiwiY29tcG9uZW50cy9fdGFnLnNjc3MiLCJjb21wb25lbnRzL190YWctZ3JvdXAuc2NzcyIsImNvbXBvbmVudHMvX3VuaXN0YXRzLnNjc3MiLCJjb21wb25lbnRzL19jb250ZW50LWNhcmQtcGluay5zY3NzIiwiY29tcG9uZW50cy9fc2VydmljZS1zdGF0dXMuc2NzcyIsImNvbXBvbmVudHMvX3Byb2ctc3BlYy5zY3NzIiwiY29tcG9uZW50cy9fc2l0ZS1mb290ZXItY3RhLnNjc3MiLCJjb21wb25lbnRzL19tYXN0aGVhZC1zcGxpdC5zY3NzIiwiY29tcG9uZW50cy9fZmVhdHVyZS1pbWcuc2NzcyIsImNvbXBvbmVudHMvX2Rpc2NvdmVyLW1vcmUtY29scy5zY3NzIiwiY29tcG9uZW50cy9fcXVpY2stbGlua3Muc2NzcyIsImNvbXBvbmVudHMvX3N0dWRlbnQtY3RhLnNjc3MiLCJjb21wb25lbnRzL19zdGF0cy1zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX2NpcmNsZS5zY3NzIiwiY29tcG9uZW50cy9pbnRyby1ibG9jay5zY3NzIiwiY29tcG9uZW50cy9faW1nLXRleHQtY29sLnNjc3MiLCJjb21wb25lbnRzL19ldmVudC1zbGlkZXIuc2NzcyIsImNvbXBvbmVudHMvX2NvdXJzZS1oaWdobGlnaHRzLnNjc3MiLCJjb21wb25lbnRzL19kaXNjb3Zlci1tb3JlLXNsaWRlci5zY3NzIiwiY29tcG9uZW50cy9fbWFzdGhlYWQtaW1hZ2Utc2hvcnQuc2NzcyIsImNvbXBvbmVudHMvX2ZlYXR1cmUtaW1nLWNvbHMuc2NzcyIsImNvbXBvbmVudHMvX21hc3RoZWFkLXNlYXJjaC5zY3NzIiwiY29tcG9uZW50cy9fc29jaWFsLXNsaWRlci5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdCQUFnQjtBQ0FoQjs7Ozs7RURNRTtBRTBLTTtFQ25JTjtJQUNFLFdBQVc7SUFDWCxVQUFVO0lBQ1YsY0FBYyxFQUFBLEVBQ2Y7O0FDaERELDJFQUFBO0FBUUE7RUFDRSxpQkFBaUI7RUFDakIsOEJBQThCLEVBQUE7O0FBUWhDO0VBQ0UsU0FBUyxFQUFBOztBQU1YO0VBQ0UsY0FBYztFQUNkLGdCQUFnQixFQUFBOztBQVNsQjtFQUNFLCtCQUF1QjtVQUF2Qix1QkFBdUI7RUFDdkIsU0FBUztFQUNULGlCQUFpQixFQUFBOztBQU1uQjtFQUNFLGlDQUFpQztFQUNqQyxjQUFjLEVBQUE7O0FBUWhCO0VBQ0UsNkJBQTZCLEVBQUE7O0FBTS9CO0VBQ0UsbUJBQW1CO0VBQ25CLDBCQUEwQjtFQUMxQix5Q0FBaUM7VUFBakMsaUNBQWlDLEVBQUE7O0FBS25DOztFQUVFLG1CQUFtQixFQUFBOztBQU1yQjs7O0VBR0UsaUNBQWlDO0VBQ2pDLGNBQWMsRUFBQTs7QUFLaEI7RUFDRSxjQUFjLEVBQUE7O0FBTWhCOztFQUVFLGNBQWM7RUFDZCxjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLHdCQUF3QixFQUFBOztBQUcxQjtFQUNFLGVBQWUsRUFBQTs7QUFHakI7RUFDRSxXQUFXLEVBQUE7O0FBUWI7RUFDRSxrQkFBa0IsRUFBQTs7QUFTcEI7Ozs7O0VBS0Usb0JBQW9CO0VBQ3BCLGVBQWU7RUFDZixp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QixFQUFBOztBQUl0Qjs7RUFFRSxpQlhwS3FCO0VXcUtyQixvQkFBb0IsRUFBQTs7QWJ0THRCO0VhMkxFLGNYN0VpQjtFVzhFakIsb0JBQW9CLEVBQUE7O0FBSXRCOzs7Ozs7RUFNRSxzQlgzTDBCO0VXNEwxQixrQlg5SHNCO0VXK0h0QixpQlhoSXFCO0VXaUlyQixjWDlIa0I7RVcrSGxCLGtDWDdGc0MsRUFBQTtFV21GeEM7Ozs7OztJQWFJLGNBQWM7SUFDZCxjWHJOZSxFQUFBOztBVzhOYjtFQU9JLG9CUjlONkM7RVFxTzdDLG9CWHJKaUI7RVcrSmpCLGFBQWE7RUFLYixnQlIvT0MsRUFBQTs7QVFrTkw7RUFPSSxpQlI5TjZDO0VRcU83QyxvQlhwSmlCO0VXOEpqQixhQUFhO0VBS2Isc0JScFA2QyxFQUFBOztBUXVOakQ7RUFPSSxrQlI5TjZDO0VRcU83QyxnQlhuSmlCO0VXNkpqQixhQUFhO0VBS2Isc0JScFA2QyxFQUFBOztBUXVOakQ7RUFPSSxtQlI5TjZDO0VRcU83QyxvQlhsSmlCO0VXNEpqQixhQUFhO0VBS2Isc0JScFA2QyxFQUFBOztBUXVOakQ7RUFPSSxrQlI5TjZDO0VRcU83QyxvQlhqSmlCO0VXMkpqQixhQUFhO0VBS2Isc0JScFA2QyxFQUFBOztBUXVOakQ7RUFPSSxtQlI5TjZDO0VRcU83QyxnQlhoSmlCO0VXMEpqQixhQUFhO0VBS2Isc0JScFA2QyxFQUFBOztBUHdGakQ7RWUrSEE7SUFPSSxtQlI5TjZDLEVBQUEsRVF3UGhEOztBZjNKRDtFZTBIQTtJQU9JLGtCUjlONkMsRUFBQTtFUXVOakQ7SUFPSSxtQlI5TjZDO0lRb1A3Qyx1QlJwUDZDLEVBQUE7RVF1TmpEO0lBT0ksbUJSOU42QztJUW9QN0MsdUJScFA2QyxFQUFBO0VRdU5qRDtJQU9JLG1CUjlONkM7SVFvUDdDLHVCUnBQNkMsRUFBQTtFUXVOakQ7SUFPSSxlUjlONkM7SVFvUDdDLHVCUnBQNkMsRUFBQTtFUXVOakQ7SUFPSSxtQlI5TjZDO0lRb1A3Qyx1QlJwUDZDLEVBQUEsRVF3UGhEOztBZjNKRDtFZTBIQTtJQU9JLG1CUjlONkM7SVFxTzdDLG9CWGxJbUIsRUFBQSxFV3FKdEI7O0FmM0pEO0VlMEhBO0lBT0ksZ0JSOU42QyxFQUFBLEVRd1BoRDs7QWYzSkQ7RWUwSEE7SUFPSSxrQlI5TjZDLEVBQUEsRVF3UGhEOztBYnhSUDtFYStSRSxvQkFBb0I7RUFDcEIsY1hqUmM7RVdrUmQscUJYM0l5QjtFVzZJekIsZUFBZSxFQUFBO0VBTGpCO0lBU0ksY1hsSjJELEVBQUE7RVd5SS9EO0lBZ0JJLFNBQVMsRUFBQTs7QWJqVWI7RWF1VUUsV0FBVztFQUVYLG9CUnRScUQ7RVF1UnJELFNBQVM7RUFDVCxvQlg5SnlCO0VXZ0t6QixhQUFhO0VBQ2IsZUFBZTtFQUNmLGdDWG5TaUI7RVdvU2pCLGNBQWMsRUFBQTs7QUFJaEI7OztFQUdFLHFCUnBTcUQ7RVFxU3JELDRCWHZLeUI7RVd3S3pCLGdCWHpUbUIsRUFBQTs7QVc2VHJCO0VBQ0Usa0JBQWtCLEVBQUE7O0FBSXBCO0VBQ0Usb0JYakxzQjtFV2tMdEIscUJYcExrQixFQUFBOztBV3dMcEI7RUFDRSxvQlh2THNCLEVBQUE7O0FXMkx4QjtFQUVJLG9CWDVMMkI7RVc2TDNCLGdCQUFnQixFQUFBOztBQUtwQjtFQUNFLG1CWGxNeUIsRUFBQTtFV2lNM0I7SUFJSSxxQlhuTThCO0lXb005QixpQlh0VG1CLEVBQUE7O0FXMlR2QjtFQUNFLGtCUjdVcUQ7RVE4VXJELHNDUjlVcUQ7RVErVXJELDhCWHRWaUIsRUFBQTtFV21WbkI7SUFNSSxnQlhyV2lCO0lXc1dqQixjWHpWYSxFQUFBOztBV3VXakI7RUFDRSxpQ1h2V1c7RVd3V1gsWUFBWTtFQUNaLHFCQUFxQixFQUFBOztBQUl2QjtFQUNFLFNBQVMsRUFBQTs7QUFXWDtFQUNFLFNBQVM7RUFDVCwyQlJqWFM7RVFtWFQseUJYdllXO0VXeVlYLDREWGhUbUU7RVdpVG5FLGNYaFlXLEVBQUE7O0FZa0RiO0VBQ0Usa0JaeUd5QjtFWXhHekIscUJaeUc0QjtFWXZHNUIsbUJaakN5QjtFWWtDekIsZ0Jaa0dzQjtFWWpHdEIsY1p6RGUsRUFB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QU07TUFBTixrQkFBTTtVQUFOLGNBQU0sRUFBQTs7QUg5QkY7RUd5RUYsZUNuQnlELEVBQUE7O0FKdER2RDtFR3lFRixnQkNuQnlELEVBQUE7O0FKdER2RDtFR3lFRixVQ25CeUQsRUFBQTs7QUp0RHZEO0VHeUVGLGdCQ25CeUQsRUFBQTs7QUp0RHZEO0VHeUVGLGdCQ25CeUQsRUFBQTs7QUp0RHZEO0VHeUVGLFVDbkJ5RCxFQUFBOztBSnREdkQ7RUd5RUYsZ0JDbkJ5RCxFQUFBOztBSnREdkQ7RUd5RUYsZ0JDbkJ5RCxFQUFBOztBSnREdkQ7RUd5RUYsVUNuQnlELEVBQUE7O0FKdER2RDtFR3lFRixnQkNuQnlELEVBQUE7O0FKdER2RDtFR3lFRixnQkNuQnlELEVBQUE7O0FKdER2RDtFR3lFRixXQ25CeUQsRUFBQTs7QXZCK0JyRDtFbUJ6R0Y7SUdrREosbUJBQU07SUFBTixxQkFBTTtRQUFOLGlCQUFNO1lBQU4sYUFBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsbUJBQU07SUFBTixzQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixXQ25CeUQsRUFBQSxFSm5EdEQ7O0FuQmtGQztFbUJ6R0Y7SUdrREosbUJBQU07SUFBTixxQkFBTTtRQUFOLGlCQUFNO1lBQU4sYUFBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsbUJBQU07SUFBTixzQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixXQ25CeUQsRUFBQSxFSm5EdEQ7O0FuQnVGQztFbUI5R0Y7SUdrREosbUJBQU07SUFBTixxQkFBTTtRQUFOLGlCQUFNO1lBQU4sYUFBTTtJQTJDSixXQWxGWSxFQUFBO0VITlo7SUc2Q0YsbUJBQU07SUFBTixzQkFBTTtRQUFOLGtCQUFNO1lBQU4sY0FBTSxFQUFBO0VIdkNGO0lHa0ZGLFdBbEZZLEVBQUE7RUhTVjtJR3lFRixlQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixVQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLFVDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixnQkNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsVUNuQnlELEVBQUE7RUp0RHZEO0lHeUVGLGdCQ25CeUQsRUFBQTtFSnREdkQ7SUd5RUYsZ0JDbkJ5RCxFQUFBO0VKdER2RDtJR3lFRixXQ25CeUQsRUFBQSxFSm5EdEQ7O0FBS0w7RUFDRSxXQUFXLEVBQUE7O0FBSWI7RUFDRSxZQUFZLEVBQUE7O0FBOEJkO0VDdkdNLHNCQUE2RDtFQUE3RCx1QkFBNkQsRUFBQTtFcEJnSjdEO0ltQnpDTjtNQ3ZHTSxzQkFBNkQ7TUFBN0QsdUJBQTZELEVBQUEsRURzSWxFO0VuQlVLO0ltQnpDTjtNQ3ZHTSxzQkFBNkQ7TUFBN0QsdUJBQTZELEVBQUEsRURzSWxFO0VuQmVLO0ltQjlDTjtNQ3ZHTSx3QkFBNkQ7TUFBN0QseUJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDJCQXREOEY7SUZyRTVGLHFCQUE2RDtJQUE3RCxzQkFBNkQsRUFBQTtFcEJ1STNEO0ltQnpDTjtNRzZCRSwyQkF0RDhGO01GckU1RixxQkFBNkQ7TUFBN0Qsc0JBQTZELEVBQUEsRUQyRzFEO0VuQjRCRDtJbUJ6Q047TUc2QkUsMkJBdEQ4RjtNRnJFNUYscUJBQTZEO01BQTdELHNCQUE2RCxFQUFBLEVEMkcxRDtFbkJpQ0Q7SW1COUNOO01HNkJFLDhCQXREOEY7TUZyRTVGLHVCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRDJHMUQ7RUFyQ1A7SUdxREUsV0FsRlksRUFBQTtFSGlDZDtJR2lERSxXQWxGWSxFQUFBO0VIeUNaO0lHeUNBLCtCQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMEJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxnQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0V0QmtFMUY7SW1CakVOO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSwrQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSENoRztNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsK0JBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUEsRUhlN0Y7RW5CbURHO0ltQmpFTjtNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsK0JBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwwQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLCtCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSwrQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDBCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQSxFSGU3RjtFbkJ3REc7SW1CdEVOO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSENoRztNR3FERSxXQWxGWSxFQUFBO0lIaUNkO01HaURFLFdBbEZZLEVBQUE7SUh5Q1o7TUd5Q0Esa0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw2QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsV0FsRlksRUFBQTtJSGlDZDtNR2lERSxXQWxGWSxFQUFBO0lIeUNaO01HeUNBLGtDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFdBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsV0FsRlksRUFBQTtJSHlDWjtNR3lDQSxrQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDZCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQSxFSGU3Rjs7QUE4Q0g7RUMzSU0sdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VwQmdKN0Q7SW1CTE47TUMzSU0sdUJBQTZEO01BQTdELHNCQUE2RCxFQUFBLEVEZ0poRTtFbkJBRztJbUJMTjtNQzNJTSx1QkFBNkQ7TUFBN0Qsc0JBQTZELEVBQUEsRURnSmhFO0VuQktHO0ltQlZOO01DM0lNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRGdKaEU7O0FBSUQ7RUNwSkksdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VwQmdKN0Q7SW1CSUo7TUNwSkksdUJBQTZEO01BQTdELHNCQUE2RCxFQUFBLEVEc0poRTtFbkJORztJbUJJSjtNQ3BKSSx1QkFBNkQ7TUFBN0Qsc0JBQTZELEVBQUEsRURzSmhFO0VuQkRHO0ltQkRKO01DcEpJLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRHNKaEU7O0FBWEg7RUMzSU0sdUJBQTZEO0VBQTdELHNCQUE2RCxFQUFBO0VwQmdKN0Q7SW1CTE47TUMzSU0sdUJBQTZEO01BQTdELHNCQUE2RCxFQUFBLEVEMkpoRTtFbkJYRztJbUJMTjtNQzNJTSx1QkFBNkQ7TUFBN0Qsc0JBQTZELEVBQUEsRUQySmhFO0VuQk5HO0ltQlZOO01DM0lNLHlCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRDJKaEU7O0FLM0pIO0VGb0lFLFdDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsVUNuQnlELEVBQUE7O0FDakgzRDtFRm9JRSxnQkNuQnlELEVBQUE7O0FDakgzRDtFRm9JRSxVQ25CeUQsRUFBQTs7QUNqSDNEO0VGb0lFLFVDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsZ0JDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsZ0JDbkJ5RCxFQUFBOztBQ2pIM0Q7RUZvSUUsWUNuQnlELEVBQUE7O0F2QitCckQ7RXdCaEpOO0lGb0lFLFdDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxZQ25CeUQsRUFBQSxFQy9HMUQ7O0F4QjhJSztFd0JoSk47SUZvSUUsV0NuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxVQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsZ0JDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFlDbkJ5RCxFQUFBLEVDL0cxRDs7QXhCbUpLO0V3QnJKTjtJRm9JRSxXQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsVUNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLFVDbkJ5RCxFQUFBO0VDakgzRDtJRm9JRSxnQkNuQnlELEVBQUE7RUNqSDNEO0lGb0lFLGdCQ25CeUQsRUFBQTtFQ2pIM0Q7SUZvSUUsWUNuQnlELEVBQUEsRUMvRzFEOztBQUZEO0VGb0lFLDJCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDBCQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLGdDQXREOEYsRUFBQTs7QUU5RWhHO0VGb0lFLDRCQXREOEYsRUFBQTs7QXRCa0UxRjtFd0JoSk47SUZvSUUsMkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwwQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwwQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsZ0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxnQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDBCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxnQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBLEVFNUUvRjs7QXhCOElLO0V3QmhKTjtJRm9JRSwyQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwwQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsZ0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwwQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDBCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwwQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsZ0NBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxnQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw0QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDJCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxnQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDBCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsMEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxnQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLGdDQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNEJBdEQ4RixFQUFBLEVFNUUvRjs7QXhCbUpLO0V3QnJKTjtJRm9JRSw4QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDhCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsOEJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxtQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLG1DQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsbUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsNkJBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxtQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLG1DQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsbUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxtQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLG1DQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsbUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSwrQkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLCtCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsK0JBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw4QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsbUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSw2QkF0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLDZCQXREOEYsRUFBQTtFRTlFaEc7SUZvSUUsbUNBdEQ4RixFQUFBO0VFOUVoRztJRm9JRSxtQ0F0RDhGLEVBQUE7RUU5RWhHO0lGb0lFLCtCQXREOEYsRUFBQSxFRTVFL0Y7O0FMcU1HO0VNOU1FLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0VBc0J4QjtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQTtFdkIrQnJEO0l5QjVISTtNSGdIUixlQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7RXpCMEhMO0l5QjVISTtNSGdIUixlQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7RXpCK0hMO0l5QmpJSTtNSGdIUixlQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixVQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLFVDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixnQkNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsVUNuQnlELEVBQUE7SUU3RmpEO01IZ0hSLGdCQ25CeUQsRUFBQTtJRTdGakQ7TUhnSFIsZ0JDbkJ5RCxFQUFBO0lFN0ZqRDtNSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0FOdUxQO0VNN0tFLGVBQTBCO0VBQTFCLGNBQTBCLEVBQUE7RUFHNUI7SUFFSSxnQkFBNEI7SUFBNUIsZUFBNEIsRUFBQTs7QXpCMkc5QjtFbUJ1REY7SU05TUUsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGVBQTBCO01BQTFCLGNBQTBCLEVBQUEsRUFFN0I7O0F6QmdKQztFeUJySUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJtSUw7RXlCNUhJO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QXpCMEhMO0V5QjVISTtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0F6QitITDtFeUJqSUk7SUhnSFIsZUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsV0NuQnlELEVBQUEsRUUzRmhEOztBekIwSEw7RW1CNkRGO0lNN0tFLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxnQkFBNEI7TUFBNUIsZUFBNEIsRUFBQSxFQUUvQjs7QXpCeUdDO0VtQnVERjtJTTlNRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZUFBMEI7TUFBMUIsY0FBMEIsRUFBQSxFQUU3Qjs7QXpCZ0pDO0V5QnJJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6Qm1JTDtFeUJySUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJtSUw7RXlCNUhJO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QXpCK0hMO0V5QmpJSTtJSGdIUixlQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixXQ25CeUQsRUFBQSxFRTNGaEQ7O0F6QjBITDtFbUI2REY7SU03S0UsZUFBMEI7SUFBMUIsY0FBMEIsRUFBQTtJQUc1QjtNQUVJLGdCQUE0QjtNQUE1QixlQUE0QixFQUFBLEVBRS9COztBekI4R0M7RW1Ca0RGO0lNOU1FLGVBQTBCO0lBQTFCLGNBQTBCLEVBQUE7SUFHNUI7TUFFSSxlQUEwQjtNQUExQixjQUEwQixFQUFBLEVBRTdCOztBekJxSkM7RXlCMUlJO0lIeUhSLGVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFdDbkJ5RCxFQUFBLEVFcEdoRDs7QXpCd0lMO0V5QjFJSTtJSHlIUixlQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixXQ25CeUQsRUFBQSxFRXBHaEQ7O0F6QndJTDtFeUIxSUk7SUh5SFIsZUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsVUNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixVQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsZ0JDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLFVDbkJ5RCxFQUFBO0VFdEdqRDtJSHlIUixnQkNuQnlELEVBQUE7RUV0R2pEO0lIeUhSLGdCQ25CeUQsRUFBQTtFRXRHakQ7SUh5SFIsV0NuQnlELEVBQUEsRUVwR2hEOztBekJ3SUw7RXlCaklJO0lIZ0hSLGVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFVDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsVUNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLGdCQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixVQ25CeUQsRUFBQTtFRTdGakQ7SUhnSFIsZ0JDbkJ5RCxFQUFBO0VFN0ZqRDtJSGdIUixnQkNuQnlELEVBQUE7RUU3RmpEO0lIZ0hSLFdDbkJ5RCxFQUFBLEVFM0ZoRDs7QXpCK0hMO0VtQndERjtJTTdLRSxlQUEwQjtJQUExQixjQUEwQixFQUFBO0lBRzVCO01BRUksZ0JBQTRCO01BQTVCLGVBQTRCLEVBQUEsRUFFL0I7O0FOb0xEO0VPdk1GLGVBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRixnQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHFCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsc0NBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLHVDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsZ0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRixpQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLHVDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsZ0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRixpQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLHVDQUE2QixFQUFBOztBUHVNM0I7RU92TUYsZ0JBQTZCLEVBQUE7O0FQMk0zQjtFTzNNRixpQ0FBNkIsRUFBQTs7QVB1TTNCO0VPdk1GLHNCQUE2QixFQUFBOztBUDJNM0I7RU8zTUYsdUNBQTZCLEVBQUE7O0FQdU0zQjtFT3ZNRixzQkFBNkIsRUFBQTs7QVAyTTNCO0VPM01GLHVDQUE2QixFQUFBOztBMUI0SHpCO0VtQjJFRjtJT3ZNRixlQUE2QixFQUFBO0VQMk0zQjtJTzNNRixnQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYscUJBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHNDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixpQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixpQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLGdCQUE2QixFQUFBO0VQMk0zQjtJTzNNRixpQ0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHVDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUEsRVA2TTFCOztBbkJqRkM7RW1CMkVGO0lPdk1GLGVBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGdDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixxQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsc0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix1Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix1Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix1Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsZ0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLGlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixzQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsdUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix1Q0FBNkIsRUFBQSxFUDZNMUI7O0FuQjVFQztFbUJzRUY7SU92TUYsZUFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsa0NBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHFCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix3Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsbUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix5Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsbUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix5Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHlDQUE2QixFQUFBO0VQdU0zQjtJT3ZNRixnQkFBNkIsRUFBQTtFUDJNM0I7SU8zTUYsbUNBQTZCLEVBQUE7RVB1TTNCO0lPdk1GLHNCQUE2QixFQUFBO0VQMk0zQjtJTzNNRix5Q0FBNkIsRUFBQTtFUHVNM0I7SU92TUYsc0JBQTZCLEVBQUE7RVAyTTNCO0lPM01GLHlDQUE2QixFQUFBLEVQNk0xQjs7QUF6SlM7RUV0RWQsb0JBQWE7RUFBYixxQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDRCQUg2QjtFQUc3Qiw2QkFINkI7RUFHN0IsZ0NBSDZCO01BRzdCLDRCQUg2QjtVQUc3Qix3QkFINkIsRUFBQTtFRmlQN0I7SUcxSUEsWUFBbUI7SUFDbkIsZ0JBQTJCLEVBQUE7RUh5STNCO0lHN0dFLFlBbEZZLEVBQUE7RUgrTGQ7SUc3R0UsWUFsRlksRUFBQTtFSCtMZDtJQTJCTSx3QkFBZ0I7UUFBaEIsNkJBQWdCO1lBQWhCLGdCQUFnQixFQUFBO0VuQjVIaEI7SW1CaUdOO01BMkJNLHdCQUFnQjtVQUFoQiw2QkFBZ0I7Y0FBaEIsZ0JBQWdCLEVBQUEsRUFDakI7RW5CN0hDO0ltQmlHTjtNQTJCTSx3QkFBZ0I7VUFBaEIsNkJBQWdCO2NBQWhCLGdCQUFnQixFQUFBLEVBQ2pCO0VuQnhIQztJbUI0Rk47TUEyQk0sd0JBQWdCO1VBQWhCLDZCQUFnQjtjQUFoQixnQkFBZ0IsRUFBQSxFQUNqQjtFQTVCTDtJR3hKQSxtQkFBTTtJQUFOLHNCQUFNO1FBQU4sa0JBQU07WUFBTixjQUFNLEVBQUE7RUh3Sk47SUc3R0UsZ0JDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxpQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLFdDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxpQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLGlCQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsV0NuQnlELEVBQUE7RUpnSTNEO0lHN0dFLGlCQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsaUJDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxXQ25CeUQsRUFBQTtFSmdJM0Q7SUc3R0UsaUJDbkJ5RCxFQUFBO0VKZ0kzRDtJRzdHRSxpQkNuQnlELEVBQUE7RUpnSTNEO0lHN0dFLFlDbkJ5RCxFQUFBO0V2QitCckQ7SW1CaUdOO01HeEpBLG1CQUFNO01BQU4scUJBQU07VUFBTixpQkFBTTtjQUFOLGFBQU07TUEyQ0osWUFsRlksRUFBQTtJSCtMZDtNR3hKQSxtQkFBTTtNQUFOLHNCQUFNO1VBQU4sa0JBQU07Y0FBTixjQUFNLEVBQUE7SUh3Sk47TUc3R0UsWUFsRlksRUFBQTtJSCtMZDtNRzdHRSxnQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsWUNuQnlELEVBQUEsRUp5THBEO0VuQjFKRDtJbUJpR047TUd4SkEsbUJBQU07TUFBTixxQkFBTTtVQUFOLGlCQUFNO2NBQU4sYUFBTTtNQTJDSixZQWxGWSxFQUFBO0lIK0xkO01HeEpBLG1CQUFNO01BQU4sc0JBQU07VUFBTixrQkFBTTtjQUFOLGNBQU0sRUFBQTtJSHdKTjtNRzdHRSxZQWxGWSxFQUFBO0lIK0xkO01HN0dFLGdCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxZQ25CeUQsRUFBQSxFSnlMcEQ7RW5CckpEO0ltQjRGTjtNR3hKQSxtQkFBTTtNQUFOLHFCQUFNO1VBQU4saUJBQU07Y0FBTixhQUFNO01BMkNKLFlBbEZZLEVBQUE7SUgrTGQ7TUd4SkEsbUJBQU07TUFBTixzQkFBTTtVQUFOLGtCQUFNO2NBQU4sY0FBTSxFQUFBO0lId0pOO01HN0dFLFlBbEZZLEVBQUE7SUgrTGQ7TUc3R0UsZ0JDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFdDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsV0NuQnlELEVBQUE7SUpnSTNEO01HN0dFLGlCQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxXQ25CeUQsRUFBQTtJSmdJM0Q7TUc3R0UsaUJDbkJ5RCxFQUFBO0lKZ0kzRDtNRzdHRSxpQkNuQnlELEVBQUE7SUpnSTNEO01HN0dFLFlDbkJ5RCxFQUFBLEVKeUxwRDs7QUFPTDtFQ2pUSSxxQkFBNkQ7RUFBN0Qsd0JBQTZELEVBQUE7RXBCZ0o3RDtJbUJpS0o7TUNqVEkscUJBQTZEO01BQTdELHdCQUE2RCxFQUFBLEVEcVQ5RDtFbkJyS0M7SW1CaUtKO01DalRJLHFCQUE2RDtNQUE3RCx3QkFBNkQsRUFBQSxFRHFUOUQ7RW5CaEtDO0ltQjRKSjtNQ2pUSSx1QkFBNkQ7TUFBN0QsMEJBQTZELEVBQUEsRURxVDlEOztBQUpIO0VDalRJLHFCQUE2RDtFQUE3RCx3QkFBNkQsRUFBQTtFcEJnSjdEO0ltQmlLSjtNQ2pUSSxxQkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRUQwVDlEO0VuQjFLQztJbUJpS0o7TUNqVEkscUJBQTZEO01BQTdELHdCQUE2RCxFQUFBLEVEMFQ5RDtFbkJyS0M7SW1CNEpKO01DalRJLHVCQUE2RDtNQUE3RCwwQkFBNkQsRUFBQSxFRDBUOUQ7O0FBbk5MO0VDdkdNLHFCQUE2RDtFQUE3RCx3QkFBNkQsRUFBQTtFcEJnSjdEO0ltQnpDTjtNQ3ZHTSxxQkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRURzSWxFO0VuQlVLO0ltQnpDTjtNQ3ZHTSxxQkFBNkQ7TUFBN0Qsd0JBQTZELEVBQUEsRURzSWxFO0VuQmVLO0ltQjlDTjtNQ3ZHTSx1QkFBNkQ7TUFBN0QsMEJBQTZELEVBQUEsRURzSWxFO0VBL0JEO0lHNkJFLDRCQXREOEY7SUZyRTVGLG9CQUE2RDtJQUE3RCx1QkFBNkQsRUFBQTtFcEJ1STNEO0ltQnpDTjtNRzZCRSw0QkF0RDhGO01GckU1RixvQkFBNkQ7TUFBN0QsdUJBQTZELEVBQUEsRUQyRzFEO0VuQjRCRDtJbUJ6Q047TUc2QkUsNEJBdEQ4RjtNRnJFNUYsb0JBQTZEO01BQTdELHVCQUE2RCxFQUFBLEVEMkcxRDtFbkJpQ0Q7SW1COUNOO01HNkJFLCtCQXREOEY7TUZyRTVGLHNCQUE2RDtNQUE3RCx5QkFBNkQsRUFBQSxFRDJHMUQ7RUFyQ1A7SUdxREUsWUFsRlksRUFBQTtFSGlDZDtJR2lERSxZQWxGWSxFQUFBO0VIeUNaO0lHeUNBLGdDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsMkJBdEQ4RixFQUFBO0VIYTlGO0lHeUNBLGlDQXREOEYsRUFBQTtFSGE5RjtJR3lDQSxpQ0F0RDhGLEVBQUE7RUhhOUY7SUd5Q0EsNEJBdEQ4RixFQUFBO0V0QmtFMUY7SW1CakVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7RW5CbURHO0ltQmpFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQSxFSGU3RjtFbkJ3REc7SW1CdEVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLCtCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwrQkF0RDhGLEVBQUE7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QXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUEsRUhlN0Y7RW5CbURHO0ltQmpFTjtNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsZ0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwyQkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw0QkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLGdDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsMkJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLGlDQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsNEJBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxnQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDJCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxpQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsaUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDRCQXREOEYsRUFBQSxFSGU3RjtFbkJ3REc7SW1CdEVOO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLCtCQXREOEYsRUFBQTtJSENoRztNR3FERSxZQWxGWSxFQUFBO0lIaUNkO01HaURFLFlBbEZZLEVBQUE7SUh5Q1o7TUd5Q0EsbUNBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSw4QkF0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSwrQkF0RDhGLEVBQUE7SUhDaEc7TUdxREUsWUFsRlksRUFBQTtJSGlDZDtNR2lERSxZQWxGWSxFQUFBO0lIeUNaO01HeUNBLG1DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsOEJBdEQ4RixFQUFBO0lIYTlGO01HeUNBLG9DQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0EsK0JBdEQ4RixFQUFBO0lIQ2hHO01HcURFLFlBbEZZLEVBQUE7SUhpQ2Q7TUdpREUsWUFsRlksRUFBQTtJSHlDWjtNR3lDQSxtQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLDhCQXREOEYsRUFBQTtJSGE5RjtNR3lDQSxvQ0F0RDhGLEVBQUE7SUhhOUY7TUd5Q0Esb0NBdEQ4RixFQUFBO0lIYTlGO01HeUNBLCtCQXREOEYsRUFBQSxFSGU3Rjs7QUFrVEQ7RVE1WUksNkJBQW1DLEVBQUE7RTNCNkluQztJbUIrUEo7TVE1WUksNkJBQW1DLEVBQUEsRVI4WXRDO0VuQmpRRztJbUIrUEo7TVE1WUksNkJBQW1DLEVBQUEsRVI4WXRDO0VuQjVQRztJbUIwUEo7TVE1WUksZ0NBQW1DLEVBQUEsRVI4WXRDOztBbkJqUUc7RW1CbVFGO0lRaFpFLDZCQUFtQyxFQUFBLEVSa1pwQzs7QW5CclFDO0VtQm1RRjtJUWhaRSw2QkFBbUMsRUFBQSxFUmtacEM7O0FuQmhRQztFbUI4UEY7SVFoWkUsZ0NBQW1DLEVBQUEsRVJrWnBDOztBU3pHTDtFQTFPQSxxQkFBcUI7RUFDckIsc0JBQXNCO0VBQ3RCLGtCeEJxT2tDO0V3QjNOaEMsd0J4QjBONEI7RXdCdk45Qiw2QnhCK05tQztFd0I5Tm5DLGdCeEJSZTtFd0JTZix5RXhCeU91RTtFd0J6T3ZFLGlFeEJ5T3VFO0V3QnhPdkUsb0J4QmtOMEI7RXdCak4xQixleEJnT2E7RXdCOU5iLHdCQUF3QjtFQUN4QixjQUFjO0VBQ2Qsa0JBQWtCO0VBQ2xCLGVBQWUsRUFBQTtFOUJzcUdmO0lPdGxHRSxVQUFVLEVBQUE7RXVCa0laO0lBTU0saUJ4QkNNLEVBQUE7RXdCUFo7SUFNTSxrQnhCRVEsRUFBQTtFd0JSZDtJQU1NLGtCeEJJUSxFQUFBO0V3QlZkO0lBM01FLGNBQWM7SUFDZCxXQUFXO0lBQ1gsZUFBZTtJQUNmLGNBQWMsRUFBQTtFQWlFaEI7SUFJRSx5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QXhEZ0I7TUF3RGhCLDJCQXhEZ0I7VUF3RGhCLGtCQXhEZ0IsRUFBQTs7QUQ0RWQ7RUNwQ0YsMEJBdkNrQjtFQXVDbEIsNEJBdkNrQjtNQXVDbEIsdUJBdkNrQjtVQXVDbEIsb0JBdkNrQixFQUFBOztBRCtFaEI7RUN4QkYsMkJBdkRrQjtNQXVEbEIsNEJBdkRrQjtVQXVEbEIsbUJBdkRrQixFQUFBOztBRHFGbEI7RUMvQ0Esd0JBbkRrQjtFQW1EbEIsK0JBbkRrQjtNQW1EbEIscUJBbkRrQjtVQW1EbEIsdUJBbkRrQjtFQW9EbEIseUJBeENnQjtFQXdDaEIsMkJBeENnQjtNQXdDaEIsc0JBeENnQjtVQXdDaEIsbUJBeENnQjtFRHdGZCw2QkFBcUI7TUFBckIsMEJBQXFCO1VBQXJCLHFCQUFxQixFQUFBOztBQU1uQjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QUFDWjtFQ2hDSiw0QkQrQmdCO0VDL0JoQixnQkQrQmdCO01DL0JoQixpQkQrQmdCO1VDL0JoQixRRCtCZ0IsRUFBQTs7QW5DbUVWO0VtQ2xFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QW5DZ0VDO0VtQ2xFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUE7RUFDWjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9CaEIsUUQrQmdCLEVBQUEsRUFHWDs7QW5DcUVDO0VtQ3ZFRjtJQ2hDSiw0QkQrQmdCO0lDL0JoQixnQkQrQmdCO1FDL0JoQixpQkQrQmdCO1lDL0JoQixRRCtCZ0IsRUFBQTtFQUNaO0lDaENKLDRCRCtCZ0I7SUMvQmhCLGdCRCtCZ0I7UUMvQmhCLGlCRCtCZ0I7WUMvQmhCLFFEK0JnQixFQUFBO0VBQ1o7SUNoQ0osNEJEK0JnQjtJQy9CaEIsZ0JEK0JnQjtRQy9CaEIsaUJEK0JnQjtZQy9C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d0QsRUFBQTtFUHdGakQ7STBDNUtSO01BTUUsZ0JuQzhFdUQ7TW1DN0V2RCxxQm5DNkV1RDtNbUM1RXZELG1CbkM0RXVELEVBQUEsRW1DM0R4RDtFMUN3Sk87STBDakxSO01BWUUsWW5Dd0V1RDtNbUN2RXZELG1CbkN1RXVEO01tQ3RFdkQsc0JuQ3NFdUQsRUFBQSxFbUMzRHhEO0UxQ3dKTztJMENqTFI7TUFrQkUsZW5Da0V1RDtNbUNqRXZELG1CbkNpRXVELEVBQUEsRW1DM0R4RDtFQXpCRDtJQXVCRSxjdEMrRFksRUFBQTtFc0N0RmQ7SUF1QkUsY3RDK0RZLEVBQUE7RXNDdEZkO0lBdUJFLGN0QytEWSxFQUFBO0VzQ3RGZDtJQXVCRSxjdEMrRFksRUFBQTtFc0N0RmQ7SUF1QkUsY3RDK0RZLEVBQUE7O0FzQzNEZDtFQUNDLGdCbkN3RHdEO0VtQ3ZEeEQsdUJBQXVCLEVBQUE7O0FBR3hCO0VBQ0MseUJBQXlCLEVBQUE7O0E5Qll4QjtFOEJSRCxTQUFTO0VBQ1QsVUFBVTtFQUNWLFNBQVMsRUFBQTs7QTVDOHZJVjtFNEMxdklDLGlCQUFpQixFQUFBOztBNUM2dklsQjs7RTRDbnZJQyxrQkFBa0I7RUFDbEIsYUFBYSxFQUFBOztBNUN1dklkOztFNENudklDLGtCQUFrQjtFQUNsQixzQm5DeUJ3RDtFbUN4QnhELGVBQWUsRUFBQTs7QTVDdXZJaEI7O0U0Q2p2SUMsV0FBVztFQUNYLGtCQUFrQjtFQUNsQixRQXBCZTtFQXFCZixPQUFPO0VBQ1AsV25DY3dEO0VtQ2J4RCxZbkNhd0Q7RW1DWnhELHlCQUF5QjtFQUN6Qix5QnRDT2MsRUFBQTs7QU44dUlmOztFNEMvdUlHLFdBQVc7RUFDYixrQkFBa0I7RUFDbEIsUUFqQ2U7RUFrQ2YsT0FBTztFQUNQLFduQ0N3RDtFbUNBeEQsWW5DQXdEO0VtQ0N4RCx5QnRDakJtQjtFc0NrQm5CLHlCdENsQm1CLEVBQUE7O0FOcXdJcEI7RTRDN3VJQyxVQUFVLEVBQUE7O0E1Q2d2SVg7RTRDNXVJQyxVQUFVLEVBQUE7O0E1Qyt1SVg7O0U0Q3p1SUMsdUNBQThCO0VBQzlCLDBDdEN2QmMsRUFBQTs7QU5vd0lmO0U0Q3p1SUcsc0JBQXNCLEVBQUE7O0E1QzR1SXpCO0U0Q3h1SUcsV0FBVyxFQUFBOztBNUMydUlkOztFNENydUlHLHlCdEN0Q1ksRUFBQTs7QVc0TlA7RTRCOVNQLG1CcEN1RndELEVBQUE7RVA2RmpEO0llMEhBO000QjVTTixlcENxRnVELEVBQUEsRW9DbkZ4RDs7QTVCMFNPO0U0QnZTUCxlcENnRndELEVBQUE7RVA2RmpEO0llMEhBO000QnJTTixtQnBDOEV1RCxFQUFBLEVvQzVFeEQ7O0E1Qm1TTztFNEJoU1AsZXBDeUV3RCxFQUFBO0VQNkZqRDtJZTBIQTtNNEI5Uk4sa0JwQ3VFdUQsRUFBQSxFb0NyRXhEOztBNUI0Uk87RTRCelJQLG1CcENrRXdELEVBQUE7RVA2RmpEO0llMEhBO000QnZSTixvQnBDZ0V1RCxFQUFBLEVvQzlEeEQ7O0E1QnFSTztFNEJsUlAsa0JBQWtCLEVBQUE7O0FBR25COzs7Ozs7RUFNQyx1QkFBdUI7RUFDdkIsaUJBQWlCO0VBQ2pCLGdCQUFnQixFQUFBOztBM0M2SVQ7RTJDMUlSO0lBR0csa0JwQzBDc0QsRUFBQSxFb0N4Q3ZEOztBQUdGO0VBQ0MsbUJBQW1CLEVBQUE7RTNDNEhaO0kyQzdIUjtNQUdFLGVBQWUsRUFBQSxFQU1oQjtFQVREO0lBT0UsaUJBQWlCLEVBQUE7O0FBSW5CO0VBQ0MsZXBDeUJ3RDtFb0N4QnhELGN2QzBCYTtFdUN6QmIsb0JBQW9CLEVBQUE7RTNDb0hiO0kyQ3ZIUjtNQU1FLGtCcENvQnVELEVBQUEsRW9DbEJ4RDs7QUFFRDtFQUNDLG1CcENld0Q7RW9DZHhELHVCQUF1QixFQUFBO0UzQ3NHaEI7STJDeEdSO01BS0Usa0JwQ1d1RCxFQUFBLEVvQ0R4RDtFM0M4Rk87STJDN0dSO01BU0UsbUJwQ091RCxFQUFBLEVvQ0R4RDtFM0M4Rk87STJDN0dSO01BYUUsa0JwQ0d1RCxFQUFBLEVvQ0R4RDs7QUFFRDs7Ozs7RUFLQyxrQnBDTndELEVBQUE7RVA2RmpEO0kyQzVGUjs7Ozs7TUFRRSxtQnBDVHVELEVBQUEsRW9DV3hEOztBQUdEOzs7Ozs7RUFNQyx1QkFBdUI7RUFDdkIsY0FBYztFQUNkLGdCQUFnQixFQUFBOztBQUlqQjtFQUNDLGtCcEMzQndELEVBQUE7RVB3RmpEO0kyQzlEUjtNQUlFLGtCcEM5QnVELEVBQUEsRW9Dd0N4RDtFM0NxRE87STJDbkVSO01BUUUsaUJwQ2xDdUQsRUFBQSxFb0N3Q3hEO0UzQ3FETztJMkNuRVI7TUFZRSxtQnBDdEN1RCxFQUFBLEVvQ3dDeEQ7O0FBRUQ7RUFDQyxtQnBDM0N3RDtFb0M0Q3hELHVCQUF1QixFQUFBO0UzQzRDaEI7STJDOUNSO01BS0Usa0JwQy9DdUQsRUFBQSxFb0N5RHhEO0UzQ29DTztJMkNuRFI7TUFTRSxtQnBDbkR1RCxFQUFBLEVvQ3lEeEQ7RTNDb0NPO0kyQ25EUjtNQWFFLGtCcEN2RHVELEVBQUEsRW9DeUR4RDs7QUFFRDtFQUNDLGlCcEM1RHdEO0VvQzZEeEQsbUJBQW1CO0VBQ25CLHVCQUF1QixFQUFBO0UzQzBCaEI7STJDN0JSO01BTUUsbUJwQ2pFdUQsRUFBQSxFb0MrRXhEO0UzQ2NPO0kyQ2xDUjtNQVVFLGtCcENyRXVELEVBQUEsRW9DK0V4RDtFM0NjTztJMkNsQ1I7TUFjRSxlcEN6RXVELEVBQUEsRW9DK0V4RDtFM0NjTztJMkNsQ1I7TUFrQkUsbUJwQzdFdUQsRUFBQSxFb0MrRXhEOztBQUVEO0VBQ0MsbUJwQ2xGd0Q7RW9DbUZ4RCxrQkFBa0IsRUFBQTtFM0NLWDtJMkNQUjtNQUlFLGlCcENyRnVELEVBQUEsRW9DNkZ4RDtFM0NBTztJMkNaUjtNQU9FLG1CcEN4RnVELEVBQUEsRW9DNkZ4RDtFM0NBTztJMkNaUjtNQVVFLG1CcEMzRnVELEVBQUEsRW9DNkZ4RDs7QUFFRDtFQUNDLGtCcENoR3dELEVBQUE7RVB3RmpEO0kyQ09SO01BR0UsbUJwQ2xHdUQsRUFBQSxFb0N1R3hEO0UzQ1ZPO0kyQ0VSO01BTUUsbUJwQ3JHdUQsRUFBQSxFb0N1R3hEOztBQUVEO0VBQ0MsbUJwQzFHd0QsRUFBQTtFUHdGakQ7STJDaUJSO01BR0Usa0JwQzVHdUQs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QWtCO01BQ2xCLGV6RjlCb0Q7TXlGK0JwRCxtQ0FBbUMsRUFBQTtNQS9HeEM7OztRQW1ITSxXQUFXO1FBQ1gsa0JBQWtCO1FBQ2xCLGV6RnJDbUQ7UXlGc0NuRCxlekZ0Q21EO1F5RnVDbkQsUUFBUTtRQUNSLGlCekZ4Q21EO1F5RnlDbkQseUI1RnpEYztRNEYwRGQsMENBQWtDO1FBQWxDLGtDQUFrQyxFQUFBO01BR25DOzs7UUFDQyxjNUZsRFMsRUFBQSxFNEZtRFQ7RWhHOENFO0lnRzdLUjs7O01BbUlLLHNCekZuRG9EO015Rm9EcEQsdUJ6RnBEb0Q7TXlGcURwRCxtQnpGckRvRCxFQUFBO015RmhGekQ7OztRQXdJTSxjekZ4RG1ELEVBQUEsRXlGeURuRDtFaEcrQkU7SWdHeEtSOzs7OztNQStJTSxjQUFjLEVBQUEsRUFTZjtFaEdxQkc7SWdHN0tSOzs7OztNQXFKTyxjekZyRWtELEVBQUEsRXlGc0VsRDtFaEd1QkM7SWdHN0tSOzs7TUE0Sk0sY0FBYyxFQUFBLEVBRWY7O0FoR1VHO0VnR3hLUjs7SUFzS00sWXpGdEZtRCxFQUFBO0V5RmhGekQ7O0lBMktNLGN6RjNGbUQsRUFBQSxFeUY0Rm5EOztBaEdDRTtFZ0c3S1I7OztJQXdMTyxjekZ4R2tELEVBQUEsRXlGeUdsRDs7QUF6TFA7RUFrTUUsYUFBYTtFQUNiLG9CekY5R1c7RXlGK0dYLHlCNUY5R2tCLEVBQUE7RUprRlo7SWdHeEtSO014RFBJLHNCV29Cb0Q7TVhuQnBELHVCV21Cb0Q7TVhsQnBELGlCQUE4QztNQUM5Qyw4QkFBc0I7Y0FBdEIsc0JBQXNCO01BS3RCLHNCQUE0QztNQUM1Qyx1QkFBNkM7TXdEc005QyxtQnpGeEhzRDtNeUZ5SHRELHdCekZ6SHNELEVBQUE7TXlGaEZ6RDtRQTRNTyxjQUFjLEVBQUEsRUFDZDtFaEdoQ0M7SWdHN0tSO01Ba05JLGFBQWE7TUFDYixrQkFBa0I7TUFDbEIsV3pGcElxRDtNeUZxSXJELHNCekZySXFEO015RnNJckQsUzdDck5nQyxFQUFBLEU2Q3VOakM7RWhHM0NLO0lnRzdLUjtNQTJORyxjQUFjO01B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RUFBQTtJeENnRmpCO013Q25GSjtRQUtRLGlCQUFpQixFQUFBLEVBRXhCO0VBRUQ7SUFDSSxRQUFRO0lBQ1IsNkJBQXFCO1FBQXJCLHlCQUFxQjtZQUFyQixxQkFBcUI7SUFDckIsZ0JBQWdCLEVBQUE7SXhDdUVoQjtNd0MxRUo7UUFLUSxnQkFBZ0IsRUFBQSxFQUV2QjtFeENtRUc7SXdJdkdKO01oR3VDSSxlakM3QmlEO01pQzhCakQsZ0JqQzlCaUQsRUFBQSxFaUlFcEQ7RWhHK0JEO0lBQ0ksV0FBVztJQUNYLGtCQUFrQjtJQUNsQixNQUFNO0lBQ04sT0FBTztJQUNQLFFBQVE7SUFDUixTQUFTO0lBQ1QsWUFBWTtJQUNaLG1CcEM3Q087SW9DOENQLHlCcEMxQ007SW9DMkNOLFdBQVc7SUFDWCxZQUFZO0lBQ1osbUJBQW1CLEVBQUE7RXhDMkNuQjtJd0lsR0o7TUFJUSxTQUFTO01BQ1QsV0FBVztNQUNYLFVBQVU7TUFDVixZQUFZLEVBQUEsRUFLbkI7RXhJMkZHO0l3SXZHSjtNQVVRLFlBQVksRUFBQSxFQUVuQiIsImZpbGUiOiJhcHAuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGNoYXJzZXQgXCJVVEYtOFwiO1xuLyoqXG4gKiBGb3VuZGF0aW9uIGZvciBTaXRlc1xuICogVmVyc2lvbiA2LjYuM1xuICogaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuICogTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG4gKi9cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5yZXZlYWwsIC5yZXZlYWwudGlueSwgLnJldmVhbC5zbWFsbCwgLnJldmVhbC5sYXJnZSB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG5cbi8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cbmh0bWwge1xuICBsaW5lLWhlaWdodDogMS4xNTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDJlbTtcbiAgbWFyZ2luOiAwLjY3ZW0gMDsgfVxuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbnByZSB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lIGRvdHRlZDsgfVxuXG5iLFxuc3Ryb25nIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGRlcjsgfVxuXG5jb2RlLFxua2JkLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTtcbiAgZm9udC1zaXplOiAxZW07IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTsgfVxuXG5zdWIsXG5zdXAge1xuICBmb250LXNpemU6IDc1JTtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lOyB9XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTsgfVxuXG5zdXAge1xuICB0b3A6IC0wLjVlbTsgfVxuXG5pbWcge1xuICBib3JkZXItc3R5bGU6IG5vbmU7IH1cblxuYnV0dG9uLFxuaW5wdXQsXG5vcHRncm91cCxcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTAwJTtcbiAgbGluZS1oZWlnaHQ6IDEuMTU7XG4gIG1hcmdpbjogMDsgfVxuXG5idXR0b24sXG5pbnB1dCB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbmJ1dHRvbixcbnNlbGVjdCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG5cbmJ1dHRvbixcblt0eXBlPVwiYnV0dG9uXCJdLFxuW3R5cGU9XCJyZXNldFwiXSxcblt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IH1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG5bdHlwZT1cInJlc2V0XCJdOjotbW96LWZvY3VzLWlubmVyLFxuW3R5cGU9XCJzdWJtaXRcIl06Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmc6IDA7IH1cblxuYnV0dG9uOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJidXR0b25cIl06LW1vei1mb2N1c3JpbmcsXG5bdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuW3R5cGU9XCJzdWJtaXRcIl06LW1vei1mb2N1c3Jpbmcge1xuICBvdXRsaW5lOiAxcHggZG90dGVkIEJ1dHRvblRleHQ7IH1cblxuZmllbGRzZXQge1xuICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07IH1cblxubGVnZW5kIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7IH1cblxucHJvZ3Jlc3Mge1xuICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxudGV4dGFyZWEge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdLFxuW3R5cGU9XCJyYWRpb1wiXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIHBhZGRpbmc6IDA7IH1cblxuW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5bdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDsgfVxuXG5bdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG46Oi13ZWJraXQtZmlsZS11cGxvYWQtYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIGZvbnQ6IGluaGVyaXQ7IH1cblxuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbnN1bW1hcnkge1xuICBkaXNwbGF5OiBsaXN0LWl0ZW07IH1cblxudGVtcGxhdGUge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4uZm91bmRhdGlvbi1tcSB7XG4gIGZvbnQtZmFtaWx5OiBcInNtYWxsPTBlbSZtZWRpdW09NDBlbSZsYXJnZT02NGVtJnhsYXJnZT03NWVtJnh4bGFyZ2U9OTBlbSZ4eHhsYXJnZT0xMjBlbSZ4eHh4bGFyZ2U9MTQzLjc1ZW1cIjsgfVxuXG5odG1sIHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgZm9udC1zaXplOiAxMDAlOyB9XG5cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGluaGVyaXQ7IH1cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYmFja2dyb3VuZDogIzFhMWExYTtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMxNTFGMzU7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlOyB9XG5cbmltZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87XG4gIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7IH1cblxudGV4dGFyZWEge1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuc2VsZWN0IHtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlci1yYWRpdXM6IDA7IH1cblxuLm1hcF9jYW52YXMgaW1nLFxuLm1hcF9jYW52YXMgZW1iZWQsXG4ubWFwX2NhbnZhcyBvYmplY3QsXG4ubXFhLWRpc3BsYXkgaW1nLFxuLm1xYS1kaXNwbGF5IGVtYmVkLFxuLm1xYS1kaXNwbGF5IG9iamVjdCB7XG4gIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDA7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjdXJzb3I6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIGJ1dHRvbiB7XG4gICAgb3V0bGluZTogMDsgfVxuXG5wcmUge1xuICBvdmVyZmxvdzogYXV0bzsgfVxuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuXG4uaXMtdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuLmlzLWhpZGRlbiB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG5bdHlwZT0ndGV4dCddLCBbdHlwZT0ncGFzc3dvcmQnXSwgW3R5cGU9J2RhdGUnXSwgW3R5cGU9J2RhdGV0aW1lJ10sIFt0eXBlPSdkYXRldGltZS1sb2NhbCddLCBbdHlwZT0nbW9udGgnXSwgW3R5cGU9J3dlZWsnXSwgW3R5cGU9J2VtYWlsJ10sIFt0eXBlPSdudW1iZXInXSwgW3R5cGU9J3NlYXJjaCddLCBbdHlwZT0ndGVsJ10sIFt0eXBlPSd0aW1lJ10sIFt0eXBlPSd1cmwnXSwgW3R5cGU9J2NvbG9yJ10sXG50ZXh0YXJlYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzLjgxMjVyZW07XG4gIG1hcmdpbjogMCAwIDFyZW07XG4gIHBhZGRpbmc6IDEuMTg3NXJlbSAxLjM3NXJlbTtcbiAgYm9yZGVyOiAzcHggc29saWQgIzhhOGE4YTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMXJlbTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xuICBhcHBlYXJhbmNlOiBub25lOyB9XG4gIFt0eXBlPSd0ZXh0J106Zm9jdXMsIFt0eXBlPSdwYXNzd29yZCddOmZvY3VzLCBbdHlwZT0nZGF0ZSddOmZvY3VzLCBbdHlwZT0nZGF0ZXRpbWUnXTpmb2N1cywgW3R5cGU9J2RhdGV0aW1lLWxvY2FsJ106Zm9jdXMsIFt0eXBlPSdtb250aCddOmZvY3VzLCBbdHlwZT0nd2VlayddOmZvY3VzLCBbdHlwZT0nZW1haWwnXTpmb2N1cywgW3R5cGU9J251bWJlciddOmZvY3VzLCBbdHlwZT0nc2VhcmNoJ106Zm9jdXMsIFt0eXBlPSd0ZWwnXTpmb2N1cywgW3R5cGU9J3RpbWUnXTpmb2N1cywgW3R5cGU9J3VybCddOmZvY3VzLCBbdHlwZT0nY29sb3InXTpmb2N1cyxcbiAgdGV4dGFyZWE6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAzcHggc29saWQgIzFhMWExYTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJveC1zaGFkb3c6IDAgMCA1cHggIzhhOGE4YTtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dDsgfVxuXG50ZXh0YXJlYSB7XG4gIG1heC13aWR0aDogMTAwJTsgfVxuICB0ZXh0YXJlYVtyb3dzXSB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG5cbmlucHV0OmRpc2FibGVkLCBpbnB1dFtyZWFkb25seV0sXG50ZXh0YXJlYTpkaXNhYmxlZCxcbnRleHRhcmVhW3JlYWRvbmx5XSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cblxuW3R5cGU9J3N1Ym1pdCddLFxuW3R5cGU9J2J1dHRvbiddIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDsgfVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOGE4YThhOyB9XG5cblt0eXBlPSdmaWxlJ10sXG5bdHlwZT0nY2hlY2tib3gnXSxcblt0eXBlPSdyYWRpbyddIHtcbiAgbWFyZ2luOiAwIDAgMXJlbTsgfVxuXG5bdHlwZT0nY2hlY2tib3gnXSArIGxhYmVsLFxuW3R5cGU9J3JhZGlvJ10gKyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICBtYXJnaW4tbGVmdDogMC41cmVtO1xuICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgW3R5cGU9J2NoZWNrYm94J10gKyBsYWJlbFtmb3JdLFxuICBbdHlwZT0ncmFkaW8nXSArIGxhYmVsW2Zvcl0ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5sYWJlbCA+IFt0eXBlPSdjaGVja2JveCddLFxubGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gIG1hcmdpbi1yaWdodDogMC41cmVtOyB9XG5cblt0eXBlPSdmaWxlJ10ge1xuICB3aWR0aDogMTAwJTsgfVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjg7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG4gIGxhYmVsLm1pZGRsZSB7XG4gICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICBwYWRkaW5nOiAwLjY4NzVyZW0gMDsgfVxuXG4uaGVscC10ZXh0IHtcbiAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgY29sb3I6ICMwMDAwMDA7IH1cblxuLmlucHV0LWdyb3VwIHtcbiAgZGlzcGxheTogZmxleDtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG4gIC5pbnB1dC1ncm91cCA+IDpmaXJzdC1jaGlsZCwgLmlucHV0LWdyb3VwID4gOmZpcnN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cbiAgLmlucHV0LWdyb3VwID4gOmxhc3QtY2hpbGQsIC5pbnB1dC1ncm91cCA+IDpsYXN0LWNoaWxkLmlucHV0LWdyb3VwLWJ1dHRvbiA+ICoge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsLCAuaW5wdXQtZ3JvdXAtZmllbGQsIC5pbnB1dC1ncm91cC1idXR0b24sIC5pbnB1dC1ncm91cC1idXR0b24gYSxcbi5pbnB1dC1ncm91cC1idXR0b24gaW5wdXQsXG4uaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbi5pbnB1dC1ncm91cC1idXR0b24gbGFiZWwge1xuICBtYXJnaW46IDA7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7IH1cblxuLmlucHV0LWdyb3VwLWxhYmVsIHtcbiAgcGFkZGluZzogMCAxcmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhO1xuICBiYWNrZ3JvdW5kOiAjZjBmNGY1O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4OiAwIDAgYXV0bztcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yaWdodDogMDsgfVxuICAuaW5wdXQtZ3JvdXAtbGFiZWw6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgZmxleDogMSAxIDBweDtcbiAgbWluLXdpZHRoOiAwOyB9XG5cbi5pbnB1dC1ncm91cC1idXR0b24ge1xuICBwYWRkaW5nLXRvcDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleDogMCAwIGF1dG87IH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBhLFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGlucHV0LFxuICAuaW5wdXQtZ3JvdXAtYnV0dG9uIGJ1dHRvbixcbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiBsYWJlbCB7XG4gICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7IH1cblxubGVnZW5kIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07IH1cblxuLmZpZWxkc2V0IHtcbiAgbWFyZ2luOiAxLjEyNXJlbSAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCAjOGE4YThhOyB9XG4gIC5maWVsZHNldCBsZWdlbmQge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tbGVmdDogLTAuMTg3NXJlbTtcbiAgICBwYWRkaW5nOiAwIDAuMTg3NXJlbTsgfVxuXG5zZWxlY3Qge1xuICBoZWlnaHQ6IDMuODEyNXJlbTtcbiAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgcGFkZGluZzogMS4xODc1cmVtIDEuMzc1cmVtO1xuICBhcHBlYXJhbmNlOiBub25lO1xuICBib3JkZXI6IDNweCBzb2xpZCAjOGE4YThhO1xuICBib3JkZXItcmFkaXVzOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMS41O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiByZ2IlMjgyNiwgMjYsIDI2JTI5Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuICBiYWNrZ3JvdW5kLW9yaWdpbjogY29udGVudC1ib3g7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0IC0xcmVtIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiA5cHggNnB4O1xuICBwYWRkaW5nLXJpZ2h0OiAxLjVyZW07XG4gIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDBcXDApIHtcbiAgICBzZWxlY3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFDQUFBQUFZQ0FZQUFBQ2JVLzgwQUFBQUdYUkZXSFJUYjJaMGQyRnlaUUJCWkc5aVpTQkpiV0ZuWlZKbFlXUjVjY2xsUEFBQUFJcEpSRUZVZU5yRWtja05nREFNQkJmUmtFdDBPYlJCQmRzR1hVRGdtUWZLNFhoSDJtOGN6UUFBeTI3UjN0c3c0UWZlMng4dU9PNm9ZTGI2R2xPb3IzR0Yrc3dVUkFPbVVKK1J3dEVKczlXdlRHRVl4QlhxSTFNUUFaaENmVVFLUnpETVZqK1R3ckFJVjZqdlNVRWtZQXIxTFNrY3lUQmIvVitLWWZYN3hBZXVzcTNzTER0R0gza0VHQUNQV0lmbE5aZmhSUUFBQUFCSlJVNUVya0pnZ2c9PVwiKTsgfSB9XG4gIHNlbGVjdDpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAjMWExYTFhO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYm94LXNoYWRvdzogMCAwIDVweCAjOGE4YThhO1xuICAgIHRyYW5zaXRpb246IGJveC1zaGFkb3cgMC41cywgYm9yZGVyLWNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0OyB9XG4gIHNlbGVjdDpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG4gIHNlbGVjdDo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICBzZWxlY3RbbXVsdGlwbGVdIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICBzZWxlY3Q6bm90KFttdWx0aXBsZV0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuXG4uaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKSB7XG4gIGJvcmRlci1jb2xvcjogI2NjNGIzNztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZhZWRlYjsgfVxuICAuaXMtaW52YWxpZC1pbnB1dDpub3QoOmZvY3VzKTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG5cbi5pcy1pbnZhbGlkLWxhYmVsIHtcbiAgY29sb3I6ICNjYzRiMzc7IH1cblxuLmZvcm0tZXJyb3Ige1xuICBkaXNwbGF5OiBub25lO1xuICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBmb250LXNpemU6IDAuNzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2NjNGIzNzsgfVxuICAuZm9ybS1lcnJvci5pcy12aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuXG5kaXYsXG5kbCxcbmR0LFxuZGQsXG51bCxcbm9sLFxubGksXG5oMSxcbmgyLFxuaDMsXG5oNCxcbmg1LFxuaDYsXG5wcmUsXG5mb3JtLFxucCxcbmJsb2NrcXVvdGUsXG50aCxcbnRkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwOyB9XG5cbnAge1xuICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuXG5lbSxcbmkge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiBpbmhlcml0OyB9XG5cbnN0cm9uZyxcbmIge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cblxuaDEsIC5oMSxcbmgyLCAuaDIsXG5oMywgLmgzLFxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogaW5oZXJpdDtcbiAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTsgfVxuICBoMSBzbWFsbCwgLmgxIHNtYWxsLFxuICBoMiBzbWFsbCwgLmgyIHNtYWxsLFxuICBoMyBzbWFsbCwgLmgzIHNtYWxsLFxuICBoNCBzbWFsbCwgLmg0IHNtYWxsLFxuICBoNSBzbWFsbCwgLmg1IHNtYWxsLFxuICBoNiBzbWFsbCwgLmg2IHNtYWxsIHtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBjb2xvcjogIzhhOGE4YTsgfVxuXG5oMSwgLmgxIHtcbiAgZm9udC1zaXplOiAzLjE4NzVyZW07XG4gIGxpbmUtaGVpZ2h0OiAwLjk0MTE4O1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmgyLCAuaDIge1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjkxNjc7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuaDMsIC5oMyB7XG4gIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjg1NzE7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuaDUsIC5oNSB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMzMzMzM7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMC42MjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiA1LjYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiA2LjI1cmVtOyB9XG4gIGgyLCAuaDIge1xuICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgaDMsIC5oMyB7XG4gICAgZm9udC1zaXplOiAxLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICBoNCwgLmg0IHtcbiAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIGg1LCAuaDUge1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICBoNiwgLmg2IHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICBoMSwgLmgxIHtcbiAgICBmb250LXNpemU6IDcuODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAwLjg3MzAyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgaDEsIC5oMSB7XG4gICAgZm9udC1zaXplOiAxMHJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDE0My43NWVtKSB7XG4gIGgxLCAuaDEge1xuICAgIGZvbnQtc2l6ZTogMTIuNXJlbTsgfSB9XG5cbmEge1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICNFQjVFOTQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgIGNvbG9yOiAjZTYzNTc5OyB9XG4gIGEgaW1nIHtcbiAgICBib3JkZXI6IDA7IH1cblxuaHIge1xuICBjbGVhcjogYm90aDtcbiAgbWF4LXdpZHRoOiAxMDEuMjVyZW07XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luOiAxLjI1cmVtIGF1dG87XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM4YThhOGE7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG5cbnVsLFxub2wsXG5kbCB7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiAgbGluZS1oZWlnaHQ6IDEuNTsgfVxuXG5saSB7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgfVxuXG51bCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IH1cblxub2wge1xuICBtYXJnaW4tbGVmdDogMS4yNXJlbTsgfVxuXG51bCB1bCwgb2wgdWwsIHVsIG9sLCBvbCBvbCB7XG4gIG1hcmdpbi1sZWZ0OiAxLjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbmRsIHtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICBkbCBkdCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC4zcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDAgMCAxLjVyZW07XG4gIHBhZGRpbmc6IDAuNTYyNXJlbSAxLjI1cmVtIDAgMS4xODc1cmVtO1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICM4YThhOGE7IH1cbiAgYmxvY2txdW90ZSwgYmxvY2txdW90ZSBwIHtcbiAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIGNvbG9yOiAjMWExYTFhOyB9XG5cbmFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCAjMDAwMDAwO1xuICBjdXJzb3I6IGhlbHA7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7IH1cblxua2JkIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjI1cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7XG4gIGZvbnQtZmFtaWx5OiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlO1xuICBjb2xvcjogIzAwMDAwMDsgfVxuXG4uc3ViaGVhZGVyIHtcbiAgbWFyZ2luLXRvcDogMC4ycmVtO1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gIGNvbG9yOiAjMWExYTFhOyB9XG5cbi5sZWFkIHtcbiAgZm9udC1zaXplOiAxMjUlO1xuICBsaW5lLWhlaWdodDogMS41OyB9XG5cbi5zdGF0IHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIHAgKyAuc3RhdCB7XG4gICAgbWFyZ2luLXRvcDogLTFyZW07IH1cblxudWwubm8tYnVsbGV0LCBvbC5uby1idWxsZXQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uY2l0ZS1ibG9jaywgY2l0ZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzFhMWExYTtcbiAgZm9udC1zaXplOiAwLjgxMjVyZW07IH1cbiAgLmNpdGUtYmxvY2s6YmVmb3JlLCBjaXRlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCLigJQgXCI7IH1cblxuLmNvZGUtaW5saW5lLCBjb2RlIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBpbmxpbmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBwYWRkaW5nOiAwLjEyNXJlbSAwLjMxMjVyZW0gMC4wNjI1cmVtOyB9XG5cbi5jb2RlLWJsb2NrIHtcbiAgYm9yZGVyOiAxcHggc29saWQgIzhhOGE4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgZm9udC1mYW1pbHk6IENvbnNvbGFzLCBcIkxpYmVyYXRpb24gTW9ub1wiLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHdoaXRlLXNwYWNlOiBwcmU7XG4gIHBhZGRpbmc6IDFyZW07XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTsgfVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDsgfVxuXG4udGV4dC1yaWdodCB7XG4gIHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4udGV4dC1qdXN0aWZ5IHtcbiAgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXRleHQtbGVmdCB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDsgfVxuICAubWVkaXVtLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5tZWRpdW0tdGV4dC1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubWVkaXVtLXRleHQtanVzdGlmeSB7XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS10ZXh0LWxlZnQge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgLmxhcmdlLXRleHQtcmlnaHQge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0OyB9XG4gIC5sYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5sYXJnZS10ZXh0LWp1c3RpZnkge1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtdGV4dC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gIC54bGFyZ2UtdGV4dC1yaWdodCB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7IH1cbiAgLnhsYXJnZS10ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC54bGFyZ2UtdGV4dC1qdXN0aWZ5IHtcbiAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5OyB9IH1cblxuLnNob3ctZm9yLXByaW50IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbkBtZWRpYSBwcmludCB7XG4gICoge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7XG4gICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICB0YWJsZS5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICB0aGVhZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuc2hvdy1mb3ItcHJpbnQge1xuICAgIGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gIHRyLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0ZC5zaG93LWZvci1wcmludCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIHRoLnNob3ctZm9yLXByaW50IHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgYSxcbiAgYTp2aXNpdGVkIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjsgfVxuICAuaXIgYTphZnRlcixcbiAgYVtocmVmXj0namF2YXNjcmlwdDonXTphZnRlcixcbiAgYVtocmVmXj0nIyddOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJzsgfVxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiOyB9XG4gIHByZSxcbiAgYmxvY2txdW90ZSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzFhMWExYTtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7IH1cbiAgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuICBAcGFnZSB7XG4gICAgbWFyZ2luOiAwLjVjbTsgfVxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzOyB9XG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cbiAgLnByaW50LWJyZWFrLWluc2lkZSB7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87IH0gfVxuXG4uZ3JpZC1jb250YWluZXIge1xuICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTtcbiAgbWF4LXdpZHRoOiAxMDEuMjVyZW07XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1jb250YWluZXIge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI0Njg3cmVtO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjI0Njg3cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ3JpZC1jb250YWluZXIuZmx1aWQge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwLjYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdyaWQtY29udGFpbmVyLmZsdWlkIHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNDY4N3JlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI0Njg3cmVtOyB9IH1cbiAgLmdyaWQtY29udGFpbmVyLmZ1bGwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87IH1cblxuLmdyaWQteCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogcm93IHdyYXA7IH1cblxuLmNlbGwge1xuICBmbGV4OiAwIDAgYXV0bztcbiAgbWluLWhlaWdodDogMHB4O1xuICBtaW4td2lkdGg6IDBweDtcbiAgd2lkdGg6IDEwMCU7IH1cbiAgLmNlbGwuYXV0byB7XG4gICAgZmxleDogMSAxIDBweDsgfVxuICAuY2VsbC5zaHJpbmsge1xuICAgIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuYXV0byB7XG4gIHdpZHRoOiBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc2hyaW5rIHtcbiAgd2lkdGg6IGF1dG87IH1cblxuLmdyaWQteCA+IC5zbWFsbC1zaHJpbmssIC5ncmlkLXggPiAuc21hbGwtZnVsbCwgLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXgtYmFzaXM6IGF1dG87IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS1mdWxsLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXggPiAubGFyZ2UtZnVsbCwgLmdyaWQteCA+IC5sYXJnZS0xLCAuZ3JpZC14ID4gLmxhcmdlLTIsIC5ncmlkLXggPiAubGFyZ2UtMywgLmdyaWQteCA+IC5sYXJnZS00LCAuZ3JpZC14ID4gLmxhcmdlLTUsIC5ncmlkLXggPiAubGFyZ2UtNiwgLmdyaWQteCA+IC5sYXJnZS03LCAuZ3JpZC14ID4gLmxhcmdlLTgsIC5ncmlkLXggPiAubGFyZ2UtOSwgLmdyaWQteCA+IC5sYXJnZS0xMCwgLmdyaWQteCA+IC5sYXJnZS0xMSwgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS1mdWxsLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xLCAuZ3JpZC14ID4gLnNtYWxsLTIsIC5ncmlkLXggPiAuc21hbGwtMywgLmdyaWQteCA+IC5zbWFsbC00LCAuZ3JpZC14ID4gLnNtYWxsLTUsIC5ncmlkLXggPiAuc21hbGwtNiwgLmdyaWQteCA+IC5zbWFsbC03LCAuZ3JpZC14ID4gLnNtYWxsLTgsIC5ncmlkLXggPiAuc21hbGwtOSwgLmdyaWQteCA+IC5zbWFsbC0xMCwgLmdyaWQteCA+IC5zbWFsbC0xMSwgLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIGZsZXg6IDAgMCBhdXRvOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMSB7XG4gIHdpZHRoOiA4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTIge1xuICB3aWR0aDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtMyB7XG4gIHdpZHRoOiAyNSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC00IHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTUge1xuICB3aWR0aDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtNiB7XG4gIHdpZHRoOiA1MCU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC03IHtcbiAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC14ID4gLnNtYWxsLTgge1xuICB3aWR0aDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLXggPiAuc21hbGwtOSB7XG4gIHdpZHRoOiA3NSU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMCB7XG4gIHdpZHRoOiA4My4zMzMzMyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMSB7XG4gIHdpZHRoOiA5MS42NjY2NyU7IH1cblxuLmdyaWQteCA+IC5zbWFsbC0xMiB7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLXggPiAubWVkaXVtLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tc2hyaW5rLCAuZ3JpZC14ID4gLm1lZGl1bS0xLCAuZ3JpZC14ID4gLm1lZGl1bS0yLCAuZ3JpZC14ID4gLm1lZGl1bS0zLCAuZ3JpZC14ID4gLm1lZGl1bS00LCAuZ3JpZC14ID4gLm1lZGl1bS01LCAuZ3JpZC14ID4gLm1lZGl1bS02LCAuZ3JpZC14ID4gLm1lZGl1bS03LCAuZ3JpZC14ID4gLm1lZGl1bS04LCAuZ3JpZC14ID4gLm1lZGl1bS05LCAuZ3JpZC14ID4gLm1lZGl1bS0xMCwgLmdyaWQteCA+IC5tZWRpdW0tMTEsIC5ncmlkLXggPiAubWVkaXVtLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQteCA+IC5sYXJnZS1hdXRvIHtcbiAgICBmbGV4OiAxIDEgMHB4O1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLmxhcmdlLTEsIC5ncmlkLXggPiAubGFyZ2UtMiwgLmdyaWQteCA+IC5sYXJnZS0zLCAuZ3JpZC14ID4gLmxhcmdlLTQsIC5ncmlkLXggPiAubGFyZ2UtNSwgLmdyaWQteCA+IC5sYXJnZS02LCAuZ3JpZC14ID4gLmxhcmdlLTcsIC5ncmlkLXggPiAubGFyZ2UtOCwgLmdyaWQteCA+IC5sYXJnZS05LCAuZ3JpZC14ID4gLmxhcmdlLTEwLCAuZ3JpZC14ID4gLmxhcmdlLTExLCAuZ3JpZC14ID4gLmxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLXNocmluayB7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAuZ3JpZC14ID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5ncmlkLXggPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLXggPiAueGxhcmdlLWF1dG8ge1xuICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgd2lkdGg6IGF1dG87IH1cbiAgLmdyaWQteCA+IC54bGFyZ2Utc2hyaW5rLCAuZ3JpZC14ID4gLnhsYXJnZS0xLCAuZ3JpZC14ID4gLnhsYXJnZS0yLCAuZ3JpZC14ID4gLnhsYXJnZS0zLCAuZ3JpZC14ID4gLnhsYXJnZS00LCAuZ3JpZC14ID4gLnhsYXJnZS01LCAuZ3JpZC14ID4gLnhsYXJnZS02LCAuZ3JpZC14ID4gLnhsYXJnZS03LCAuZ3JpZC14ID4gLnhsYXJnZS04LCAuZ3JpZC14ID4gLnhsYXJnZS05LCAuZ3JpZC14ID4gLnhsYXJnZS0xMCwgLmdyaWQteCA+IC54bGFyZ2UtMTEsIC5ncmlkLXggPiAueGxhcmdlLTEyIHtcbiAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC14ID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLXggPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmdyaWQteCA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICB3aWR0aDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teTpub3QoLmdyaWQteSkgPiAuY2VsbCB7XG4gIGhlaWdodDogYXV0bzsgfVxuXG4uZ3JpZC1tYXJnaW4teCB7XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teCB7XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXgge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI0Njg3cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMS4yNDY4N3JlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuNjI1cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuY2VsbCB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi14ID4gLmNlbGwge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjQ2ODdyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuMjQ2ODdyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5hdXRvIHtcbiAgICB3aWR0aDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zaHJpbmsge1xuICAgIHdpZHRoOiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMiB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMyB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNSB7XG4gICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOCB7XG4gICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtOSB7XG4gICAgd2lkdGg6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTExIHtcbiAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMiB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEge1xuICAgICAgd2lkdGg6IGNhbGMoOC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNCB7XG4gICAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtNyB7XG4gICAgICB3aWR0aDogY2FsYyg1OC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtMTAge1xuICAgICAgd2lkdGg6IGNhbGMoODMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIHdpZHRoOiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLXNocmluayB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS0zIHtcbiAgICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogY2FsYyg0MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS02IHtcbiAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogY2FsYyg2Ni42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS05IHtcbiAgICAgIHdpZHRoOiBjYWxjKDc1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiBjYWxjKDkxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLTEyIHtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0yIHtcbiAgICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS01IHtcbiAgICAgIHdpZHRoOiBjYWxjKDQxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS04IHtcbiAgICAgIHdpZHRoOiBjYWxjKDY2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAubGFyZ2UtMTEge1xuICAgICAgd2lkdGg6IGNhbGMoOTEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtYXV0byB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgd2lkdGg6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMSB7XG4gICAgICB3aWR0aDogY2FsYyg4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTIge1xuICAgICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogY2FsYygyNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS00IHtcbiAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTUge1xuICAgICAgd2lkdGg6IGNhbGMoNDEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS03IHtcbiAgICAgIHdpZHRoOiBjYWxjKDU4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLTgge1xuICAgICAgd2lkdGg6IGNhbGMoNjYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogY2FsYyg3NSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMCB7XG4gICAgICB3aWR0aDogY2FsYyg4My4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMSB7XG4gICAgICB3aWR0aDogY2FsYyg5MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi40OTM3NXJlbSk7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14IC5ncmlkLXBhZGRpbmcteCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xLjI0Njg3cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xLjI0Njg3cmVtOyB9IH1cblxuLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICBtYXJnaW4tcmlnaHQ6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtY29udGFpbmVyOm5vdCguZnVsbCkgPiAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gLmdyaWQtcGFkZGluZy14IHtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjQ2ODdyZW07XG4gICAgICBtYXJnaW4tbGVmdDogLTEuMjQ2ODdyZW07IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAuNjI1cmVtO1xuICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMC42MjVyZW07XG4gICAgICBwYWRkaW5nLWxlZnQ6IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXggPiAuY2VsbCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy14ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMS4yNDY4N3JlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNDY4N3JlbTsgfSB9XG5cbi5zbWFsbC11cC0xID4gLmNlbGwge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uc21hbGwtdXAtMiA+IC5jZWxsIHtcbiAgd2lkdGg6IDUwJTsgfVxuXG4uc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuXG4uc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgd2lkdGg6IDI1JTsgfVxuXG4uc21hbGwtdXAtNSA+IC5jZWxsIHtcbiAgd2lkdGg6IDIwJTsgfVxuXG4uc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuXG4uc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuXG4uc21hbGwtdXAtOCA+IC5jZWxsIHtcbiAgd2lkdGg6IDEyLjUlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC5sYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDIwJTsgfVxuICAubGFyZ2UtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLmxhcmdlLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEyLjUlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiAyMCU7IH1cbiAgLnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxNC4yODU3MSU7IH1cbiAgLnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiAxMi41JTsgfSB9XG5cbi5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICB3aWR0aDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0zID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygyMCUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC02ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuXG4uZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICB3aWR0aDogY2FsYygxMi41JSAtIDEuMjVyZW0pOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMSA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTMgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTYgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0xID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTIgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtMyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygzMy4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTQgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNCA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygyNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14Lm1lZGl1bS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LmxhcmdlLXVwLTUgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMjAlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXguc21hbGwtdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5tZWRpdW0tdXAtNiA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnNtYWxsLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTcgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTQuMjg1NzElIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubGFyZ2UtdXAtNyA+IC5jZWxsIHtcbiAgICB3aWR0aDogY2FsYygxNC4yODU3MSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5zbWFsbC11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgubWVkaXVtLXVwLTggPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTIuNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teC5sYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXgueGxhcmdlLXVwLTEgPiAuY2VsbCB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0yID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC0zID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC00ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC01ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDIwJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC02ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC03ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDE0LjI4NTcxJSAtIDIuNDkzNzVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi14LnhsYXJnZS11cC04ID4gLmNlbGwge1xuICAgIHdpZHRoOiBjYWxjKDEyLjUlIC0gMi40OTM3NXJlbSk7IH0gfVxuXG4uc21hbGwtbWFyZ2luLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICAgIHdpZHRoOiAyNSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICAgIHdpZHRoOiA3NSU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgICB3aWR0aDogMjUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgICB3aWR0aDogNTAlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgICB3aWR0aDogNzUlOyB9XG4gICAgLnNtYWxsLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAgIC5zbWFsbC1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgICAuc21hbGwtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG5cbi5zbWFsbC1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xuICBtYXJnaW4tbGVmdDogMDsgfVxuICAuc21hbGwtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwOyB9XG4gICAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuY2VsbCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMiB7XG4gICAgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNSB7XG4gICAgd2lkdGg6IDQxLjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOCB7XG4gICAgd2lkdGg6IDY2LjY2NjY3JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubWVkaXVtLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLm1lZGl1bS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTExIHtcbiAgICB3aWR0aDogOTEuNjY2NjclOyB9XG4gIC5tZWRpdW0tbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5tZWRpdW0tcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAubGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC5sYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLmxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC5sYXJnZS1wYWRkaW5nLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctbGVmdDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmNlbGwge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTEge1xuICAgIHdpZHRoOiA4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNCB7XG4gICAgd2lkdGg6IDMzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtNyB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5zbWFsbC04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnNtYWxsLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTAge1xuICAgIHdpZHRoOiA4My4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAuc21hbGwtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0yIHtcbiAgICB3aWR0aDogMTYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0zIHtcbiAgICB3aWR0aDogMjUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS01IHtcbiAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS02IHtcbiAgICB3aWR0aDogNTAlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS04IHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS05IHtcbiAgICB3aWR0aDogNzUlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLm1lZGl1bS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5tZWRpdW0tMTEge1xuICAgIHdpZHRoOiA5MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubWVkaXVtLTEyIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMSB7XG4gICAgd2lkdGg6IDguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtMyB7XG4gICAgd2lkdGg6IDI1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS00IHtcbiAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtNiB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS03IHtcbiAgICB3aWR0aDogNTguMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLmxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAubGFyZ2UtOSB7XG4gICAgd2lkdGg6IDc1JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMCB7XG4gICAgd2lkdGg6IDgzLjMzMzMzJTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC5sYXJnZS0xMiB7XG4gICAgd2lkdGg6IDEwMCU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xIHtcbiAgICB3aWR0aDogOC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTIge1xuICAgIHdpZHRoOiAxNi42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTMge1xuICAgIHdpZHRoOiAyNSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTQge1xuICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTUge1xuICAgIHdpZHRoOiA0MS42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTYge1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTcge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTgge1xuICAgIHdpZHRoOiA2Ni42NjY2NyU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTkge1xuICAgIHdpZHRoOiA3NSU7IH1cbiAgLnhsYXJnZS1tYXJnaW4tY29sbGFwc2UgPiAueGxhcmdlLTEwIHtcbiAgICB3aWR0aDogODMuMzMzMzMlOyB9XG4gIC54bGFyZ2UtbWFyZ2luLWNvbGxhcHNlID4gLnhsYXJnZS0xMSB7XG4gICAgd2lkdGg6IDkxLjY2NjY3JTsgfVxuICAueGxhcmdlLW1hcmdpbi1jb2xsYXBzZSA+IC54bGFyZ2UtMTIge1xuICAgIHdpZHRoOiAxMDAlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLXBhZGRpbmctY29sbGFwc2Uge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDsgfVxuICAgIC54bGFyZ2UtcGFkZGluZy1jb2xsYXBzZSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG4uc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogMCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTAge1xuICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEge1xuICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTIge1xuICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0yIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMyB7XG4gIG1hcmdpbi1sZWZ0OiAyNSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTMge1xuICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC00IHtcbiAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNCB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTUge1xuICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC01IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtNiB7XG4gIG1hcmdpbi1sZWZ0OiA1MCU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTYge1xuICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC03IHtcbiAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuXG4uZ3JpZC1tYXJnaW4teCA+IC5zbWFsbC1vZmZzZXQtNyB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuXG4uc21hbGwtb2Zmc2V0LTgge1xuICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC04IHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtOSB7XG4gIG1hcmdpbi1sZWZ0OiA3NSU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTkge1xuICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cblxuLnNtYWxsLW9mZnNldC0xMCB7XG4gIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cblxuLmdyaWQtbWFyZ2luLXggPiAuc21hbGwtb2Zmc2V0LTEwIHtcbiAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG5cbi5zbWFsbC1vZmZzZXQtMTEge1xuICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG5cbi5ncmlkLW1hcmdpbi14ID4gLnNtYWxsLW9mZnNldC0xMSB7XG4gIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogOC4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMTYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IDMzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTQge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDMzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNDEuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IDU4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5tZWRpdW0tb2Zmc2V0LTcge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDU4LjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubWVkaXVtLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNjYuNjY2NjclICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cbiAgLm1lZGl1bS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiA4My4zMzMzMyU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAubWVkaXVtLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoODMuMzMzMzMlICsgMC42MjVyZW0pOyB9XG4gIC5tZWRpdW0tb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLm1lZGl1bS1vZmZzZXQtMTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDkxLjY2NjY3JSArIDAuNjI1cmVtKTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vZmZzZXQtMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogMTYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0yIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygxNi42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogMjUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygzMy4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogNDEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC01IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg0MS42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogNTAlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1OC4zMzMzMyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogNjYuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC04IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg2Ni42NjY2NyUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogNzUlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAwLjYyNXJlbSk7IH1cbiAgLmxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC5sYXJnZS1vZmZzZXQtMTAge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDgzLjMzMzMzJSArIDAuNjI1cmVtKTsgfVxuICAubGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogOTEuNjY2NjclOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLmxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoOTEuNjY2NjclICsgMC42MjVyZW0pOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogMCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0wIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygwJSArIDEuMjQ2ODdyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiA4LjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDguMzMzMzMlICsgMS4yNDY4N3JlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtMiB7XG4gICAgbWFyZ2luLWxlZnQ6IDE2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTIge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDE2LjY2NjY3JSArIDEuMjQ2ODdyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTMge1xuICAgIG1hcmdpbi1sZWZ0OiAyNSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC0zIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYygyNSUgKyAxLjI0Njg3cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC00IHtcbiAgICBtYXJnaW4tbGVmdDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNCB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoMzMuMzMzMzMlICsgMS4yNDY4N3JlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtNSB7XG4gICAgbWFyZ2luLWxlZnQ6IDQxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTUge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDQxLjY2NjY3JSArIDEuMjQ2ODdyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTYge1xuICAgIG1hcmdpbi1sZWZ0OiA1MCU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC02IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg1MCUgKyAxLjI0Njg3cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC03IHtcbiAgICBtYXJnaW4tbGVmdDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLW1hcmdpbi14ID4gLnhsYXJnZS1vZmZzZXQtNyB7XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTguMzMzMzMlICsgMS4yNDY4N3JlbSk7IH1cbiAgLnhsYXJnZS1vZmZzZXQtOCB7XG4gICAgbWFyZ2luLWxlZnQ6IDY2LjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTgge1xuICAgIG1hcmdpbi1sZWZ0OiBjYWxjKDY2LjY2NjY3JSArIDEuMjQ2ODdyZW0pOyB9XG4gIC54bGFyZ2Utb2Zmc2V0LTkge1xuICAgIG1hcmdpbi1sZWZ0OiA3NSU7IH1cbiAgLmdyaWQtbWFyZ2luLXggPiAueGxhcmdlLW9mZnNldC05IHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg3NSUgKyAxLjI0Njg3cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMCB7XG4gICAgbWFyZ2luLWxlZnQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTEwIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg4My4zMzMzMyUgKyAxLjI0Njg3cmVtKTsgfVxuICAueGxhcmdlLW9mZnNldC0xMSB7XG4gICAgbWFyZ2luLWxlZnQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC1tYXJnaW4teCA+IC54bGFyZ2Utb2Zmc2V0LTExIHtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyg5MS42NjY2NyUgKyAxLjI0Njg3cmVtKTsgfSB9XG5cbi5ncmlkLXkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWZsb3c6IGNvbHVtbiBub3dyYXA7IH1cbiAgLmdyaWQteSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LWhlaWdodDogbm9uZTsgfVxuICAuZ3JpZC15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtc2hyaW5rLCAuZ3JpZC15ID4gLnNtYWxsLWZ1bGwsIC5ncmlkLXkgPiAuc21hbGwtMSwgLmdyaWQteSA+IC5zbWFsbC0yLCAuZ3JpZC15ID4gLnNtYWxsLTMsIC5ncmlkLXkgPiAuc21hbGwtNCwgLmdyaWQteSA+IC5zbWFsbC01LCAuZ3JpZC15ID4gLnNtYWxsLTYsIC5ncmlkLXkgPiAuc21hbGwtNywgLmdyaWQteSA+IC5zbWFsbC04LCAuZ3JpZC15ID4gLnNtYWxsLTksIC5ncmlkLXkgPiAuc21hbGwtMTAsIC5ncmlkLXkgPiAuc21hbGwtMTEsIC5ncmlkLXkgPiAuc21hbGwtMTIge1xuICAgIGZsZXgtYmFzaXM6IGF1dG87IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLWZ1bGwsIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleC1iYXNpczogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmssIC5ncmlkLXkgPiAubGFyZ2UtZnVsbCwgLmdyaWQteSA+IC5sYXJnZS0xLCAuZ3JpZC15ID4gLmxhcmdlLTIsIC5ncmlkLXkgPiAubGFyZ2UtMywgLmdyaWQteSA+IC5sYXJnZS00LCAuZ3JpZC15ID4gLmxhcmdlLTUsIC5ncmlkLXkgPiAubGFyZ2UtNiwgLmdyaWQteSA+IC5sYXJnZS03LCAuZ3JpZC15ID4gLmxhcmdlLTgsIC5ncmlkLXkgPiAubGFyZ2UtOSwgLmdyaWQteSA+IC5sYXJnZS0xMCwgLmdyaWQteSA+IC5sYXJnZS0xMSwgLmdyaWQteSA+IC5sYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtZnVsbCwgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4LWJhc2lzOiBhdXRvOyB9IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xLCAuZ3JpZC15ID4gLnNtYWxsLTIsIC5ncmlkLXkgPiAuc21hbGwtMywgLmdyaWQteSA+IC5zbWFsbC00LCAuZ3JpZC15ID4gLnNtYWxsLTUsIC5ncmlkLXkgPiAuc21hbGwtNiwgLmdyaWQteSA+IC5zbWFsbC03LCAuZ3JpZC15ID4gLnNtYWxsLTgsIC5ncmlkLXkgPiAuc21hbGwtOSwgLmdyaWQteSA+IC5zbWFsbC0xMCwgLmdyaWQteSA+IC5zbWFsbC0xMSwgLmdyaWQteSA+IC5zbWFsbC0xMiB7XG4gICAgZmxleDogMCAwIGF1dG87IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtMiB7XG4gICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IDI1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtNSB7XG4gICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IDUwJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gIC5ncmlkLXkgPiAuc21hbGwtOCB7XG4gICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgLmdyaWQteSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IDc1JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTExIHtcbiAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAuZ3JpZC15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGZsZXg6IDEgMSAwcHg7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmssIC5ncmlkLXkgPiAubWVkaXVtLTEsIC5ncmlkLXkgPiAubWVkaXVtLTIsIC5ncmlkLXkgPiAubWVkaXVtLTMsIC5ncmlkLXkgPiAubWVkaXVtLTQsIC5ncmlkLXkgPiAubWVkaXVtLTUsIC5ncmlkLXkgPiAubWVkaXVtLTYsIC5ncmlkLXkgPiAubWVkaXVtLTcsIC5ncmlkLXkgPiAubWVkaXVtLTgsIC5ncmlkLXkgPiAubWVkaXVtLTksIC5ncmlkLXkgPiAubWVkaXVtLTEwLCAuZ3JpZC15ID4gLm1lZGl1bS0xMSwgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgZmxleDogMCAwIGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IDguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IDE2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogMzMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IDQxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogNTguMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IDY2LjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IDgzLjMzMzMzJTsgfVxuICAgIC5ncmlkLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogOTEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2Utc2hyaW5rLCAuZ3JpZC15ID4gLmxhcmdlLTEsIC5ncmlkLXkgPiAubGFyZ2UtMiwgLmdyaWQteSA+IC5sYXJnZS0zLCAuZ3JpZC15ID4gLmxhcmdlLTQsIC5ncmlkLXkgPiAubGFyZ2UtNSwgLmdyaWQteSA+IC5sYXJnZS02LCAuZ3JpZC15ID4gLmxhcmdlLTcsIC5ncmlkLXkgPiAubGFyZ2UtOCwgLmdyaWQteSA+IC5sYXJnZS05LCAuZ3JpZC15ID4gLmxhcmdlLTEwLCAuZ3JpZC15ID4gLmxhcmdlLTExLCAuZ3JpZC15ID4gLmxhcmdlLTEyIHtcbiAgICAgIGZsZXg6IDAgMCBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiAxNi42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiAyNSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiA0MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiA1MCU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiA2Ni42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiA3NSU7IH1cbiAgICAuZ3JpZC15ID4gLmxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IDkxLjY2NjY3JTsgfVxuICAgIC5ncmlkLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgZmxleDogMSAxIDBweDtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluaywgLmdyaWQteSA+IC54bGFyZ2UtMSwgLmdyaWQteSA+IC54bGFyZ2UtMiwgLmdyaWQteSA+IC54bGFyZ2UtMywgLmdyaWQteSA+IC54bGFyZ2UtNCwgLmdyaWQteSA+IC54bGFyZ2UtNSwgLmdyaWQteSA+IC54bGFyZ2UtNiwgLmdyaWQteSA+IC54bGFyZ2UtNywgLmdyaWQteSA+IC54bGFyZ2UtOCwgLmdyaWQteSA+IC54bGFyZ2UtOSwgLmdyaWQteSA+IC54bGFyZ2UtMTAsIC5ncmlkLXkgPiAueGxhcmdlLTExLCAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBmbGV4OiAwIDAgYXV0bzsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xIHtcbiAgICAgIGhlaWdodDogOC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogMTYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IDI1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTQge1xuICAgICAgaGVpZ2h0OiAzMy4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogNDEuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IDUwJTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTcge1xuICAgICAgaGVpZ2h0OiA1OC4zMzMzMyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogNjYuNjY2NjclOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IDc1JTsgfVxuICAgIC5ncmlkLXkgPiAueGxhcmdlLTEwIHtcbiAgICAgIGhlaWdodDogODMuMzMzMzMlOyB9XG4gICAgLmdyaWQteSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiA5MS42NjY2NyU7IH1cbiAgICAuZ3JpZC15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG4uZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1wYWRkaW5nLXkgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15IC5ncmlkLXBhZGRpbmcteSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMS4yNDY4N3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0xLjI0Njg3cmVtOyB9IH1cblxuLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICBwYWRkaW5nLXRvcDogMC42MjVyZW07XG4gIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjYyNXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtcGFkZGluZy15ID4gLmNlbGwge1xuICAgICAgcGFkZGluZy10b3A6IDAuNjI1cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLXBhZGRpbmcteSA+IC5jZWxsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxLjI0Njg3cmVtO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuMjQ2ODdyZW07IH0gfVxuXG4uZ3JpZC1tYXJnaW4teSB7XG4gIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTEuMjQ2ODdyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNDY4N3JlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAwLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmNlbGwge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjQ2ODdyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI0Njg3cmVtOyB9IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLXNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS00IHtcbiAgICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS03IHtcbiAgICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi40OTM3NXJlbSk7IH0gfVxuXG4uZ3JpZC1mcmFtZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxleC13cmFwOiBub3dyYXA7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICB3aWR0aDogMTAwdnc7IH1cblxuLmNlbGwgLmdyaWQtZnJhbWUge1xuICB3aWR0aDogMTAwJTsgfVxuXG4uY2VsbC1ibG9jayB7XG4gIG92ZXJmbG93LXg6IGF1dG87XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay15IHtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgbWF4LWhlaWdodDogMTAwJTtcbiAgbWluLWhlaWdodDogMTAwJTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuXG4uY2VsbC1ibG9jay1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gIC5jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgICB3aWR0aDogMTAwdnc7IH1cbiAgLmNlbGwgLm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgbWF4LWhlaWdodDogMTAwJTsgfVxuICAgIC5tZWRpdW0tY2VsbC1ibG9jay1jb250YWluZXIgPiAuZ3JpZC14IHtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICBmbGV4LXdyYXA6IG5vd3JhcDsgfVxuICAubWVkaXVtLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2sge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjsgfVxuICAubGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmxhcmdlLWNlbGwtYmxvY2stY29udGFpbmVyID4gLmdyaWQteCB7XG4gICAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgICAgZmxleC13cmFwOiBub3dyYXA7IH1cbiAgLmxhcmdlLWNlbGwtYmxvY2steSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtd3JhcDogbm93cmFwO1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIHdpZHRoOiAxMDB2dzsgfVxuICAuY2VsbCAueGxhcmdlLWdyaWQtZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jayB7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC1tcy1vdmVyZmxvdy1zdHlsZTogLW1zLWF1dG9oaWRpbmctc2Nyb2xsYmFyOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnhsYXJnZS1jZWxsLWJsb2NrLWNvbnRhaW5lciA+IC5ncmlkLXgge1xuICAgICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICAgIGZsZXgtd3JhcDogbm93cmFwOyB9XG4gIC54bGFyZ2UtY2VsbC1ibG9jay15IHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7IH0gfVxuXG4uZ3JpZC15LmdyaWQtZnJhbWUge1xuICB3aWR0aDogYXV0bztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIGhlaWdodDogMTAwdmg7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQteS5tZWRpdW0tZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5ncmlkLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgaGVpZ2h0OiAxMDB2aDsgfSB9XG5cbi5jZWxsIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gIGhlaWdodDogMTAwJTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuY2VsbCAuZ3JpZC15Lm1lZGl1bS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2VsbCAuZ3JpZC15LmxhcmdlLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogMTAwJTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNlbGwgLmdyaWQteS54bGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiAxMDAlOyB9IH1cblxuLmdyaWQtbWFyZ2luLXkge1xuICBtYXJnaW4tdG9wOiAtMC42MjVyZW07XG4gIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0wLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkge1xuICAgICAgbWFyZ2luLXRvcDogLTAuNjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15IHtcbiAgICAgIG1hcmdpbi10b3A6IC0xLjI0Njg3cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLTEuMjQ2ODdyZW07IH0gfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuY2VsbCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5jZWxsIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi40OTM3NXJlbSk7XG4gICAgICBtYXJnaW4tdG9wOiAxLjI0Njg3cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNDY4N3JlbTsgfSB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zaHJpbmsge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICBoZWlnaHQ6IGNhbGMoOC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMyB7XG4gICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgIGhlaWdodDogY2FsYygzMy4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNiB7XG4gICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgIGhlaWdodDogY2FsYyg1OC4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOSB7XG4gICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICBoZWlnaHQ6IGNhbGMoODMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xMiB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ncmlkLW1hcmdpbi15ID4gLmF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDEuMjVyZW0pOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMS4yNXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAxLjI1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDEuMjVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNocmluayB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC0zIHtcbiAgICAgIGhlaWdodDogY2FsYygyNSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC02IHtcbiAgICAgIGhlaWdodDogY2FsYyg1MCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAuc21hbGwtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5zbWFsbC05IHtcbiAgICAgIGhlaWdodDogY2FsYyg3NSUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnNtYWxsLTEyIHtcbiAgICAgIGhlaWdodDogY2FsYygxMDAlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tYXV0byB7XG4gICAgICBoZWlnaHQ6IGF1dG87IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xIHtcbiAgICAgIGhlaWdodDogY2FsYyg4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDE2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTQge1xuICAgICAgaGVpZ2h0OiBjYWxjKDMzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTUge1xuICAgICAgaGVpZ2h0OiBjYWxjKDQxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTcge1xuICAgICAgaGVpZ2h0OiBjYWxjKDU4LjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTgge1xuICAgICAgaGVpZ2h0OiBjYWxjKDY2LjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubWVkaXVtLTEwIHtcbiAgICAgIGhlaWdodDogY2FsYyg4My4zMzMzMyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLm1lZGl1bS0xMSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoOTEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5tZWRpdW0tMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLWF1dG8ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2Utc2hyaW5rIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS0yIHtcbiAgICAgIGhlaWdodDogY2FsYygxNi42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTMge1xuICAgICAgaGVpZ2h0OiBjYWxjKDI1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS01IHtcbiAgICAgIGhlaWdodDogY2FsYyg0MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTYge1xuICAgICAgaGVpZ2h0OiBjYWxjKDUwJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC5sYXJnZS04IHtcbiAgICAgIGhlaWdodDogY2FsYyg2Ni42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLmxhcmdlLTkge1xuICAgICAgaGVpZ2h0OiBjYWxjKDc1JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDkxLjY2NjY3JSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAubGFyZ2UtMTIge1xuICAgICAgaGVpZ2h0OiBjYWxjKDEwMCUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1hdXRvIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS1zaHJpbmsge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTEge1xuICAgICAgaGVpZ2h0OiBjYWxjKDguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMjUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNDEuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTAlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtNyB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNTguMzMzMzMlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOCB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNjYuNjY2NjclIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtOSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoNzUlIC0gMi40OTM3NXJlbSk7IH1cbiAgICAuZ3JpZC1tYXJnaW4teSA+IC54bGFyZ2UtMTAge1xuICAgICAgaGVpZ2h0OiBjYWxjKDgzLjMzMzMzJSAtIDIuNDkzNzVyZW0pOyB9XG4gICAgLmdyaWQtbWFyZ2luLXkgPiAueGxhcmdlLTExIHtcbiAgICAgIGhlaWdodDogY2FsYyg5MS42NjY2NyUgLSAyLjQ5Mzc1cmVtKTsgfVxuICAgIC5ncmlkLW1hcmdpbi15ID4gLnhsYXJnZS0xMiB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDIuNDkzNzVyZW0pOyB9IH1cblxuLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ3JpZC1mcmFtZS5ncmlkLW1hcmdpbi15IHtcbiAgICAgIGhlaWdodDogY2FsYygxMDB2aCArIDIuNDkzNzVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubWVkaXVtLWdyaWQtZnJhbWUge1xuICAgIGhlaWdodDogY2FsYygxMDB2aCArIDEuMjVyZW0pOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmdyaWQtbWFyZ2luLXkubGFyZ2UtZ3JpZC1mcmFtZSB7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoICsgMS4yNXJlbSk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5ncmlkLW1hcmdpbi15LnhsYXJnZS1ncmlkLWZyYW1lIHtcbiAgICBoZWlnaHQ6IGNhbGMoMTAwdmggKyAyLjQ5Mzc1cmVtKTsgfSB9XG5cbi5idXR0b24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgcGFkZGluZzogMC44NzVyZW0gMi41cmVtO1xuICBib3JkZXI6IDJweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDFyZW07XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAuYnV0dG9uIHtcbiAgICBvdXRsaW5lOiAwOyB9XG4gIC5idXR0b24udGlueSB7XG4gICAgZm9udC1zaXplOiAwLjZyZW07IH1cbiAgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZm9udC1zaXplOiAwLjc1cmVtOyB9XG4gIC5idXR0b24ubGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfVxuICAuYnV0dG9uLmV4cGFuZGVkIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cbiAgLmJ1dHRvbiwgLmJ1dHRvbi5kaXNhYmxlZCwgLmJ1dHRvbltkaXNhYmxlZF0sIC5idXR0b24uZGlzYWJsZWQ6aG92ZXIsIC5idXR0b25bZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uOmhvdmVyLCAuYnV0dG9uOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTYzMjc3O1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24ucHJpbWFyeSwgLmJ1dHRvbi5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24ucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24ucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnByaW1hcnk6aG92ZXIsIC5idXR0b24ucHJpbWFyeTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2U0MjM2ZDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnNlY29uZGFyeSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc2Vjb25kYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzQxQTQ5NDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNDgzNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5ncmF5LCAuYnV0dG9uLmdyYXkuZGlzYWJsZWQsIC5idXR0b24uZ3JheVtkaXNhYmxlZF0sIC5idXR0b24uZ3JheS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ncmF5W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ncmF5LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmdyYXlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1O1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uZ3JheTpob3ZlciwgLmJ1dHRvbi5ncmF5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjZjOWNlO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24ud2hpdGUsIC5idXR0b24ud2hpdGUuZGlzYWJsZWQsIC5idXR0b24ud2hpdGVbZGlzYWJsZWRdLCAuYnV0dG9uLndoaXRlLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLndoaXRlW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi53aGl0ZS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi53aGl0ZVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi53aGl0ZTpob3ZlciwgLmJ1dHRvbi53aGl0ZTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2NjY2NjYztcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLnN1Y2Nlc3MsIC5idXR0b24uc3VjY2Vzcy5kaXNhYmxlZCwgLmJ1dHRvbi5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5zdWNjZXNzLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3NbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uc3VjY2Vzc1tkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzYWRiNzY7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLnN1Y2Nlc3M6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMmJiNWI7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi53YXJuaW5nLCAuYnV0dG9uLndhcm5pbmcuZGlzYWJsZWQsIC5idXR0b24ud2FybmluZ1tkaXNhYmxlZF0sIC5idXR0b24ud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi53YXJuaW5nW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi53YXJuaW5nLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZhZTAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24ud2FybmluZzpob3ZlciwgLmJ1dHRvbi53YXJuaW5nOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2M4YjAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5idXR0b24uYWxlcnQsIC5idXR0b24uYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjYzRiMzc7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLmJ1dHRvbi5hbGVydDpob3ZlciwgLmJ1dHRvbi5hbGVydDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2E1M2IyYTtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3c6aG92ZXIsIC5idXR0b24uaG9sbG93OmZvY3VzLCAuYnV0dG9uLmhvbGxvdy5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmhvbGxvd1tkaXNhYmxlZF0sIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3dbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYnV0dG9uLmhvbGxvdywgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0VCNUU5NDtcbiAgICBjb2xvcjogI0VCNUU5NDsgfVxuICAuYnV0dG9uLmhvbGxvdzpob3ZlciwgLmJ1dHRvbi5ob2xsb3c6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzkyMTI0MztcbiAgICBjb2xvcjogIzkyMTI0MzsgfVxuICAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5wcmltYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnByaW1hcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjRUI1RTk0O1xuICAgIGNvbG9yOiAjRUI1RTk0OyB9XG4gIC5idXR0b24uaG9sbG93LnByaW1hcnk6aG92ZXIsIC5idXR0b24uaG9sbG93LnByaW1hcnk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzkyMTI0MztcbiAgICBjb2xvcjogIzkyMTI0MzsgfVxuICAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnksIC5idXR0b24uaG9sbG93LnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnNlY29uZGFyeVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MUE0OTQ7XG4gICAgY29sb3I6ICM0MUE0OTQ7IH1cbiAgLmJ1dHRvbi5ob2xsb3cuc2Vjb25kYXJ5OmhvdmVyLCAuYnV0dG9uLmhvbGxvdy5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzIxNTI0YTtcbiAgICBjb2xvcjogIzIxNTI0YTsgfVxuICAuYnV0dG9uLmhvbGxvdy5ncmF5LCAuYnV0dG9uLmhvbGxvdy5ncmF5LmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5ncmF5W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuZ3JheS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuZ3JheVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LmdyYXkuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LmdyYXlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZjBmNGY1O1xuICAgIGNvbG9yOiAjZjBmNGY1OyB9XG4gIC5idXR0b24uaG9sbG93LmdyYXk6aG92ZXIsIC5idXR0b24uaG9sbG93LmdyYXk6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzYxODg5MjtcbiAgICBjb2xvcjogIzYxODg5MjsgfVxuICAuYnV0dG9uLmhvbGxvdy53aGl0ZSwgLmJ1dHRvbi5ob2xsb3cud2hpdGUuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LndoaXRlW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2hpdGUuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LndoaXRlW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2hpdGUuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LndoaXRlW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2ZmZmZmZjtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAuYnV0dG9uLmhvbGxvdy53aGl0ZTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2hpdGU6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogZ3JheTtcbiAgICBjb2xvcjogZ3JheTsgfVxuICAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy5zdWNjZXNzW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzcy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3MuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3NbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjM2FkYjc2O1xuICAgIGNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6aG92ZXIsIC5idXR0b24uaG9sbG93LnN1Y2Nlc3M6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzE1NzUzOTtcbiAgICBjb2xvcjogIzE1NzUzOTsgfVxuICAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmhvbGxvdy53YXJuaW5nW2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cud2FybmluZy5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmcuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93Lndhcm5pbmdbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZmZhZTAwO1xuICAgIGNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uaG9sbG93Lndhcm5pbmc6aG92ZXIsIC5idXR0b24uaG9sbG93Lndhcm5pbmc6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzgwNTcwMDtcbiAgICBjb2xvcjogIzgwNTcwMDsgfVxuICAuYnV0dG9uLmhvbGxvdy5hbGVydCwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXSwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQuZGlzYWJsZWQ6Zm9jdXMsIC5idXR0b24uaG9sbG93LmFsZXJ0W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjNGIzNztcbiAgICBjb2xvcjogI2NjNGIzNzsgfVxuICAuYnV0dG9uLmhvbGxvdy5hbGVydDpob3ZlciwgLmJ1dHRvbi5ob2xsb3cuYWxlcnQ6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogIzY3MjUxYTtcbiAgICBjb2xvcjogIzY3MjUxYTsgfVxuICAuYnV0dG9uLmNsZWFyLCAuYnV0dG9uLmNsZWFyOmhvdmVyLCAuYnV0dG9uLmNsZWFyOmZvY3VzLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXSwgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gIC5idXR0b24uY2xlYXIsIC5idXR0b24uY2xlYXIuZGlzYWJsZWQsIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjRUI1RTk0OyB9XG4gIC5idXR0b24uY2xlYXI6aG92ZXIsIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgIGNvbG9yOiAjOTIxMjQzOyB9XG4gIC5idXR0b24uY2xlYXIucHJpbWFyeSwgLmJ1dHRvbi5jbGVhci5wcmltYXJ5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnByaW1hcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnByaW1hcnkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIucHJpbWFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5wcmltYXJ5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgLmJ1dHRvbi5jbGVhci5wcmltYXJ5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLnByaW1hcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAjOTIxMjQzOyB9XG4gIC5idXR0b24uY2xlYXIuc2Vjb25kYXJ5LCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZCwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnlbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBjb2xvcjogIzQxQTQ5NDsgfVxuICAuYnV0dG9uLmNsZWFyLnNlY29uZGFyeTpob3ZlciwgLmJ1dHRvbi5jbGVhci5zZWNvbmRhcnk6Zm9jdXMge1xuICAgIGNvbG9yOiAjMjE1MjRhOyB9XG4gIC5idXR0b24uY2xlYXIuZ3JheSwgLmJ1dHRvbi5jbGVhci5ncmF5LmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLmdyYXlbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmdyYXkuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuZ3JheVtkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuZ3JheS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5ncmF5W2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICNmMGY0ZjU7IH1cbiAgLmJ1dHRvbi5jbGVhci5ncmF5OmhvdmVyLCAuYnV0dG9uLmNsZWFyLmdyYXk6Zm9jdXMge1xuICAgIGNvbG9yOiAjNjE4ODkyOyB9XG4gIC5idXR0b24uY2xlYXIud2hpdGUsIC5idXR0b24uY2xlYXIud2hpdGUuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIud2hpdGVbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndoaXRlLmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndoaXRlW2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci53aGl0ZS5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci53aGl0ZVtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uY2xlYXIud2hpdGU6aG92ZXIsIC5idXR0b24uY2xlYXIud2hpdGU6Zm9jdXMge1xuICAgIGNvbG9yOiBncmF5OyB9XG4gIC5idXR0b24uY2xlYXIuc3VjY2VzcywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3NbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3MuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzc1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIuc3VjY2Vzcy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5zdWNjZXNzW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICMzYWRiNzY7IH1cbiAgLmJ1dHRvbi5jbGVhci5zdWNjZXNzOmhvdmVyLCAuYnV0dG9uLmNsZWFyLnN1Y2Nlc3M6Zm9jdXMge1xuICAgIGNvbG9yOiAjMTU3NTM5OyB9XG4gIC5idXR0b24uY2xlYXIud2FybmluZywgLmJ1dHRvbi5jbGVhci53YXJuaW5nLmRpc2FibGVkLCAuYnV0dG9uLmNsZWFyLndhcm5pbmdbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLndhcm5pbmcuZGlzYWJsZWQ6aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZ1tkaXNhYmxlZF06aG92ZXIsIC5idXR0b24uY2xlYXIud2FybmluZy5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci53YXJuaW5nW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmFlMDA7IH1cbiAgLmJ1dHRvbi5jbGVhci53YXJuaW5nOmhvdmVyLCAuYnV0dG9uLmNsZWFyLndhcm5pbmc6Zm9jdXMge1xuICAgIGNvbG9yOiAjODA1NzAwOyB9XG4gIC5idXR0b24uY2xlYXIuYWxlcnQsIC5idXR0b24uY2xlYXIuYWxlcnQuZGlzYWJsZWQsIC5idXR0b24uY2xlYXIuYWxlcnRbZGlzYWJsZWRdLCAuYnV0dG9uLmNsZWFyLmFsZXJ0LmRpc2FibGVkOmhvdmVyLCAuYnV0dG9uLmNsZWFyLmFsZXJ0W2Rpc2FibGVkXTpob3ZlciwgLmJ1dHRvbi5jbGVhci5hbGVydC5kaXNhYmxlZDpmb2N1cywgLmJ1dHRvbi5jbGVhci5hbGVydFtkaXNhYmxlZF06Zm9jdXMge1xuICAgIGNvbG9yOiAjY2M0YjM3OyB9XG4gIC5idXR0b24uY2xlYXIuYWxlcnQ6aG92ZXIsIC5idXR0b24uY2xlYXIuYWxlcnQ6Zm9jdXMge1xuICAgIGNvbG9yOiAjNjcyNTFhOyB9XG4gIC5idXR0b24uZGlzYWJsZWQsIC5idXR0b25bZGlzYWJsZWRdIHtcbiAgICBvcGFjaXR5OiAwLjI1O1xuICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7IH1cbiAgLmJ1dHRvbi5kcm9wZG93bjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBib3JkZXI6IGluc2V0IDAuNGVtO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDAuNGVtO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgbWFyZ2luLWxlZnQ6IDIuNXJlbTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdzo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXI6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjRUI1RTk0OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnByaW1hcnk6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnByaW1hcnk6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjRUI1RTk0OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnNlY29uZGFyeTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIuc2Vjb25kYXJ5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogIzQxQTQ5NDsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy5ncmF5OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5ncmF5OjphZnRlciB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogI2YwZjRmNTsgfVxuICAuYnV0dG9uLmRyb3Bkb3duLmhvbGxvdy53aGl0ZTo6YWZ0ZXIsIC5idXR0b24uZHJvcGRvd24uY2xlYXIud2hpdGU6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LnN1Y2Nlc3M6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLnN1Y2Nlc3M6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjM2FkYjc2OyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93Lndhcm5pbmc6OmFmdGVyLCAuYnV0dG9uLmRyb3Bkb3duLmNsZWFyLndhcm5pbmc6OmFmdGVyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAjZmZhZTAwOyB9XG4gIC5idXR0b24uZHJvcGRvd24uaG9sbG93LmFsZXJ0OjphZnRlciwgLmJ1dHRvbi5kcm9wZG93bi5jbGVhci5hbGVydDo6YWZ0ZXIge1xuICAgIGJvcmRlci10b3AtY29sb3I6ICNjYzRiMzc7IH1cbiAgLmJ1dHRvbi5hcnJvdy1vbmx5OjphZnRlciB7XG4gICAgdG9wOiAtMC4xZW07XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWxlZnQ6IDA7IH1cblxuYS5idXR0b246aG92ZXIsIGEuYnV0dG9uOmZvY3VzIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi5jYWxsb3V0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGNvbG9yOiAjMWExYTFhOyB9XG4gIC5jYWxsb3V0ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwOyB9XG4gIC5jYWxsb3V0ID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgLmNhbGxvdXQucHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZjZTdlZjtcbiAgICBjb2xvcjogIzFhMWExYTsgfVxuICAuY2FsbG91dC5zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlMWYzZjA7XG4gICAgY29sb3I6ICMxYTFhMWE7IH1cbiAgLmNhbGxvdXQuZ3JheSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZkZmRmZTtcbiAgICBjb2xvcjogIzFhMWExYTsgfVxuICAuY2FsbG91dC53aGl0ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgY29sb3I6ICMxYTFhMWE7IH1cbiAgLmNhbGxvdXQuc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2UxZmFlYTtcbiAgICBjb2xvcjogIzFhMWExYTsgfVxuICAuY2FsbG91dC53YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmM2Q5O1xuICAgIGNvbG9yOiAjMWExYTFhOyB9XG4gIC5jYWxsb3V0LmFsZXJ0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdlNGUxO1xuICAgIGNvbG9yOiAjMWExYTFhOyB9XG4gIC5jYWxsb3V0LnNtYWxsIHtcbiAgICBwYWRkaW5nLXRvcDogMC41cmVtO1xuICAgIHBhZGRpbmctcmlnaHQ6IDAuNXJlbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMC41cmVtO1xuICAgIHBhZGRpbmctbGVmdDogMC41cmVtOyB9XG4gIC5jYWxsb3V0LmxhcmdlIHtcbiAgICBwYWRkaW5nLXRvcDogM3JlbTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzcmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAzcmVtO1xuICAgIHBhZGRpbmctbGVmdDogM3JlbTsgfVxuXG4uYWNjb3JkaW9uIHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTsgfVxuICAuYWNjb3JkaW9uW2Rpc2FibGVkXSAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICBjdXJzb3I6IG5vdC1hbGxvd2VkOyB9XG5cbi5hY2NvcmRpb24taXRlbTpmaXJzdC1jaGlsZCA+IDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi1pdGVtOmxhc3QtY2hpbGQgPiA6bGFzdC1jaGlsZCB7XG4gIGJvcmRlci1yYWRpdXM6IDAgMCAwIDA7IH1cblxuLmFjY29yZGlvbi10aXRsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I4Y2NkMTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgOmxhc3QtY2hpbGQ6bm90KC5pcy1hY3RpdmUpID4gLmFjY29yZGlvbi10aXRsZSB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiOGNjZDE7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMDsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOmhvdmVyLCAuYWNjb3JkaW9uLXRpdGxlOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbnRlbnQ6IFwiK1wiOyB9XG4gIC5pcy1hY3RpdmUgPiAuYWNjb3JkaW9uLXRpdGxlOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwi4oCTXCI7IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcGFkZGluZzogMXJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgI2I4Y2NkMTtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgY29sb3I6ICMxNTFGMzU7IH1cbiAgOmxhc3QtY2hpbGQgPiAuYWNjb3JkaW9uLWNvbnRlbnQ6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiOGNjZDE7IH1cblxuLnJlc3BvbnNpdmUtZW1iZWQsXG4uZmxleC12aWRlbyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICBwYWRkaW5nLWJvdHRvbTogNzUlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5yZXNwb25zaXZlLWVtYmVkIGlmcmFtZSxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgb2JqZWN0LFxuICAucmVzcG9uc2l2ZS1lbWJlZCBlbWJlZCxcbiAgLnJlc3BvbnNpdmUtZW1iZWQgdmlkZW8sXG4gIC5mbGV4LXZpZGVvIGlmcmFtZSxcbiAgLmZsZXgtdmlkZW8gb2JqZWN0LFxuICAuZmxleC12aWRlbyBlbWJlZCxcbiAgLmZsZXgtdmlkZW8gdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgLnJlc3BvbnNpdmUtZW1iZWQud2lkZXNjcmVlbixcbiAgLmZsZXgtdmlkZW8ud2lkZXNjcmVlbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgfVxuXG4udGFicyB7XG4gIG1hcmdpbjogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YwZjRmNTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lOyB9XG4gIC50YWJzOjpiZWZvcmUsIC50YWJzOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLnRhYnM6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuXG4udGFicy52ZXJ0aWNhbCA+IGxpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICB3aWR0aDogYXV0bzsgfVxuXG4udGFicy5zaW1wbGUgPiBsaSA+IGEge1xuICBwYWRkaW5nOiAwOyB9XG4gIC50YWJzLnNpbXBsZSA+IGxpID4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cblxuLnRhYnMucHJpbWFyeSB7XG4gIGJhY2tncm91bmQ6ICNFQjVFOTQ7IH1cbiAgLnRhYnMucHJpbWFyeSA+IGxpID4gYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmhvdmVyLCAudGFicy5wcmltYXJ5ID4gbGkgPiBhOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQ6ICNlOTRmOGE7IH1cblxuLnRhYnMtdGl0bGUge1xuICBmbG9hdDogbGVmdDsgfVxuICAudGFicy10aXRsZSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEuMjVyZW0gMS41cmVtO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogI0VCNUU5NDsgfVxuICAgIFtkYXRhLXdoYXRpbnB1dD0nbW91c2UnXSAudGFicy10aXRsZSA+IGEge1xuICAgICAgb3V0bGluZTogMDsgfVxuICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgY29sb3I6ICNlNjM1Nzk7IH1cbiAgICAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogI2YwZjRmNTtcbiAgICAgIGNvbG9yOiAjRUI1RTk0OyB9XG5cbi50YWJzLWNvbnRlbnQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjZjBmNGY1O1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICBjb2xvcjogIzE1MUYzNTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTsgfVxuXG4udGFicy1jb250ZW50LnZlcnRpY2FsIHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2YwZjRmNTtcbiAgYm9yZGVyLWxlZnQ6IDA7IH1cblxuLnRhYnMtcGFuZWwge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtOyB9XG4gIC50YWJzLXBhbmVsLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cblxuaHRtbC5pcy1yZXZlYWwtb3BlbiB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuLnpmLWhhcy1zY3JvbGwge1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDsgfVxuICBodG1sLmlzLXJldmVhbC1vcGVuIGJvZHkge1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjsgfVxuXG4ucmV2ZWFsLW92ZXJsYXkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTAwNTtcbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjg1KTtcbiAgb3ZlcmZsb3cteTogYXV0bzsgfVxuXG4ucmV2ZWFsIHtcbiAgei1pbmRleDogMTAwNjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAxcmVtO1xuICBib3JkZXI6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMTAwcHg7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG92ZXJmbG93LXk6IGF1dG87IH1cbiAgW2RhdGEtd2hhdGlucHV0PSdtb3VzZSddIC5yZXZlYWwge1xuICAgIG91dGxpbmU6IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDA7IH0gfVxuICAucmV2ZWFsIC5jb2x1bW4ge1xuICAgIG1pbi13aWR0aDogMDsgfVxuICAucmV2ZWFsID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA2MDBweDtcbiAgICAgIG1heC13aWR0aDogMTAxLjI1cmVtOyB9IH1cbiAgLnJldmVhbC5jb2xsYXBzZSB7XG4gICAgcGFkZGluZzogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwudGlueSB7XG4gICAgICB3aWR0aDogMzAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5yZXZlYWwuc21hbGwge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogMTAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucmV2ZWFsLmxhcmdlIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMS4yNXJlbTsgfSB9XG4gIC5yZXZlYWwuZnVsbCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yZXZlYWwge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBtaW4taGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwOyB9IH1cbiAgLnJldmVhbC53aXRob3V0LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiBmaXhlZDsgfVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cblxuLmZsb2F0LWNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1hcmdpbi1sZWZ0OiBhdXRvOyB9XG5cbi5jbGVhcmZpeDo6YmVmb3JlLCAuY2xlYXJmaXg6OmFmdGVyIHtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNvbnRlbnQ6ICcgJztcbiAgZmxleC1iYXNpczogMDtcbiAgb3JkZXI6IDE7IH1cblxuLmNsZWFyZml4OjphZnRlciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5hbGlnbi1sZWZ0IHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodCB7XG4gIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7IH1cblxuLmFsaWduLWNlbnRlciB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5hbGlnbi1qdXN0aWZ5IHtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG5cbi5hbGlnbi1zcGFjZWQge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDsgfVxuXG4uYWxpZ24tbGVmdC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG5cbi5hbGlnbi1yaWdodC52ZXJ0aWNhbC5tZW51ID4gbGkgPiBhIHtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDsgfVxuXG4uYWxpZ24tY2VudGVyLnZlcnRpY2FsLm1lbnUgPiBsaSA+IGEge1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uYWxpZ24tdG9wIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH1cblxuLmFsaWduLXNlbGYtdG9wIHtcbiAgYWxpZ24tc2VsZjogZmxleC1zdGFydDsgfVxuXG4uYWxpZ24tYm90dG9tIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1zZWxmLWJvdHRvbSB7XG4gIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9XG5cbi5hbGlnbi1taWRkbGUge1xuICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG5cbi5hbGlnbi1zZWxmLW1pZGRsZSB7XG4gIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuXG4uYWxpZ24tc3RyZXRjaCB7XG4gIGFsaWduLWl0ZW1zOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1zZWxmLXN0cmV0Y2gge1xuICBhbGlnbi1zZWxmOiBzdHJldGNoOyB9XG5cbi5hbGlnbi1jZW50ZXItbWlkZGxlIHtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4uc21hbGwtb3JkZXItMSB7XG4gIG9yZGVyOiAxOyB9XG5cbi5zbWFsbC1vcmRlci0yIHtcbiAgb3JkZXI6IDI7IH1cblxuLnNtYWxsLW9yZGVyLTMge1xuICBvcmRlcjogMzsgfVxuXG4uc21hbGwtb3JkZXItNCB7XG4gIG9yZGVyOiA0OyB9XG5cbi5zbWFsbC1vcmRlci01IHtcbiAgb3JkZXI6IDU7IH1cblxuLnNtYWxsLW9yZGVyLTYge1xuICBvcmRlcjogNjsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAubWVkaXVtLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC5tZWRpdW0tb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLm1lZGl1bS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAubWVkaXVtLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC5tZWRpdW0tb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLm1lZGl1bS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXJnZS1vcmRlci0xIHtcbiAgICBvcmRlcjogMTsgfVxuICAubGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLmxhcmdlLW9yZGVyLTMge1xuICAgIG9yZGVyOiAzOyB9XG4gIC5sYXJnZS1vcmRlci00IHtcbiAgICBvcmRlcjogNDsgfVxuICAubGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLmxhcmdlLW9yZGVyLTYge1xuICAgIG9yZGVyOiA2OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLW9yZGVyLTEge1xuICAgIG9yZGVyOiAxOyB9XG4gIC54bGFyZ2Utb3JkZXItMiB7XG4gICAgb3JkZXI6IDI7IH1cbiAgLnhsYXJnZS1vcmRlci0zIHtcbiAgICBvcmRlcjogMzsgfVxuICAueGxhcmdlLW9yZGVyLTQge1xuICAgIG9yZGVyOiA0OyB9XG4gIC54bGFyZ2Utb3JkZXItNSB7XG4gICAgb3JkZXI6IDU7IH1cbiAgLnhsYXJnZS1vcmRlci02IHtcbiAgICBvcmRlcjogNjsgfSB9XG5cbi5mbGV4LWNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7IH1cblxuLmZsZXgtY2hpbGQtYXV0byB7XG4gIGZsZXg6IDEgMSBhdXRvOyB9XG5cbi5mbGV4LWNoaWxkLWdyb3cge1xuICBmbGV4OiAxIDAgYXV0bzsgfVxuXG4uZmxleC1jaGlsZC1zaHJpbmsge1xuICBmbGV4OiAwIDEgYXV0bzsgfVxuXG4uZmxleC1kaXItcm93IHtcbiAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4uZmxleC1kaXItcm93LXJldmVyc2Uge1xuICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cblxuLmZsZXgtZGlyLWNvbHVtbiB7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cblxuLmZsZXgtZGlyLWNvbHVtbi1yZXZlcnNlIHtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZWRpdW0tZmxleC1jb250YWluZXIge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLm1lZGl1bS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5tZWRpdW0tZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICBmbGV4OiAwIDEgYXV0bzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubWVkaXVtLWZsZXgtZGlyLXJvdy1yZXZlcnNlIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4ge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47IH1cbiAgLm1lZGl1bS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWF1dG8ge1xuICAgIGZsZXg6IDEgMSBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLWdyb3cge1xuICAgIGZsZXg6IDEgMCBhdXRvOyB9XG4gIC5sYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLmxhcmdlLWZsZXgtZGlyLXJvdyB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuICAubGFyZ2UtZmxleC1kaXItcm93LXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICAubGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC5sYXJnZS1mbGV4LWRpci1jb2x1bW4tcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAueGxhcmdlLWZsZXgtY29udGFpbmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4OyB9XG4gIC54bGFyZ2UtZmxleC1jaGlsZC1hdXRvIHtcbiAgICBmbGV4OiAxIDEgYXV0bzsgfVxuICAueGxhcmdlLWZsZXgtY2hpbGQtZ3JvdyB7XG4gICAgZmxleDogMSAwIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1yb3cge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7IH1cbiAgLnhsYXJnZS1mbGV4LWRpci1yb3ctcmV2ZXJzZSB7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItY29sdW1uIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyB9XG4gIC54bGFyZ2UtZmxleC1kaXItY29sdW1uLXJldmVyc2Uge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG5cbi5oaWRlIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXNtYWxsLW9ubHkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDBlbSksIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc2hvdy1mb3Itc21hbGwtb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuc2hvdy1mb3ItbWVkaXVtIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLW1lZGl1bS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5zaG93LWZvci1tZWRpdW0tb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmhpZGUtZm9yLWxhcmdlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5oaWRlLWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zaG93LWZvci1sYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5oaWRlLWZvci14bGFyZ2Uge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgLnNob3ctZm9yLXhsYXJnZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkgYW5kIChtYXgtd2lkdGg6IDg5Ljk5ODc1ZW0pIHtcbiAgLmhpZGUtZm9yLXhsYXJnZS1vbmx5IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zaG93LWZvci14bGFyZ2Utb25seSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLnNob3ctZm9yLXNyLFxuLnNob3ctb24tZm9jdXMge1xuICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDFweCAhaW1wb3J0YW50O1xuICBoZWlnaHQ6IDFweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgY2xpcDogcmVjdCgwLCAwLCAwLCAwKSAhaW1wb3J0YW50O1xuICB3aGl0ZS1zcGFjZTogbm93cmFwICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50OyB9XG5cbi5zaG93LW9uLWZvY3VzOmFjdGl2ZSwgLnNob3ctb24tZm9jdXM6Zm9jdXMge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBjbGlwOiBhdXRvICFpbXBvcnRhbnQ7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWwgIWltcG9ydGFudDsgfVxuXG4uc2hvdy1mb3ItbGFuZHNjYXBlLFxuLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAuaGlkZS1mb3ItcG9ydHJhaXQge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9IH1cblxuLmhpZGUtZm9yLWxhbmRzY2FwZSxcbi5zaG93LWZvci1wb3J0cmFpdCB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgIC5zaG93LWZvci1wb3J0cmFpdCB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9IH1cblxuaWZyYW1lIHtcbiAgYm9yZGVyOiAwOyB9XG5cbi5yZXNpemUtYW5pbWF0aW9uLXN0b3BwZXIgKjpub3QoLmNvb2tpZS1iYW5uZXIpIHtcbiAgYW5pbWF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG4gIHRyYW5zaXRpb246IG5vbmUgIWltcG9ydGFudDsgfVxuXG46OnNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbmJvZHkge1xuICBhbmltYXRpb24tbmFtZTogZmFkZS1pbjtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjRzO1xuICBhbmltYXRpb24tZGVsYXk6IC4xNXM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYmFja3dhcmRzOyB9XG5cbi5jaGlsZC1uby1idWxsZXQgdWwsIC5jaGlsZC1uby1idWxsZXQgb2wge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuXG4uY2hpbGQtbGlzdC1zaW1wbGUgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cblxuLmNoaWxkLWxpc3Qtc2ltcGxlIDpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5odG1sIHtcbiAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7IH1cblxuLmFycm93LWxpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lOyB9XG4gIC5hcnJvdy1saXN0IGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgLmFycm93LWxpc3QgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzOHJlbTsgfVxuICAgIC5hcnJvdy1saXN0IGxpIGEge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICAuYXJyb3ctbGlzdCBsaSBhOmhvdmVyIHtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICAgLmFycm93LWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IGNhbGMoMTAwJSArIDAuNzVyZW0pO1xuICAgICAgdG9wOiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NoZXZyb24tcmlnaHQuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVyZW07XG4gICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuYXJyb3ctbGlzdCBsaTo6YmVmb3JlIHtcbiAgICAgICAgICBoZWlnaHQ6IDAuODc1cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IDAuODc1cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogMC44NzVyZW07IH0gfVxuXG5hOmZvY3VzLFxuYnV0dG9uOmZvY3VzLFxuLmJ0bjpmb2N1cyxcbmlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogMnB4IGRvdHRlZDsgfVxuXG5hOmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgY29sb3I6IGluaGVyaXQ7IH1cblxuYnV0dG9uOmZvY3VzLFxuLmJ0bjpmb2N1cyxcbmlucHV0OmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDVweDsgfVxuXG4udGV4dC1oaWdobGlnaHQge1xuICBjb2xvcjogI0VCNUU5NDtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmJyZWFrLW1lZGl1bSB7XG4gIGRpc3BsYXk6IGlubGluZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5icmVhay1tZWRpdW0ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4uYnJlYWstbGFyZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYnJlYWstbGFyZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuXG4ucGFuZWwtbS0xIHtcbiAgbWFyZ2luOiA1cmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wYW5lbC1tLTEge1xuICAgICAgbWFyZ2luOiA2LjI1cmVtIDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhbmVsLW0tMSB7XG4gICAgICBtYXJnaW46IDguMzEyNXJlbSAwOyB9IH1cblxuLnBhbmVsLXAtMSB7XG4gIHBhZGRpbmc6IDVyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhbmVsLXAtMSB7XG4gICAgICBwYWRkaW5nOiA2LjI1cmVtIDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnBhbmVsLXAtMSB7XG4gICAgICBwYWRkaW5nOiA4LjMxMjVyZW0gMDsgfSB9XG5cbi5wYW5lbC1tLTIge1xuICBtYXJnaW46IDMuNzVyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhbmVsLW0tMiB7XG4gICAgICBtYXJnaW46IDcuMjVyZW0gMDsgfSB9XG5cbi5wYW5lbC1wLTIge1xuICBwYWRkaW5nOiAzLjc1cmVtIDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wYW5lbC1wLTIge1xuICAgICAgcGFkZGluZzogNy4yNXJlbSAwOyB9IH1cblxuLnBhbmVsLW0tc21hbGwge1xuICBtYXJnaW46IDMuNzVyZW0gMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnBhbmVsLW0tc21hbGwge1xuICAgICAgbWFyZ2luOiA1LjMxMjVyZW0gMDsgfSB9XG5cbi5wYW5lbC1wLXNtYWxsIHtcbiAgcGFkZGluZzogMy43NXJlbSAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucGFuZWwtcC1zbWFsbCB7XG4gICAgICBwYWRkaW5nOiA1LjMxMjVyZW0gMDsgfSB9XG5cbi5saXN0LXNpbXBsZTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4ubGlzdC1zaW1wbGUgbGkge1xuICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH1cbiAgLmxpc3Qtc2ltcGxlIGxpOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmxpc3Qtc2ltcGxlIGEge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4uaW5uZXIge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogODQlO1xuICBtYXgtd2lkdGg6IDEwMS4yNXJlbTsgfVxuXG5bZGF0YS1zY3JvbGxdIHtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcywgdHJhbnNmb3JtIDFzOyB9XG5cbltkYXRhLXNjcm9sbD1cImluXCJdIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9XG5cbltkYXRhLXNjcm9sbD1cIm91dFwiXSB7XG4gIG9wYWNpdHk6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KTsgfVxuXG4uZmFkZS1pbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlLWluO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEuNHM7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE5LCAxLCAwLjIyLCAxKTsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGUtaW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLmZhZGUtdXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZS11cDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjRzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7IH1cblxuQGtleWZyYW1lcyBmYWRlLXVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzBweCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cblxudGFibGUsIHRoLCB0ZCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIHBhZGRpbmc6IDFyZW07XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7IH1cblxuLmJnLW5hdnkge1xuICBiYWNrZ3JvdW5kOiAjMTUxRjM1OyB9XG5cbi5iZy1waW5rIHtcbiAgYmFja2dyb3VuZDogI0VCNUU5NDsgfVxuXG4uYmctcHVycGxlIHtcbiAgYmFja2dyb3VuZDogIzRDNDM5NDsgfVxuXG4uYmctcmVkIHtcbiAgYmFja2dyb3VuZDogI0U2NDU1MDsgfVxuXG4uYmctYmx1ZSB7XG4gIGJhY2tncm91bmQ6ICM0MUE0OTQ7IH1cblxuLmJnLXllbGxvdyB7XG4gIGJhY2tncm91bmQ6ICNGREM0MDA7IH1cblxuLmJnLW9yYW5nZSB7XG4gIGJhY2tncm91bmQ6ICNFNjg4MUU7IH1cblxuLmJnLWdyYXkge1xuICBiYWNrZ3JvdW5kOiAjRjVGNUY1OyB9XG5cbipbY2xhc3MqPVwiYmctXCJdLmludmVydCB7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtNjIuNXJlbTtcbiAgdG9wOiBhdXRvO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG5mb3JtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbmlucHV0LmlucHV0LWxhcmdlIHtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gIHBhZGRpbmctcmlnaHQ6IDMuMTI1cmVtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgaW5wdXQuaW5wdXQtbGFyZ2Uge1xuICAgICAgaGVpZ2h0OiAzLjEyNXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgaW5wdXQuaW5wdXQtbGFyZ2Uge1xuICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIGlucHV0LmlucHV0LWxhcmdlIHtcbiAgICAgIGhlaWdodDogNi4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07IH0gfVxuICBpbnB1dC5pbnB1dC1sYXJnZTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMTUxRjM1OyB9XG5cbmlucHV0IHtcbiAgaGVpZ2h0OiAzLjYyNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07IH1cblxuaW5wdXQubm8tYm9yZGVyIHtcbiAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4uZmllbGRzZXQge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC05OTk5cHg7IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWwsXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0QTRBNEE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA0cHg7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxcmVtO1xuICBoZWlnaHQ6IDFyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0MUE0OTQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICBvcGFjaXR5OiAwOyB9XG5cblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgb3BhY2l0eTogMTsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDc0LCA3NCwgNzQsIDAuNSk7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC41KTsgfVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjY2M7IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCArIGxhYmVsIHtcbiAgY29sb3I6ICNhYWE7IH1cblxuW3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkOmZvY3VzICsgbGFiZWw6YmVmb3JlLFxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpOmZvY3VzICsgbGFiZWw6YmVmb3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwMDAwMDsgfVxuXG5oMiwgLmgyIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgaDIsIC5oMiB7XG4gICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuXG5oMywgLmgzIHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoMywgLmgzIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuXG5oNCwgLmg0IHtcbiAgZm9udC1zaXplOiAxcmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoNCwgLmg0IHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NXJlbTsgfSB9XG5cbmg1LCAuaDUge1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBoNSwgLmg1IHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtOyB9IH1cblxuaDYsIC5oNiB7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuXG4uaDEsXG4uaDIsXG4uaDMsXG4uaDQsXG4uaDUsXG4uaDYge1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgbGluZS1oZWlnaHQ6IDEwMCU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgbWFpbiBwLCBtYWluIHVsIHtcbiAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG5wLCAucCB7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBwLCAucCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBwIGEsIC5wIGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbi50ZXh0LWJvZHkge1xuICBmb250LXNpemU6IDFyZW07XG4gIGNvbG9yOiAjMTUxRjM1O1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC50ZXh0LWJvZHkge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cblxucC50ZXh0LWxhcmdlIHtcbiAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICBwLnRleHQtbGFyZ2Uge1xuICAgICAgZm9udC1zaXplOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIHAudGV4dC1sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDEuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICBwLnRleHQtbGFyZ2Uge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cblxucCArIGgyLFxucCArIGgzLFxucCArIGg0LFxucCArIGg1LFxucCArIGg2IHtcbiAgbWFyZ2luLXRvcDogMi41cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICBwICsgaDIsXG4gICAgcCArIGgzLFxuICAgIHAgKyBoNCxcbiAgICBwICsgaDUsXG4gICAgcCArIGg2IHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuXG4uZGlzcGxheS0xLFxuLmRpc3BsYXktMixcbi5kaXNwbGF5LTMsXG4uZGlzcGxheS00LFxuLmRpc3BsYXktNSxcbi5kaXNwbGF5LTYge1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7IH1cblxuLmRpc3BsYXktMSB7XG4gIGZvbnQtc2l6ZTogMy43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kaXNwbGF5LTEge1xuICAgICAgZm9udC1zaXplOiA0LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5kaXNwbGF5LTEge1xuICAgICAgZm9udC1zaXplOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5kaXNwbGF5LTEge1xuICAgICAgZm9udC1zaXplOiA4LjEyNXJlbTsgfSB9XG5cbi5kaXNwbGF5LTIge1xuICBmb250LXNpemU6IDMuMTI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kaXNwbGF5LTIge1xuICAgICAgZm9udC1zaXplOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5kaXNwbGF5LTIge1xuICAgICAgZm9udC1zaXplOiA1LjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmRpc3BsYXktMiB7XG4gICAgICBmb250LXNpemU6IDYuMjVyZW07IH0gfVxuXG4uZGlzcGxheS0zIHtcbiAgZm9udC1zaXplOiAyLjVyZW07XG4gIGxpbmUtaGVpZ2h0OiAxMTMuMSU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpc3BsYXktMyB7XG4gICAgICBmb250LXNpemU6IDMuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5kaXNwbGF5LTMge1xuICAgICAgZm9udC1zaXplOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5kaXNwbGF5LTMge1xuICAgICAgZm9udC1zaXplOiA1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZGlzcGxheS0zIHtcbiAgICAgIGZvbnQtc2l6ZTogNS42MjVyZW07IH0gfVxuXG4uZGlzcGxheS00IHtcbiAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDg3LjYlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpc3BsYXktNCB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZGlzcGxheS00IHtcbiAgICAgIGZvbnQtc2l6ZTogMy4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmRpc3BsYXktNCB7XG4gICAgICBmb250LXNpemU6IDQuNjI1cmVtOyB9IH1cblxuLmRpc3BsYXktNSB7XG4gIGZvbnQtc2l6ZTogMS43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kaXNwbGF5LTUge1xuICAgICAgZm9udC1zaXplOiAyLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZGlzcGxheS01IHtcbiAgICAgIGZvbnQtc2l6ZTogMy42MjVyZW07IH0gfVxuXG4uZGlzcGxheS02IHtcbiAgZm9udC1zaXplOiAxLjM3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5kaXNwbGF5LTYge1xuICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5kaXNwbGF5LTYge1xuICAgICAgZm9udC1zaXplOiAzLjM3NXJlbTsgfSB9XG5cbi5pbnRybyB7XG4gIGZvbnQtc2l6ZTogMS42MjVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICBsaW5lLWhlaWdodDogMTE4LjclO1xuICBmb250LXdlaWdodDogNjAwO1xuICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7IH1cbiAgLmludHJvOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuaW50cm8ge1xuICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5pbnRybyB7XG4gICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgIG1heC13aWR0aDogNTIuMTI1cmVtO1xuICAgICAgbWFyZ2luOiBhdXRvOyB9IH1cblxuLnRpdGxlLWFuaW1hdGUgLndvcmQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cblxuLmRhdGUge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6ICNFQjVFOTQ7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbmJsb2NrcXVvdGUge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlci1sZWZ0OiAwOyB9XG4gIGJsb2NrcXVvdGUgcCB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgYmxvY2txdW90ZSBjaXRlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsOyB9XG4gICAgYmxvY2txdW90ZSBjaXRlOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBub25lOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5tZXRhLXRleHQge1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4yODtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLm1ldGEtdGV4dCB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgLm1ldGEtdGV4dCB7XG4gICAgZm9udC1zaXplOiAxLjU2MjVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAubWV0YS10ZXh0IHtcbiAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cblxuLmJhbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMztcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5iYW5uZXIuYmctbmF2eSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxRjM1OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmFubmVyLmJnLXBpbmsge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJhbm5lci5iZy1wdXJwbGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzRDNDM5NDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJhbm5lci5iZy1yZWQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U2NDU1MDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJhbm5lci5iZy1ibHVlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5iYW5uZXIuYmcteWVsbG93IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5iYW5uZXJbY2xhc3MqPSdiZy0nXSAuc2VhcmNoLXRvZ2dsZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24td2hpdGUuc3ZnXCIpOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10gLm1lbnUtdG9nZ2xlOjpiZWZvcmUsIC5iYW5uZXJbY2xhc3MqPSdiZy0nXSAubWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10gLm1lbnUtdG9nZ2xlIHNwYW46OmJlZm9yZSwgLmJhbm5lcltjbGFzcyo9J2JnLSddIC5tZW51LXRvZ2dsZSBzcGFuOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10uc2VhcmNoLW9wZW4gLm1lbnUtdG9nZ2xlOjpiZWZvcmUsIC5iYW5uZXJbY2xhc3MqPSdiZy0nXS5zZWFyY2gtb3BlbiAubWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10uc2VhcmNoLW9wZW4gLm1lbnUtdG9nZ2xlIHNwYW46OmJlZm9yZSwgLmJhbm5lcltjbGFzcyo9J2JnLSddLnNlYXJjaC1vcGVuIC5tZW51LXRvZ2dsZSBzcGFuOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10uc2VhcmNoLW9wZW4gLnNlYXJjaC10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmJhbm5lcltjbGFzcyo9J2JnLSddLm1lbnUtb3BlbiAubWVudS10b2dnbGU6OmJlZm9yZSwgLmJhbm5lcltjbGFzcyo9J2JnLSddLm1lbnUtb3BlbiAubWVudS10b2dnbGU6OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH1cbiAgICAuYmFubmVyW2NsYXNzKj0nYmctJ10ubWVudS1vcGVuIC5tZW51LXRvZ2dsZSBzcGFuOjpiZWZvcmUsIC5iYW5uZXJbY2xhc3MqPSdiZy0nXS5tZW51LW9wZW4gLm1lbnUtdG9nZ2xlIHNwYW46OmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5iYW5uZXJbY2xhc3MqPSdiZy0nXS5tZW51LW9wZW4gLnNlYXJjaC10b2dnbGUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4OS45OTg3NWVtKSB7XG4gICAgLmJhbm5lciB7XG4gICAgICBwYWRkaW5nOiAxLjI1cmVtIDA7XG4gICAgICBtaW4taGVpZ2h0OiA0LjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYmFubmVyIHtcbiAgICAgIHBhZGRpbmc6IDIuODc1cmVtIDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMDsgfVxuICAgICAgLmJhbm5lcjo6YmVmb3JlLCAuYmFubmVyOjphZnRlciB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICBjb250ZW50OiAnICc7XG4gICAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAuYmFubmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLmJhbm5lci5pcy13aGl0ZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC40KSAxNC4wNiUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmFubmVyLmlzLXdoaXRlIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH0gfVxuICAuYmFubmVyX19pbm5lciB7XG4gICAgbWF4LXdpZHRoOiBub25lOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJhbm5lcl9faW5uZXI6OmJlZm9yZSwgLmJhbm5lcl9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIC5iYW5uZXJfX2lubmVyOjphZnRlciB7XG4gICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgLmJhbm5lcl9fbG9nbyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG4gICAgY29sb3I6ICMxNTFGMzU7XG4gICAgdG9wOiAtMS44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODkuOTk4NzVlbSkge1xuICAgICAgLmJhbm5lcl9fbG9nbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJhbm5lcl9fbG9nbyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IGNhbGMoLTUuNXJlbSAtIDNweCk7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB0b3A6IC0yLjg3NXJlbTsgfSB9XG4gICAgLmJhbm5lcl9fbG9nbzpmb2N1cyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5pcy13aGl0ZSAuYmFubmVyX19sb2dvIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuaXMtd2hpdGUgLmJhbm5lcl9fbG9nbyB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC5iYW5uZXJfX2xpbmtzIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvIDIuNXJlbTtcbiAgICAgIHdpZHRoOiA4NCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmJhbm5lcl9fbGlua3Mge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBwYWRkaW5nOiAwLjMxMjVyZW0gOCUgMC40Mzc1cmVtIDEuODEyNXJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICMxMDEwMTA7IH1cbiAgICAgIC5pcy13aGl0ZSAuYmFubmVyX19saW5rcyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7IH0gfVxuICAuYmFubmVyX19saW5rcyB1bCB7XG4gICAgbWFyZ2luOiAwOyB9XG4gICAgLmJhbm5lcl9fbGlua3MgdWwgbGkge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5iYW5uZXJfX2xpbmtzIHVsIGxpIHtcbiAgICAgICAgICBtYXJnaW46IDAgMS4yNXJlbSAwIDA7IH0gfVxuICAgICAgLmJhbm5lcl9fbGlua3MgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAuYmFubmVyX19saW5rcyBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmFubmVyX19saW5rcyBhIHtcbiAgICAgICAgY29sb3I6ICMxNTFGMzU7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgICAgICAuYmFubmVyX19saW5rcyBhOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDsgfVxuICAgICAgICAuaXMtd2hpdGUgLmJhbm5lcl9fbGlua3MgYSB7XG4gICAgICAgICAgY29sb3I6ICMxNTFGMzU7IH1cbiAgICAgICAgICAuaXMtd2hpdGUgLmJhbm5lcl9fbGlua3MgYTpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogIzM0ODM3ODtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLmJhbm5lcl9fbWVudSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogNy4xODc1cmVtIDAgMS4yNXJlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDEuM3MgY3ViaWMtYmV6aWVyKDEsIDAsIDAsIDEpOyB9XG4gICAgICAuYmFubmVyX19tZW51LmlzLWFjdGl2ZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC5iYW5uZXJfX21lbnUge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGJveC1zaGFkb3c6IC0zMHB4IDM0cHggMHB4IHJnYmEoMCwgMCwgMCwgMC4yNSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTIwJSk7XG4gICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5iYW5uZXJfX21lbnUge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgLmJhbm5lcl9fc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDE7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgICAuYmFubmVyX19zZWFyY2gge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMS4zcyBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSk7IH1cbiAgICAgICAgLmJhbm5lcl9fc2VhcmNoLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYmFubmVyX19zZWFyY2gge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCB0cmFuc2Zvcm0gMHMgMC4yNXM7IH1cbiAgICAgICAgLmJhbm5lcl9fc2VhcmNoLmlzLWFjdGl2ZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgdHJhbnNmb3JtIDBzOyB9IH1cblxuLmNvbnRlbnQtdy1zaWRlYmFyIHtcbiAgbWFyZ2luOiA0LjM3NXJlbSAwOyB9XG5cbi5zaXRlLWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLnNpdGUtZm9vdGVyX19uYXYge1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRjBGNEY1OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnNpdGUtZm9vdGVyX19uYXYge1xuICAgICAgICBwYWRkaW5nOiA3LjMxMjVyZW0gMDsgfSB9XG4gICAgLnNpdGUtZm9vdGVyX19uYXYgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuc2l0ZS1mb290ZXJfX25hdiB1bCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5zaXRlLWZvb3RlciBoMiB7XG4gICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBsaW5lLWhlaWdodDogMS43NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5zaXRlLWZvb3RlciBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIC5zaXRlLWZvb3RlciBhIHtcbiAgICBjb2xvcjogIzJFMkUyRTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7XG4gICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiOyB9XG4gICAgLnNpdGUtZm9vdGVyIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM0MUE0OTQ7IH1cbiAgLnNpdGUtZm9vdGVyX19hY2NyZWRpdGF0aW9ucyB7XG4gICAgcGFkZGluZzogMi41cmVtIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnNpdGUtZm9vdGVyX19hY2NyZWRpdGF0aW9ucyB7XG4gICAgICAgIHBhZGRpbmc6IDMuNzVyZW0gMCAyLjVyZW07IH0gfVxuICAuc2l0ZS1mb290ZXJfX2xpbmtzIHtcbiAgICBwYWRkaW5nOiAwIDAgMy4xMjVyZW07IH1cbiAgICAuc2l0ZS1mb290ZXJfX2xpbmtzIHVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC42ODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLnNpdGUtZm9vdGVyX19saW5rcyB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtOyB9XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgICAgLnNpdGUtZm9vdGVyX19saW5rcyB1bCBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW46IDAgMS44NzVyZW0gMC42MjVyZW0gMDsgfSB9XG4gICAgICAgIC5zaXRlLWZvb3Rlcl9fbGlua3MgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5ub3RpY2VTdHlsZSB7XG4gIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDsgfVxuXG4uYWNjb3JkaW9uLXRpdGxlIHtcbiAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICBib3JkZXItdG9wOiAwO1xuICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjhjY2QxOyB9XG4gIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICBjb2xvcjogI0VCNUU5NDtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDIuNXB4KTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hY2NvcmRpb24tdGl0bGU6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0xLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hY2NvcmRpb24tdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxLjU2MjVyZW07XG4gICAgICBwYWRkaW5nOiAxLjU2MjVyZW0gMi41cmVtOyB9IH1cblxuLmFjY29yZGlvbi1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDEuODc1cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogMS44NzVyZW07XG4gIGJvcmRlci1sZWZ0OiAwO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjhjY2QxO1xuICB3b3JkLWJyZWFrOiBicmVhay13b3JkOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFjY29yZGlvbi1jb250ZW50IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi41cmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgLmFjY29yZGlvbi1jb250ZW50IHA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAuYWNjb3JkaW9uLWNvbnRlbnQgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDAuOTM3NXJlbTsgfVxuICAgIC5hY2NvcmRpb24tY29udGVudCB1bCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gICAgICAuYWNjb3JkaW9uLWNvbnRlbnQgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAjRUI1RTk0OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmFjY29yZGlvbi1ibG9jayB7XG4gICAgbWFyZ2luLXRvcDogMTIuNDM3NXJlbTsgfSB9XG5cbi5hY2NyZWRpdGF0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFjY3JlZGl0YXRpb25zIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIG1hcmdpbjogMCAtMC42MjVyZW07IH0gfVxuICAuYWNjcmVkaXRhdGlvbnMgPiAqIHtcbiAgICB3aWR0aDogNTAlO1xuICAgIHBhZGRpbmc6IDEwcHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAyOC43NWVtKSB7XG4gICAgICAuYWNjcmVkaXRhdGlvbnMgPiAqIHtcbiAgICAgICAgd2lkdGg6IDIwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hY2NyZWRpdGF0aW9ucyA+ICoge1xuICAgICAgICB3aWR0aDogMTAlOyB9IH1cblxuLmFubm91bmNlbWVudHMge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYW5ub3VuY2VtZW50cyB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfVxuICAgICAgLmFubm91bmNlbWVudHM6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogOCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmFubm91bmNlbWVudHMge1xuICAgICAgcGFkZGluZy10b3A6IDUuNjI1cmVtOyB9IH1cbiAgLmFubm91bmNlbWVudHNfX2lubmVyIHtcbiAgICBtYXgtd2lkdGg6IDE2MjBweDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19saXN0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19pbWFnZSB7XG4gICAgICB3aWR0aDogODMuMzMzMzMlOyB9IH1cbiAgLmFubm91bmNlbWVudHNfX2ltYWdlIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hbm5vdW5jZW1lbnRzX19pbWFnZSArIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAyLjE4NzVyZW07IH1cbiAgLmFubm91bmNlbWVudHNfX3RpdGxlIHtcbiAgICBtYXgtd2lkdGg6IDMwLjYyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuYW5ub3VuY2VtZW50c19fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmFubm91bmNlbWVudHNfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjM3NXJlbTsgfSB9XG4gIC5hbm5vdW5jZW1lbnRzX190ZXh0ID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5hbm5vdW5jZW1lbnRzX190ZXh0IHAge1xuICAgIG1heC13aWR0aDogMzEuMjVyZW07IH1cbiAgLmFubm91bmNlbWVudHNfX2NhcmQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07IH1cbiAgICAuYW5ub3VuY2VtZW50c19fY2FyZCA+ICoge1xuICAgICAgZmxleDogMSAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkIHtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG4gICAgICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1mbGlwcGVkIHtcbiAgICAgICAgICB3aWR0aDogNDEuNjY2NjclOyB9XG4gICAgICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1ibG9jayB7XG4gICAgICAgICAgd2lkdGg6IDI1JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFubm91bmNlbWVudHNfX2NhcmQ6bnRoLW9mLXR5cGUoMSkgLmFubm91bmNlbWVudHNfX3RleHQ6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IC0xMDAlO1xuICAgICAgcmlnaHQ6IC0xMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgbWFyZ2luLXRvcDogLTIuMTg3NXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkOm50aC1vZi10eXBlKDEpIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYW5ub3VuY2VtZW50c19fY2FyZDpudGgtb2YtdHlwZSgxKSAuYW5ub3VuY2VtZW50c19fdGV4dCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmFubm91bmNlbWVudHNfX2NhcmQ6bnRoLW9mLXR5cGUoMSkgLmFubm91bmNlbWVudHNfX3RleHQge1xuICAgICAgcGFkZGluZy1yaWdodDogNi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmFubm91bmNlbWVudHNfX2NhcmQ6bnRoLW9mLXR5cGUoMSkgLmFubm91bmNlbWVudHNfX2ltYWdlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMjguNTcxNDMlO1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkOm50aC1vZi10eXBlKDEpIC5hbm5vdW5jZW1lbnRzX19pbWFnZSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmFubm91bmNlbWVudHNfX2NhcmQ6bnRoLW9mLXR5cGUoMSkgLmFubm91bmNlbWVudHNfX2ltYWdlIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1mbGlwcGVkIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICAgIG9yZGVyOiAxO1xuICAgICAgcGFkZGluZy1yaWdodDogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1mbGlwcGVkIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuYW5ub3VuY2VtZW50c19fY2FyZC0tZmxpcHBlZCAuYW5ub3VuY2VtZW50c19fdGV4dCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiA2LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYW5ub3VuY2VtZW50c19fY2FyZC0tZmxpcHBlZCAuYW5ub3VuY2VtZW50c19faW1hZ2Uge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDsgfVxuICAgICAgLmFubm91bmNlbWVudHNfX2NhcmQtLWZsaXBwZWQgLmFubm91bmNlbWVudHNfX2ltYWdlOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7IH0gfVxuICAuYW5ub3VuY2VtZW50c19fY2FyZC0tYmxvY2sgLmFubm91bmNlbWVudHNfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1ibG9jayAuYW5ub3VuY2VtZW50c19fdGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC0zLjc1cmVtO1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9XG4gICAgICAgIC5hbm5vdW5jZW1lbnRzX19jYXJkLS1ibG9jayAuYW5ub3VuY2VtZW50c19fdGV4dDpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHJpZ2h0OiAtMTYuODc1cmVtO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmFubm91bmNlbWVudHNfX2NhcmQtLWJsb2NrIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTUuNjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuYW5ub3VuY2VtZW50c19fY2FyZC0tYmxvY2sgLmFubm91bmNlbWVudHNfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAzLjc1cmVtIDMuMTI1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmFubm91bmNlbWVudHNfX2NhcmQtLWJsb2NrIC5hbm5vdW5jZW1lbnRzX190ZXh0IHtcbiAgICAgICAgcGFkZGluZzogNXJlbSA1cmVtOyB9IH1cbiAgLmFubm91bmNlbWVudHNfX2NhcmQtLWJsb2NrIC5hbm5vdW5jZW1lbnRzX190aXRsZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmFubm91bmNlbWVudHMgLnNsaWNrLWxpc3Qge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5hbm5vdW5jZW1lbnRzIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cblxuLmF6IHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW46IC0wLjVyZW07XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuYXoge1xuICAgICAgZGlzcGxheTogbm9uZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmF6LmlzLWFjdGl2ZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmF6IHtcbiAgICAgIG1hcmdpbjogLTAuOTM3NXJlbTsgfSB9XG4gIC5heiBsaSB7XG4gICAgbWFyZ2luOiAwLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuYXogbGkge1xuICAgICAgICBtYXJnaW46IDAuOTM3NXJlbTsgfSB9XG4gICAgLmF6IGxpIGEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB3aWR0aDogNC4wNjI1cmVtO1xuICAgICAgaGVpZ2h0OiA0LjA2MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAgIC5heiBsaSBhIHtcbiAgICAgICAgICB3aWR0aDogNS45Mzc1cmVtO1xuICAgICAgICAgIGhlaWdodDogNS45Mzc1cmVtOyB9IH1cblxuLmJsb2NrIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDIuNXJlbSAxLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5ibG9jazpmaXJzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXRvcDogMDsgfVxuICAgIC5ibG9jazphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogNjBweDtcbiAgICAgIHJpZ2h0OiA2MHB4O1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjYjhjY2QxOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuYmxvY2sge1xuICAgICAgcGFkZGluZzogMi41cmVtIDEuODc1cmVtO1xuICAgICAgYWxpZ24tc2VsZjogc3RyZXRjaDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gICAgICAuYmxvY2s6bnRoLWxhc3QtY2hpbGQoLW4rMykge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ibG9jayB7XG4gICAgICBwYWRkaW5nOiA0LjM3NXJlbSAzLjEyNXJlbTsgfSB9XG4gIC5ibG9jayBoMyB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5ibG9jayBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuYmxvY2sgaDMge1xuICAgICAgICBjb2xvcjogI2ZmZmZmZjsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmJsb2NrIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgIC5ibG9jayBoMyB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmJsb2NrIHAge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH0gfVxuICAuYmxvY2sgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5ibG9jay1saXN0IHtcbiAgbWFyZ2luLWJvdHRvbTogLTEuMjVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5ibG9jay1saXN0IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IC0yLjVyZW07IH0gfVxuICAuYmxvY2stbGlzdF9faXRlbSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5ibG9jay1saXN0X19pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLmJsb2NrLWxpc3QgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmJsb2NrLWxpc3QgYSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAgIC5ibG9jay1saXN0IGE6aG92ZXIgaDMge1xuICAgICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgLmJsb2NrLWxpc3QgaDMge1xuICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5ibG9jay1saXN0IGgzIHtcbiAgICAgICAgYWxpZ24tc2VsZjogY2VudGVyOyB9IH1cbiAgLmJsb2NrLWxpc3QgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDYuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuYmxvY2stbGlzdCBpbWcge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG4uYnJlYWRjcnVtYiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMzsgfVxuICAuYnJlYWRjcnVtYi5pcy13aGl0ZSBvbCB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJyZWFkY3J1bWIuaXMtd2hpdGUgbGkgYSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgIC5icmVhZGNydW1iLmlzLXdoaXRlIGxpIGE6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLmJyZWFkY3J1bWIgb2wge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnRoZW1lLXBpbmsgLmJyZWFkY3J1bWIgb2wge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfVxuICAuYnJlYWRjcnVtYiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLmJyZWFkY3J1bWIgbGk6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMnB4IGRvdHRlZDsgfVxuICAgIC5icmVhZGNydW1iIGxpOmxhc3QtY2hpbGQgYTo6YWZ0ZXIge1xuICAgICAgY29udGVudDogbm9uZTsgfVxuICAgIC5icmVhZGNydW1iIGxpIGEge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5icmVhZGNydW1iIGxpIGE6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiAycHggZG90dGVkOyB9XG4gICAgICAuYnJlYWRjcnVtYiBsaSBhOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCI+XCI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDAuMzc1cmVtIDAgMC41cmVtOyB9XG4gICAgICAuYnJlYWRjcnVtYiBsaSBhLm5vLWFmdGVyOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjsgfVxuICAgICAgLmJyZWFkY3J1bWIgbGkgYTpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDEuMjVyZW07XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTExMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gICAgICAuYnJlYWRjcnVtYiBsaSBhOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuXG4uYnV0dG9uLWxpbmstZ3JvdXAgPiAqIHtcbiAgbWFyZ2luOiAwLjM3NXJlbSAxLjg3NXJlbSAwLjM3NXJlbSAwOyB9XG4gIC5idXR0b24tbGluay1ncm91cCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbi5idXR0b24sXG4uYnV0dG9uLWxpbmsge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG5cbi5idXR0b24tbGluayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07IH1cbiAgLmJ1dHRvbi1saW5rOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcbiAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpOyB9XG4gIC5idXR0b24tbGluazpob3ZlciwgLmJ1dHRvbi1saW5rOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgIC5idXR0b24tbGluazpob3ZlcjphZnRlciwgLmJ1dHRvbi1saW5rOmZvY3VzOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAuYnV0dG9uLWxpbmsud2hpdGUge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLmJ1dHRvbi1saW5rLndoaXRlOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7IH1cblxuLmJ1dHRvbi5zbWFsbCB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuYnV0dG9uLnNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuXG5idXR0b24uYnV0dG9uLWxpbmsge1xuICBjb2xvcjogI0VCNUU5NDtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5zZWFyY2gtYnV0dG9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24tcHVycGxlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0IDEuMjVyZW07XG4gIGJhY2tncm91bmQtc2l6ZTogMS4xMjVyZW07IH1cblxuLnNlYXJjaC1idXR0b24tbGFyZ2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDAuNjI1cmVtO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHRleHQtaW5kZW50OiAxMDAlO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24tcHVycGxlLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHJpZ2h0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnNlYXJjaC1idXR0b24tbGFyZ2Uge1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjY4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtYnV0dG9uLWxhcmdlIHtcbiAgICAgIHJpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuc2VhcmNoLWJ1dHRvbi1sYXJnZSB7XG4gICAgICB3aWR0aDogMi44MTI1cmVtO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAyLjYyNXJlbTsgfSB9XG5cbi5tYXN0aGVhZC1idXR0b24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMDtcbiAgcmlnaHQ6IDA7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBwYWRkaW5nOiAxLjVyZW07XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuICBmb250LXNpemU6IDEuNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDAuOTQ7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gIC5tYXN0aGVhZC1idXR0b246aG92ZXIsIC5tYXN0aGVhZC1idXR0b246Zm9jdXMge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1hc3RoZWFkLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1hc3RoZWFkLWJ1dHRvbiB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgd2lkdGg6IDExLjI1cmVtO1xuICAgICAgaGVpZ2h0OiAxMS4yNXJlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfVxuICAgICAgLm1hc3RoZWFkLWJ1dHRvbjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwLjkzNzVyZW07XG4gICAgICAgIHJpZ2h0OiAwLjkzNzVyZW07XG4gICAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5zdmdcIik7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogMS41cmVtO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKSwgdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTsgfVxuICAgICAgLm1hc3RoZWFkLWJ1dHRvbjpob3ZlcjphZnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFzdGhlYWQtYnV0dG9uIHtcbiAgICAgIHJpZ2h0OiA4JTtcbiAgICAgIGJvdHRvbTogNi4yNXJlbTtcbiAgICAgIHdpZHRoOiAxMy4xMjVyZW07XG4gICAgICBoZWlnaHQ6IDEzLjEyNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLm1hc3RoZWFkLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTUuNjI1cmVtO1xuICAgICAgaGVpZ2h0OiAxNS42MjVyZW07XG4gICAgICBmb250LXNpemU6IDIuNzVyZW07IH0gfVxuXG4uYnV0dG9uLmhvbGxvdy53aGl0ZS5uZWdhdGl2ZTpob3ZlciwgLmJ1dHRvbi5ob2xsb3cud2hpdGUubmVnYXRpdmU6Zm9jdXMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmZmZmY7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5yZW1vdmU6YWZ0ZXIge1xuICBjb250ZW50OiBcInhcIjtcbiAgbWFyZ2luLWxlZnQ6IDAuNXJlbTsgfVxuXG4uY2xvc2UtYnV0dG9uIHtcbiAgd2lkdGg6IDQwcHg7XG4gIGhlaWdodDogNDBweDsgfVxuICAuY2xvc2UtYnV0dG9uOmJlZm9yZSwgLmNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDEuODc1cmVtO1xuICAgIGhlaWdodDogMC4xMjVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE1MUYzNTsgfVxuICAuY2xvc2UtYnV0dG9uOmJlZm9yZSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICB0b3A6IDEuMjVyZW07IH1cbiAgLmNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5jbG9zZS1idXR0b24ud2hpdGU6YmVmb3JlLCAuY2xvc2UtYnV0dG9uLndoaXRlOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG5cbi5jYWxsb3V0IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgcGFkZGluZy1sZWZ0OiAzLjEyNXJlbTtcbiAgcGFkZGluZy1yaWdodDogMy4xMjVyZW07XG4gIHotaW5kZXg6IDE7IH1cbiAgLmNhbGxvdXQucHJpbWFyeSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfVxuICAgIC5jYWxsb3V0LnByaW1hcnkgLmNsb3NlLWJ1dHRvbjpiZWZvcmUsIC5jYWxsb3V0LnByaW1hcnkgLmNsb3NlLWJ1dHRvbjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIC5jYWxsb3V0IC5idXR0b24tbGluayB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtOyB9XG4gIC5jYWxsb3V0IGE6b25seS1jaGlsZCB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNhbGxvdXQgcCArIGEge1xuICAgIG1hcmdpbi10b3A6IC0xLjI1cmVtOyB9XG5cbi5jb250ZW50LWNvbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gIC5jb250ZW50LWNvbHM6bnRoLWNoaWxkKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLmNvbnRlbnQtY29scyAuZ3JpZC14ID4gLmNlbGw6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNvbnRlbnQtY29scyAuZ3JpZC14IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5jb250ZW50LWNvbHMgLmNlbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDMuNzVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuY29udGVudC1jb2xzIC5jZWxsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgICAuY29udGVudC1jb2xzIC5jZWxsLnhsYXJnZS02IHAge1xuICAgICAgICAgIG1heC13aWR0aDogMzQuNXJlbTsgfSB9XG4gIC5jb250ZW50LWNvbHMgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBjb2xvcjogIzJFMkUyRTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWNvbHMgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIC5jb250ZW50LWNvbHMgcDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5jb250ZW50LWNvbHMgLmgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgIGxldHRlci1zcGFjaW5nOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5jb250ZW50LWNvbHMgLmgyIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtOyB9IH1cbiAgLmNvbnRlbnQtY29scyB1bC5uby1idWxsZXQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAuY29udGVudC1jb2xzIHVsLm5vLWJ1bGxldCArICoge1xuICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmNvbnRlbnQtY29scyB1bC5uby1idWxsZXQgKyAqIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzLjc1cmVtOyB9IH1cbiAgICAuY29udGVudC1jb2xzIHVsLm5vLWJ1bGxldCBsaSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgICAgLmNvbnRlbnQtY29scyB1bC5uby1idWxsZXQgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmNvbnRlbnQtY29scyB1bC5uby1idWxsZXQgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvbnRlbnQtY29sc19fbWFpbiA+ICoge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG5cbi5jb29raWUtYmFubmVyIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICBkaXNwbGF5OiBub25lO1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICBwYWRkaW5nOiAxLjI1cmVtO1xuICB6LWluZGV4OiAzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1O1xuICBhbmltYXRpb24tbmFtZTogZmFkZS11cDtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxLjRzO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xOSwgMSwgMC4yMiwgMSk7XG4gIGFuaW1hdGlvbi1kZWxheTogM3M7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJhY2t3YXJkczsgfVxuICAuY29va2llLWJhbm5lci5pcy1hY3RpdmUge1xuICAgIGRpc3BsYXk6IGZsZXg7IH1cbiAgLmNvb2tpZS1iYW5uZXIgLmJ1dHRvbiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBmbGV4LXNocmluazogMDsgfVxuICAuY29va2llLWJhbm5lciBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtOyB9XG4gICAgLmNvb2tpZS1iYW5uZXIgcCBhIHtcbiAgICAgIGNvbG9yOiAjNDFBNDk0OyB9XG5cbi5jbHVzdGVyLWltYWdlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiA1JSAwIDIyJSAwOyB9XG4gIC5jbHVzdGVyLWltYWdlOjpiZWZvcmUsIC5jbHVzdGVyLWltYWdlOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgb3JkZXI6IDE7IH1cbiAgLmNsdXN0ZXItaW1hZ2U6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDsgfVxuICAuY2x1c3Rlci1pbWFnZSA+ICoge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5jbHVzdGVyLWltYWdlID4gKjpudGgtb2YtdHlwZSgxKSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogNzAlO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxMCU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICBib3JkZXItYm90dG9tOiAyMHB4IHNvbGlkICM0MUE0OTQ7IH1cbiAgICAuY2x1c3Rlci1pbWFnZSA+ICo6bnRoLW9mLXR5cGUoMikge1xuICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwOyB9XG4gICAgLmNsdXN0ZXItaW1hZ2UgPiAqOm50aC1vZi10eXBlKDMpIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgICB0b3A6IDE4JTtcbiAgICAgIGxlZnQ6IDA7IH1cbiAgICAuY2x1c3Rlci1pbWFnZSA+ICo6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgd2lkdGg6IDQ0JTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuY2x1c3Rlci1pbWFnZS10ZXh0X19pbm5lcjo6YmVmb3JlLCAuY2x1c3Rlci1pbWFnZS10ZXh0X19pbm5lcjo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNvbnRlbnQ6ICcgJztcbiAgICBmbGV4LWJhc2lzOiAwO1xuICAgIG9yZGVyOiAxOyB9XG4gIC5jbHVzdGVyLWltYWdlLXRleHRfX2lubmVyOjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2x1c3Rlci1pbWFnZS10ZXh0X19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5jbHVzdGVyLWltYWdlLXRleHRfX2ltYWdlIHtcbiAgICB3aWR0aDogNjYuNjY2NjclOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5jbHVzdGVyLWltYWdlLXRleHRfX2ltYWdlIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLTYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuY2x1c3Rlci1pbWFnZS10ZXh0X19pbWFnZSB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gIC5jbHVzdGVyLWltYWdlLXRleHRfX3RleHQge1xuICAgIGNsZWFyOiBib3RoOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmNsdXN0ZXItaW1hZ2UtdGV4dF9fdGV4dCB7XG4gICAgd2lkdGg6IDU4LjMzMzMzJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5jbHVzdGVyLWltYWdlLXRleHRfX3RleHQge1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZy1sZWZ0OiAyLjVyZW07IH0gfVxuXG4uY2x1c3Rlci1pbWFnZS10ZXh0X190ZXh0IHAge1xuICBtYXgtd2lkdGg6IDI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmNsdXN0ZXItaW1hZ2UtdGV4dF9fdGV4dCBwIHtcbiAgICAgIG1heC13aWR0aDogMzEuMjVyZW07IH0gfVxuXG4uY29udGVudC1jYXJkIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmNvbnRlbnQtY2FyZCBpbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY29udGVudC1jYXJkX190ZXh0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIC5jb250ZW50LWNhcmRfX3RleHQgPiAqIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuY29udGVudC1jYXJkIGgzIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLmNvbnRlbnQtY2FyZCBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgY29sb3I6ICMxNTFGMzU7IH1cbiAgLmNvbnRlbnQtY2FyZDpob3ZlciBoMyB7XG4gICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgLm1vcmUgLmNvbnRlbnQtY2FyZDpudGgtb2YtdHlwZSgxKSAuY29udGVudC1jYXJkX190ZXh0OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbGVmdDogLTIwMCU7XG4gICAgcmlnaHQ6IC0yMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmNvbnRlbnQtY2FyZC0tc21hbGwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuY29udGVudC1jYXJkLS1zbWFsbCBpbWcge1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgIG1heC13aWR0aDogMTMuNzVyZW07IH0gfVxuICAuY29udGVudC1jYXJkLS1zbWFsbCBoMyB7XG4gICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWNhcmQtLXNtYWxsIGgzIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmNvbnRlbnQtY2FyZC0tc21hbGwgaDMge1xuICAgICAgICBwYWRkaW5nLXRvcDogMC44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5jb250ZW50LWNhcmQtLXNtYWxsIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5jb250ZW50LWNhcmQtLXNtYWxsIGltZyB7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAuY29udGVudC1jYXJkLS1zbWFsbCAuY29udGVudC1jYXJkX190ZXh0IHtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfSB9XG5cbi5jb3Vyc2UtYWNjcmVkaXRhdGlvbnMge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgLmNvdXJzZS1hY2NyZWRpdGF0aW9ucyBpbWcge1xuICAgIG1hcmdpbjogMCAyLjVyZW0gMS4yNXJlbSAwO1xuICAgIG1heC1oZWlnaHQ6IDgwcHg7IH1cbiAgICAuY291cnNlLWFjY3JlZGl0YXRpb25zIGltZzpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuXG4uY291cnNlLWJ1dHRvbnMge1xuICBtYXJnaW4tYm90dG9tOiAtMXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5jb3Vyc2UtYnV0dG9ucyB7XG4gICAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH0gfVxuICAuY291cnNlLWJ1dHRvbnMgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IG1heC1jb250ZW50OyB9XG4gICAgLmNvdXJzZS1idXR0b25zIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogI0VCNUU5NCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDsgfVxuICAgIC5jb3Vyc2UtYnV0dG9ucyBhOmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuY291cnNlLWJ1dHRvbnMgYSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5jb3Vyc2UtYnV0dG9ucyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTsgfSB9XG5cbi5jb3Vyc2UtZGV0YWlscyBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTtcbiAgZm9udC1zaXplOiAxcmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5jb3Vyc2UtZGV0YWlscyBoMiB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuXG4uY291cnNlLWRldGFpbHMgLmg1IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jb3Vyc2UtZGV0YWlscyAuaDUge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG5cbi5jb3Vyc2UtZGV0YWlscyB1bCB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuY291cnNlLWRldGFpbHMgdWwge1xuICAgICAgZm9udC1zaXplOiAxLjA2MjVyZW07IH0gfVxuICAuY291cnNlLWRldGFpbHMgdWwgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAuY291cnNlLWRldGFpbHMgdWwgbGkge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cblxuLmNvdXJzZS1kZXRhaWxzX19yb3cge1xuICBtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY291cnNlLWRldGFpbHNfX3JvdyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jb3Vyc2UtZGV0YWlsc19fcm93IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuXG4uY291cnNlLWRldGFpbHNfX3RleHQge1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAuY291cnNlLWRldGFpbHNfX3RleHQgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBtYXJnaW4tYm90dG9tOiA2cHg7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY291cnNlLWRldGFpbHNfX3RleHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jb3Vyc2UtZGV0YWlsc19fdGV4dCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtNnB4OyB9IH1cblxuLmNvdXJzZS1pbnRybyAuZGlzcGxheS00IHN0cm9uZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXdlaWdodDogNjAwOyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmNvdXJzZS1pbnRybyAuZGlzcGxheS00IHtcbiAgICBmb250LXNpemU6IDQuNjI1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuMzEyNXJlbTsgfSB9XG5cbi5jb3Vyc2UtaW50cm8gcCB7XG4gIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfVxuICAuY291cnNlLWludHJvIHA6bGFzdC1vZi10eXBlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmNvdXJzZS1pbnRybyBwIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgICBtYXgtd2lkdGg6IDI4Ljg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmNvdXJzZS1pbnRybyBwIHtcbiAgICAgIG1heC13aWR0aDogMzUuMTI1cmVtOyB9IH1cblxuLmNvdXJzZS1pbnRybyBidXR0b24uYnV0dG9uLWxpbmsge1xuICBjb2xvcjogaW5oZXJpdDsgfVxuXG4uY291cnNlLWludHJvIGJ1dHRvbjpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGREM0MDA7XG4gIGNvbG9yOiAjMDAwMDAwOyB9XG5cbi5ldmVudC1jYXJkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzQxQTQ5NDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZXZlbnQtY2FyZCB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNDUlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfSB9XG4gIC5ldmVudC1jYXJkOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmV2ZW50LWNhcmQ6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7IH0gfVxuICAuZXZlbnQtY2FyZF9fbGluayB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmV2ZW50LWNhcmRfX2xpbmsge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbTsgfVxuICAgICAgICAuZXZlbnQtY2FyZF9fbGluayA+ICoge1xuICAgICAgICAgIGZsZXg6IDEgMTAwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmV2ZW50LWNhcmRfX2xpbmsge1xuICAgICAgICBwYWRkaW5nOiAyLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAuZXZlbnQtY2FyZF9fbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDMuMTI1cmVtOyB9IH1cbiAgICAuZXZlbnQtY2FyZF9fbGluazphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgIHJpZ2h0OiAxLjg3NXJlbTtcbiAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5zdmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjVyZW07XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSksIHRyYW5zZm9ybSAwLjI1cyBjdWJpYy1iZXppZXIoMC44NiwgMCwgMC4wNywgMSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmV2ZW50LWNhcmRfX2xpbms6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMi41cmVtO1xuICAgICAgICAgIHJpZ2h0OiAyLjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgICAgLmV2ZW50LWNhcmRfX2xpbms6YWZ0ZXIge1xuICAgICAgICAgIGJvdHRvbTogMy4xMjVyZW07XG4gICAgICAgICAgcmlnaHQ6IDMuMTI1cmVtOyB9IH1cbiAgICAuZXZlbnQtY2FyZF9fbGluazpob3ZlcjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gIC5ldmVudC1jYXJkX190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLmV2ZW50LWNhcmRfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmV2ZW50LWNhcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAuZXZlbnQtY2FyZF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDIuODc1cmVtOyB9IH1cbiAgLmV2ZW50LWNhcmQgdGltZSB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5ldmVudC1jYXJkIHRpbWUge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfSB9XG4gIC5ldmVudC1jYXJkX19tb250aCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDEuMTg3NXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuZXZlbnQtY2FyZF9fZGF5IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDdyZW07XG4gICAgbGluZS1oZWlnaHQ6IDAuODc7XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ldmVudC1jYXJkX19kYXkge1xuICAgICAgICBmb250LXNpemU6IDExLjM3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgIC5ldmVudC1jYXJkX19kYXkge1xuICAgICAgICBmb250LXNpemU6IDE1cmVtOyB9IH1cblxuLmV2ZW50LWNhcmQtZ3JvdXAge1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ldmVudC1jYXJkLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGhlaWdodDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmV2ZW50LWNhcmQtZ3JvdXAgPiAqIHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ldmVudC1jYXJkLWdyb3VwID4gKjpmaXJzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAtMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZXZlbnQtY2FyZC1ncm91cCA+ICo6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXRvcDogLTQuMzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZXZlbnQtY2FyZC1ncm91cCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmV2ZW50LWNhcmQtZ3JvdXAgLnNsaWNrLXRyYWNrID4gKiB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIuNXJlbTsgfSB9XG4gIC5ldmVudC1jYXJkLWdyb3VwIC5zbGljay1saXN0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZXZlbnQtY2FyZC1ncm91cCAuc2xpY2stbGlzdCB7XG4gICAgICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cbiAgLmV2ZW50LWNhcmQtZ3JvdXAgLnNsaWNrLXRyYWNrIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgIGhlaWdodDogMTAwJTsgfVxuICAuZXZlbnQtY2FyZC1ncm91cCAuc2xpY2stc2xpZGUge1xuICAgIGhlaWdodDogYXV0bzsgfVxuXG4uZmVhdHVyZS1ibG9ja3NfX2l0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZS1ibG9ja3NfX2l0ZW0ge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgLmZlYXR1cmUtYmxvY2tzX19pdGVtID4gKiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShldmVuKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYuMjVyZW07IH0gfVxuICAgIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShldmVuKTpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1cmVtO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLmZlYXR1cmUtYmxvY2tzX19pdGVtOm50aC1vZi10eXBlKGV2ZW4pOmJlZm9yZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgICB3aWR0aDogMTE5LjA0NzYyJTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShldmVuKTpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuZmVhdHVyZS1ibG9ja3NfX2l0ZW06bnRoLW9mLXR5cGUob2RkKSAuZmVhdHVyZS1ibG9ja3NfX3RleHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShvZGQpIC5mZWF0dXJlLWJsb2Nrc19fdGV4dCB7XG4gICAgcGFkZGluZy1sZWZ0OiA2LjI1cmVtOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmZlYXR1cmUtYmxvY2tzX19pdGVtOm50aC1vZi10eXBlKGV2ZW4pIC5mZWF0dXJlLWJsb2Nrc19faW1hZ2Uge1xuICAgIG9yZGVyOiAyO1xuICAgIG1hcmdpbjogMS44NzVyZW0gMCAtMS44NzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAuZmVhdHVyZS1ibG9ja3NfX2l0ZW06bnRoLW9mLXR5cGUoZXZlbikgLmZlYXR1cmUtYmxvY2tzX19pbWFnZSB7XG4gICAgbWFyZ2luOiAzLjc1cmVtIDAgLTMuNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZS1ibG9ja3NfX2l0ZW06bnRoLW9mLXR5cGUoZXZlbikgLmZlYXR1cmUtYmxvY2tzX190ZXh0IHtcbiAgICBvcmRlcjogMTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuZmVhdHVyZS1ibG9ja3NfX2l0ZW06bnRoLW9mLXR5cGUoZXZlbikgLmZlYXR1cmUtYmxvY2tzX190ZXh0IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5mZWF0dXJlLWJsb2Nrc19faXRlbTpudGgtb2YtdHlwZShldmVuKSAuZmVhdHVyZS1ibG9ja3NfX3RleHQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDYuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZS1ibG9ja3NfX2ltYWdlIHtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmZlYXR1cmUtYmxvY2tzX19pbWFnZSB7XG4gICAgd2lkdGg6IDQwJTsgfSB9XG5cbi5mZWF0dXJlLWJsb2Nrc19fdGV4dCB7XG4gIHBhZGRpbmc6IDEuODc1cmVtIDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZS1ibG9ja3NfX3RleHQge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDIuMTg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmUtYmxvY2tzX190ZXh0IHtcbiAgICAgIHdpZHRoOiA0MCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmUtYmxvY2tzX190ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDIuNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmZlYXR1cmUtYmxvY2tzIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cblxuLmZlYXR1cmUtYmxvY2tzIHAge1xuICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmVhdHVyZS1ibG9ja3MgcCB7XG4gICAgICB3aWR0aDogODAlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZmVhdHVyZS1ibG9ja3MgcCB7XG4gICAgICB3aWR0aDogNzAlOyB9IH1cblxuLmZlYXR1cmUtYmxvY2tzIHVsIHtcbiAgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4uZmVhdHVyZS1ldmVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZmVhdHVyZS1ldmVudDpudGgtY2hpbGQoNG4gLSAxKSAuZmVhdHVyZS1ldmVudF9fY29udGVudCxcbiAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMykgLmZlYXR1cmUtZXZlbnRfX2NvbnRlbnQge1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlLWV2ZW50Om50aC1jaGlsZCg0biAtIDEpIC5mZWF0dXJlLWV2ZW50X190ZXh0LFxuICAgIC5mZWF0dXJlLWV2ZW50Om50aC1jaGlsZCg0biAtIDMpIC5mZWF0dXJlLWV2ZW50X190ZXh0IHtcbiAgICAgIHBhZGRpbmc6IDEuODc1cmVtIDAgMi41cmVtIDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMSkgLmZlYXR1cmUtZXZlbnRfX3RleHQsXG4gICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMykgLmZlYXR1cmUtZXZlbnRfX3RleHQge1xuICAgICAgcGFkZGluZzogNi4xODc1cmVtIDAgNS41NjI1cmVtIDUuOTM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMSkgLmZlYXR1cmUtZXZlbnRfX3RleHQsXG4gICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMykgLmZlYXR1cmUtZXZlbnRfX3RleHQge1xuICAgICAgcGFkZGluZzogNi4xODc1cmVtIDAgNS41NjI1cmVtIDEwcmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudDpudGgtY2hpbGQoNG4gLSAxKSAuZmVhdHVyZS1ldmVudF9faW1hZ2UsXG4gICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKDRuIC0gMykgLmZlYXR1cmUtZXZlbnRfX2ltYWdlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtOS41MjM4MSU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgIHdpZHRoOiAxMTkuMDQ3NjIlO1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDExMSUgLyAyKTtcbiAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH0gfVxuICAuZmVhdHVyZS1ldmVudDpudGgtY2hpbGQoZXZlbik6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zdWItbWFzay0xLnN2Z1wiKTtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwdnc7XG4gICAgei1pbmRleDogLTE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKGV2ZW4pOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLWV2ZW50Om50aC1jaGlsZChldmVuKTo6YmVmb3JlIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAxMCUgMTAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmZlYXR1cmUtZXZlbnQ6bnRoLWNoaWxkKGV2ZW4pOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDkwdnc7IH0gfVxuICAuZmVhdHVyZS1ldmVudF9fY29udGVudCAuZGF0ZSB7XG4gICAgY29sb3I6ICM0MUE0OTQ7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZlYXR1cmUtZXZlbnRfX2NvbnRlbnQgLmRhdGUge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gIC5mZWF0dXJlLWV2ZW50X19jb250ZW50IC5kaXNwbGF5LTQgc3Ryb25nIHtcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fY29udGVudCAuZGlzcGxheS00IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuMzEyNXJlbTsgfSB9XG4gIC5mZWF0dXJlLWV2ZW50X19jb250ZW50IHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fY29udGVudCAudGV4dC1ib2R5IHtcbiAgICAgIG1hcmdpbi10b3A6IDIuMzEyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM4cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG4gIC5mZWF0dXJlLWV2ZW50X19jb250ZW50IHVsIGxpIHtcbiAgICBsaW5lLWhlaWdodDogMTUwLjclOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZlYXR1cmUtZXZlbnRfX2NvbnRlbnQgdWwgbGkge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjkzOHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fY29udGVudCB1bCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjkzNzVyZW07IH0gfVxuICAuZmVhdHVyZS1ldmVudF9fY29udGVudCAuYnV0dG9uLWxpbmsge1xuICAgIGNvbG9yOiAjQ0IwMDY0OyB9XG4gICAgLmZlYXR1cmUtZXZlbnRfX2NvbnRlbnQgLmJ1dHRvbi1saW5rOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IwMDY0OyB9XG4gICAgLmZlYXR1cmUtZXZlbnRfX2NvbnRlbnQgLmJ1dHRvbi1saW5rOmhvdmVyLCAuZmVhdHVyZS1ldmVudF9fY29udGVudCAuYnV0dG9uLWxpbms6Zm9jdXMsIC5mZWF0dXJlLWV2ZW50X19jb250ZW50IC5idXR0b24tbGluazphY3RpdmUge1xuICAgICAgY29sb3I6ICMwMDAwMDA7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLmZlYXR1cmUtZXZlbnRfX3RleHQge1xuICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElO1xuICAgICAgd2lkdGg6IDExOS4wNDc2MiU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcGFkZGluZy1sZWZ0OiA5LjUyMzgxJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDkuNTIzODElO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlLWV2ZW50X190ZXh0IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZzogMS44NzVyZW0gMy43NXJlbSAyLjVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fdGV4dCB7XG4gICAgICBwYWRkaW5nOiA2LjE4NzVyZW0gNS45Mzc1cmVtIDUuNTYyNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZmVhdHVyZS1ldmVudF9fdGV4dCB7XG4gICAgICBwYWRkaW5nOiA2LjE4NzVyZW0gMTByZW0gNS41NjI1cmVtIDA7IH0gfVxuICAuZmVhdHVyZS1ldmVudF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1ldmVudF9faW1hZ2Uge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTkuNTIzODElO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgd2lkdGg6IDExOS4wNDc2MiU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZS1ldmVudF9faW1hZ2Uge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTkuNTIzODElO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgd2lkdGg6IDExOS4wNDc2MiU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDExMSUgLyAyKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZS1ldmVudF9faW1hZ2UgaW1nIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBmbGV4LXNocmluazogMDsgfSB9XG5cbi5mZWF0dXJlLXBhbmVsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwge1xuICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwge1xuICAgICAgcGFkZGluZy10b3A6IDUuNjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZmVhdHVyZS1wYW5lbCB7XG4gICAgICBwYWRkaW5nLXRvcDogNi44NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwgLmRpc3BsYXktMiB7XG4gICAgICBtYXgtd2lkdGg6IDI0LjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwgLmRpc3BsYXktMiB7XG4gICAgICBtYXgtd2lkdGg6IDI2LjI1cmVtOyB9IH1cbiAgLmZlYXR1cmUtcGFuZWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDIuNXJlbTtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsOmJlZm9yZSB7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogOCU7IH0gfVxuICAuZmVhdHVyZS1wYW5lbF9faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH0gfVxuICAuZmVhdHVyZS1wYW5lbF9fY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1sZWZ0OiAtOS41MjM4MSU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogODQuNTIzODElOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogNTkuNTIzODElOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9fY29udGVudCB7XG4gICAgICAgIHdpZHRoOiA2Ny44NTcxNCU7IH0gfVxuICAgIC5ib3JkZXItZ3JhcGhpYyAuZmVhdHVyZS1wYW5lbF9fY29udGVudDphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAtMS4yNXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDYuMjVyZW07XG4gICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAuYm9yZGVyLWdyYXBoaWMgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQ6YWZ0ZXIge1xuICAgICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAuZmVhdHVyZS1wYW5lbF9fc3RhdCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWF4LXdpZHRoOiAyMHJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9fc3RhdCB7XG4gICAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9fc3RhdCB7XG4gICAgICAgIG1heC13aWR0aDogMjVyZW07IH0gfVxuICAuZmVhdHVyZS1wYW5lbF9fdGV4dCB7XG4gICAgcGFkZGluZzogMS44NzVyZW0gMCAzLjc1cmVtO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsX190ZXh0IHtcbiAgICAgICAgcGFkZGluZy10b3A6IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNDEuNjY2NjclOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZlYXR1cmUtcGFuZWxfX3RleHQge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbF9fdGV4dCB7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7IH1cbiAgICAgICAgLmZlYXR1cmUtcGFuZWxfX3RleHQtLWV4cGFuZC14bGFyZ2Uge1xuICAgICAgICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG4gIC5mZWF0dXJlLXBhbmVsIHAge1xuICAgIG1heC13aWR0aDogMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmZlYXR1cmUtcGFuZWwgcCB7XG4gICAgICAgIG1heC13aWR0aDogMzEuMjVyZW07IH0gfVxuICAgIC5mZWF0dXJlLXBhbmVsIHA6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWw6bnRoLW9mLXR5cGUoZXZlbik6YmVmb3JlLCAuZmVhdHVyZS1wYW5lbC0tZmxpcHBlZDpiZWZvcmUge1xuICAgICAgdG9wOiAwO1xuICAgICAgcmlnaHQ6IDglO1xuICAgICAgbGVmdDogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWw6bnRoLW9mLXR5cGUoZXZlbikgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQsXG4gICAgLmZlYXR1cmUtcGFuZWwtLWZsaXBwZWQgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZS1wYW5lbDpudGgtb2YtdHlwZShldmVuKSAuZmVhdHVyZS1wYW5lbF9fY29udGVudDphZnRlcixcbiAgICAuZmVhdHVyZS1wYW5lbC0tZmxpcHBlZCAuZmVhdHVyZS1wYW5lbF9fY29udGVudDphZnRlciB7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIGxlZnQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLXBhbmVsOm50aC1vZi10eXBlKGV2ZW4pIC5mZWF0dXJlLXBhbmVsX190ZXh0LFxuICAgIC5mZWF0dXJlLXBhbmVsLS1mbGlwcGVkIC5mZWF0dXJlLXBhbmVsX190ZXh0IHtcbiAgICAgIG9yZGVyOiAxOyB9IH1cbiAgLmZlYXR1cmUtcGFuZWwgLnNsaWNrLWRvdHMge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgYm90dG9tOiAxLjg3NXJlbTtcbiAgICB3aWR0aDogNzAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbCAuc2xpY2stZG90cyB7XG4gICAgICAgIGJvdHRvbTogNXJlbTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0wLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1kb3RzIHtcbiAgICAgICAgYm90dG9tOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmZlYXR1cmUtcGFuZWwgLnNsaWNrLWRvdHMge1xuICAgICAgICBib3R0b206IDcuNXJlbTsgfSB9XG4gIC5mZWF0dXJlLXBhbmVsIC5zbGljay1zbGlkZXIge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5mZWF0dXJlLXBhbmVsIC5zbGljay1saXN0IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1pbml0aWFsaXplZCAuc2xpY2stc2xpZGUge1xuICAgICAgZGlzcGxheTogZmxleDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwgLnNsaWNrLXNsaWRlIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5mZWF0dXJlLXBhbmVsIC5zbGljay1kb3R0ZWQuc2xpY2stc2xpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5mZWF0dXJlLXBhbmVsIC5zbGljay1wcmV2LCAuZmVhdHVyZS1wYW5lbCAuc2xpY2stbmV4dCB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogMS41NjI1cmVtO1xuICAgIHotaW5kZXg6IDEwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1wcmV2LCAuZmVhdHVyZS1wYW5lbCAuc2xpY2stbmV4dCB7XG4gICAgICAgIGJvdHRvbTogMC42MjVyZW07IH0gfVxuICAuZmVhdHVyZS1wYW5lbCAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1uZXh0IHtcbiAgICAgICAgbGVmdDogMi4xODc1cmVtO1xuICAgICAgICByaWdodDogYXV0bzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDU4LjMzMzMzJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjg3NXJlbTsgfSB9XG4gIC5mZWF0dXJlLXBhbmVsIC5zbGljay1wcmV2IHtcbiAgICByaWdodDogMi4xODc1cmVtO1xuICAgIGxlZnQ6IGF1dG87IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLXBhbmVsIC5zbGljay1wcmV2IHtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IGF1dG87IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZS1wYW5lbCAuc2xpY2stcHJldiB7XG4gICAgICAgIHJpZ2h0OiA1OC4zMzMzMyU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZlYXR1cmUtcGFuZWwtLWNsaXBwZWQ6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogMy40Mzc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmVhdHVyZS1wYW5lbC0tY2xpcHBlZCAuZmVhdHVyZS1wYW5lbF9fdGV4dCB7XG4gICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgcGFkZGluZy10b3A6IDEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuZmVhdHVyZS1wYW5lbC0tY2xpcHBlZCAuZmVhdHVyZS1wYW5lbF9fdGV4dCB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXRlc3QtZXZlbnRzICsgLmZlYXR1cmUtcGFuZWw6YmVmb3JlIHtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgbGVmdDogOCU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGF0ZXN0LWV2ZW50cyArIC5mZWF0dXJlLXBhbmVsIC5mZWF0dXJlLXBhbmVsX19jb250ZW50IHtcbiAgICBvcmRlcjogMTtcbiAgICBtYXJnaW4tbGVmdDogLTkuNTIzODElO1xuICAgIG1hcmdpbi1yaWdodDogMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5sYXRlc3QtZXZlbnRzICsgLmZlYXR1cmUtcGFuZWwgLmZlYXR1cmUtcGFuZWxfX2NvbnRlbnQ6YWZ0ZXIge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubGF0ZXN0LWV2ZW50cyArIC5mZWF0dXJlLXBhbmVsIC5mZWF0dXJlLXBhbmVsX190ZXh0IHtcbiAgICBvcmRlcjogMjsgfSB9XG5cbi5mb3JtLXBhbmVsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgcGFkZGluZzogMXJlbSAwOyB9XG4gIC5mb3JtLXBhbmVsIGJ1dHRvbiB7XG4gICAgYmFja2dyb3VuZDogI0VCNUU5NDtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgcGFkZGluZzogMC44NWVtIDFlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQtY29sb3IgLjI1cyBlYXNlLW91dCxjb2xvciAuMjVzIGVhc2Utb3V0O1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZmlsdGVyOiBjb250cmFzdCgxKTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAuZm9ybS1wYW5lbCBidXR0b246aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQxQTQ5NDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mb3JtLXBhbmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mb3JtLXBhbmVsIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1LjYyNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmZvcm0tcGFuZWwge1xuICAgICAgcGFkZGluZy10b3A6IDYuODc1cmVtO1xuICAgICAgcGFkZGluZzogNy41cmVtOyB9IH1cbiAgLmZvcm0tcGFuZWxfX2lubmVyIHtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1mbG93OiByb3cgd3JhcDtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAuZm9ybS1wYW5lbF9fY29udGVudCB7XG4gICAgcGFkZGluZzogMy43NXJlbTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDMuNzVyZW0gMy43NXJlbSAwIDMuNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZvcm0tcGFuZWxfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mb3JtLXBhbmVsX19jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvcm0tcGFuZWxfX2NvbnRlbnQge1xuICAgICAgICB3aWR0aDogNTguMzMzMzMlOyB9IH1cbiAgLmZvcm0tcGFuZWxfX3RleHQge1xuICAgIHBhZGRpbmc6IDMuNzVyZW07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZm9ybS1wYW5lbF9fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZvcm0tcGFuZWxfX3RleHQge1xuICAgICAgICB3aWR0aDogMzMuMzMzMzMlOyB9XG4gICAgICAgIC5mb3JtLXBhbmVsX190ZXh0LS1leHBhbmQteGxhcmdlIHtcbiAgICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMjVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAuZmVhdHVyZS1wcm9maWxlX19jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogLTkuNTIzODElO1xuICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElO1xuICAgIHdpZHRoOiAxMTkuMDQ3NjIlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZy1sZWZ0OiA5LjUyMzgxJTtcbiAgICBwYWRkaW5nLXJpZ2h0OiA5LjUyMzgxJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlLXByb2ZpbGVfX2NvbnRlbnQge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7IH0gfVxuXG4uZmVhdHVyZS1wcm9maWxlX19pbWFnZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2ltYWdlIHtcbiAgICAgIG1heC13aWR0aDogMTguNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2ltYWdlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy10b3A6IDMyJTtcbiAgICAgIHdpZHRoOiAzMiU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2ltYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzNiU7XG4gICAgICBtYXgtd2lkdGg6IDE4cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2ltYWdlIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxOHJlbTsgfSB9XG4gIC5mZWF0dXJlLXByb2ZpbGVfX2ltYWdlIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICAtd2Via2l0LW1hc2s6IHVybChcIi4uL2ltZy9tYXNrLXNoYXBlLTIuc3ZnXCIpIGNlbnRlciBjZW50ZXIvY292ZXI7XG4gICAgLXdlYmtpdC1tYXNrLXNpemU6IDEwMCU7XG4gICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0OyB9XG5cbi5mZWF0dXJlLXByb2ZpbGVfX2JveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMS44NzVyZW07XG4gIGhlaWdodDogbWF4LWNvbnRlbnQ7IH1cbiAgLmZlYXR1cmUtcHJvZmlsZV9fYm94ID4gKixcbiAgLmZlYXR1cmUtcHJvZmlsZV9fYm94IGEsXG4gIC5mZWF0dXJlLXByb2ZpbGVfX2JveCBibG9ja3F1b3RlLFxuICAuZmVhdHVyZS1wcm9maWxlX19ib3ggcCxcbiAgLmZlYXR1cmUtcHJvZmlsZV9fYm94IGNpdGUge1xuICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmUtcHJvZmlsZV9fYm94IHtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBtYXJnaW4tdG9wOiAyMCU7XG4gICAgICBwYWRkaW5nOiAyLjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2JveCB7XG4gICAgICBwYWRkaW5nOiA0LjE4NzVyZW0gNC4xMjVyZW0gNC4xODc1cmVtIDQuMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX2JveCB7XG4gICAgICBtYXgtd2lkdGg6IDMyLjY4NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmZlYXR1cmUtcHJvZmlsZV9fYm94IHtcbiAgICAgIG1hcmdpbi10b3A6IDEyJTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5mZWF0dXJlLXByb2ZpbGVfX3F1b3RlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH0gfVxuXG4uZmVhdHVyZS1wcm9maWxlX19xdW90ZSBwLCAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSAucCB7XG4gIGxpbmUtaGVpZ2h0OiAxNTAuNyU7XG4gIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gIG1hcmdpbi1ib3R0b206IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSBwLCAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSAucCB7XG4gICAgICBtYXJnaW46IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5mZWF0dXJlLXByb2ZpbGVfX3F1b3RlIHAsIC5mZWF0dXJlLXByb2ZpbGVfX3F1b3RlIC5wIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSBwLCAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSAucCB7XG4gICAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgICBtYXgtd2lkdGg6IDI0LjQzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSBmb290ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG4uZmVhdHVyZS1wcm9maWxlX19xdW90ZSBjaXRlIHtcbiAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZmVhdHVyZS1wcm9maWxlX19xdW90ZSBjaXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG5cbi5mZWF0dXJlLXByb2ZpbGVfX2NpdGF0aW9ucyB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgLmZlYXR1cmUtcHJvZmlsZV9fY2l0YXRpb25zIHAsIC5mZWF0dXJlLXByb2ZpbGVfX2NpdGF0aW9ucyAucCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBsaW5lLWhlaWdodDogMTUwLjclO1xuICAgIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLmZlYXR1cmUtcHJvZmlsZV9fY2l0YXRpb25zIHAgc3Ryb25nLCAuZmVhdHVyZS1wcm9maWxlX19jaXRhdGlvbnMgLnAgc3Ryb25nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmVhdHVyZS1wcm9maWxlX19jaXRhdGlvbnMgcCwgLmZlYXR1cmUtcHJvZmlsZV9fY2l0YXRpb25zIC5wIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmZlYXR1cmUtcHJvZmlsZV9fY2l0YXRpb25zIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgIGxlZnQ6IDglOyB9IH1cblxuLmdlbmVyYWwtY29udGVudCAuZmVhdHVyZS1wcm9maWxlX19pbm5lciB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXgtd2lkdGg6IG5vbmU7IH1cblxuLmZpbmQtY291cnNlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5maW5kLWNvdXJzZV9faW5uZXIge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5maW5kLWNvdXJzZSB7XG4gICAgICBwYWRkaW5nOiA5LjM3NXJlbSAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZmluZC1jb3Vyc2UgLmdyaWQteDpmaXJzdC1jaGlsZCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH0gfVxuICAuZmluZC1jb3Vyc2UgLmNlbGw6bnRoLWNoaWxkKDMpIC5maW5kLWNvdXJzZV9faW1hZ2Uge1xuICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZpbmQtY291cnNlIC5jZWxsOm50aC1jaGlsZCgzKSAuZmluZC1jb3Vyc2VfX2ltYWdlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTMzJTsgfSB9XG4gIC5maW5kLWNvdXJzZV9fc2VhcmNoIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fc2VhcmNoIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5maW5kLWNvdXJzZV9fZm9ybSBmb3JtIHtcbiAgICBtYXJnaW4tdG9wOiAxLjVyZW07IH1cbiAgICAuZmluZC1jb3Vyc2VfX2Zvcm0gZm9ybSBpbnB1dCB7XG4gICAgICBib3JkZXItY29sb3I6ICM0MUE0OTQ7IH1cbiAgICAgIC5maW5kLWNvdXJzZV9fZm9ybSBmb3JtIGlucHV0OjpwbGFjZWhvbGRlciB7XG4gICAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAuZmluZC1jb3Vyc2VfX2Zvcm0gZm9ybSAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fZm9ybSBmb3JtIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19mb3JtIGZvcm0ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDkuMzc1cmVtOyB9IH1cbiAgLmZpbmQtY291cnNlX19mb3JtIC5idXR0b24tbGluayB7XG4gICAgY29sb3I6ICMxNTFGMzU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19mb3JtIC5idXR0b24tbGluayB7XG4gICAgICAgIGZsb2F0OiByaWdodDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19mb3JtIC5idXR0b24tbGluayB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuNTYzcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19mb3JtIC5idXR0b24tbGluayB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOS4zNzVyZW07IH0gfVxuICAuZmluZC1jb3Vyc2UgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgIC5maW5kLWNvdXJzZSBoMiBzdHJvbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIC5maW5kLWNvdXJzZV9fbGV2ZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9XG4gICAgLmZpbmQtY291cnNlX19sZXZlbDo6YmVmb3JlLCAuZmluZC1jb3Vyc2VfX2xldmVsOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5maW5kLWNvdXJzZV9fbGV2ZWw6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fbGV2ZWwge1xuICAgICAgICBtYXJnaW4tbGVmdDogLTkuNTIzODElO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgd2lkdGg6IDExOS4wNDc2MiU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBhZGRpbmctbGVmdDogOS41MjM4MSU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDkuNTIzODElOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19sZXZlbCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmluZC1jb3Vyc2VfX2xldmVsIHtcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYzsgfSB9XG4gICAgLmZpbmQtY291cnNlX19sZXZlbDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7XG4gICAgICB0b3A6IDMuNzVyZW07XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgICAuZmluZC1jb3Vyc2VfX2xldmVsOmJlZm9yZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgICB3aWR0aDogMTE5LjA0NzYyJTtcbiAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAgIC5maW5kLWNvdXJzZV9fbGV2ZWw6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7IH0gfVxuICAuZmluZC1jb3Vyc2VfX2xldmVsLWxpc3Qge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAxLjVyZW07XG4gICAgZm9udC1zaXplOiAxLjc1cmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjIyO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfVxuICAgIC5maW5kLWNvdXJzZV9fbGV2ZWwtbGlzdCBsaSBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgIC5maW5kLWNvdXJzZV9fbGV2ZWwtbGlzdCBsaSBhOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgICAgd2lkdGg6IDEuNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnN2Z1wiKTtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxLjVyZW07XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpOyB9XG4gICAgICAuZmluZC1jb3Vyc2VfX2xldmVsLWxpc3QgbGkgYSBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTsgfVxuICAgICAgLmZpbmQtY291cnNlX19sZXZlbC1saXN0IGxpIGE6aG92ZXI6YmVmb3JlIHtcbiAgICAgICAgb3BhY2l0eTogMTsgfVxuICAgICAgLmZpbmQtY291cnNlX19sZXZlbC1saXN0IGxpIGE6aG92ZXIgc3BhbiB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0MHB4KTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmluZC1jb3Vyc2VfX2xldmVsLWxpc3Qge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiAzMy4zMzMzMyU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19sZXZlbC1saXN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07XG4gICAgICAgIHdpZHRoOiA0MS42NjY2NyU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fbGV2ZWwtbGlzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmZpbmQtY291cnNlX19sZXZlbC1saXN0IHtcbiAgICAgICAgZm9udC1zaXplOiAyLjYyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fbGV2ZWwtbGlzdCB7XG4gICAgICAgIHBhZGRpbmc6IDYuMjVyZW0gMCAxMi41cmVtOyB9IH1cbiAgLmZpbmQtY291cnNlX19pbWFnZSBmaWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxRjM1OyB9XG4gICAgLmZpbmQtY291cnNlX19pbWFnZSBmaWd1cmU6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjA3LjgzZGVnLCByZ2JhKDAsIDAsIDAsIDAuNikgNS44OSUsIHJnYmEoMCwgMCwgMCwgMCkgNjUuNjIlKTtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG9wYWNpdHk6IDYwJTsgfVxuICAgIC5maW5kLWNvdXJzZV9faW1hZ2UgZmlndXJlIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgLmZpbmQtY291cnNlX19pbWFnZSBmaWd1cmUgZmlnY2FwdGlvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IDEuMjVyZW07XG4gICAgICBsZWZ0OiAxLjI1cmVtO1xuICAgICAgY29sb3I6ICNmZmZmZmY7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICBsaW5lLWhlaWdodDogODcuNiU7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgbWF4LXdpZHRoOiAxNC4yNXJlbTtcbiAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmZpbmQtY291cnNlX19pbWFnZSBmaWd1cmUgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgICBsZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIC5maW5kLWNvdXJzZV9fc2hhcGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHBhZGRpbmctdG9wOiA2NC41NyU7XG4gICAgYm90dG9tOiAtNXJlbTtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IC0xOyB9XG4gICAgLmZpbmQtY291cnNlX19zaGFwZSBzdmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5maW5kLWNvdXJzZV9fc2hhcGUge1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDMpOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmluZC1jb3Vyc2VfX3NoYXBlIHtcbiAgICAgICAgYm90dG9tOiAtOS4zNzVyZW07IH0gfVxuICAuZmluZC1jb3Vyc2VfX2xpbmtzIHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZmluZC1jb3Vyc2VfX2xpbmtzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogNy41cmVtOyB9IH1cblxuLmZpbHRlcnMge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuZmlsdGVycyB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjE4NzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmZpbHRlcnNfX2ZhY2V0cyB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLmZpbHRlcnNfX2xlZ2VuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC43NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAuNyU7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgICBsZXR0ZXItc3BhY2luZzogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maWx0ZXJzX19sZWdlbmQge1xuICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgLmZpbHRlcnMgLmJ1dHRvbi5zbWFsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBwYWRkaW5nOiAwLjEyNXJlbSAwLjVyZW0gMC4xMjVyZW0gMC43NXJlbTsgfVxuICAgIC5maWx0ZXJzIC5idXR0b24uc21hbGw6OmFmdGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0b3A6IC0ycHg7XG4gICAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7IH1cbiAgLmZpbHRlcnMgLmJ1dHRvbi1saW5rIHtcbiAgICBjb2xvcjogI0NCMDA2NDsgfVxuICAgIC5maWx0ZXJzIC5idXR0b24tbGluazo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0NCMDA2NDsgfVxuICAuZmlsdGVycyAudGFicyB7XG4gICAgbWFyZ2luLWJvdHRvbTogLTFyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgICAgLmZpbHRlcnMgLnRhYnMge1xuICAgICAgICBvdmVyZmxvdzogYXV0bztcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfSB9XG4gICAgLmZpbHRlcnMgLnRhYnMtdGl0bGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAgICAgLmZpbHRlcnMgLnRhYnMtdGl0bGU6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgICAgLmZpbHRlcnMgLnRhYnMtdGl0bGUge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBmbG9hdDogbm9uZTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5maWx0ZXJzIC50YWJzLXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIuMzc1cmVtOyB9IH1cbiAgICAgIC5maWx0ZXJzIC50YWJzLXRpdGxlID4gYSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAgIC5maWx0ZXJzIC50YWJzLXRpdGxlID4gYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMTI1cmVtOyB9IH1cbiAgICAgICAgLmZpbHRlcnMgLnRhYnMtdGl0bGUgPiBhOmhvdmVyLCAuZmlsdGVycyAudGFicy10aXRsZSA+IGE6Zm9jdXMsIC5maWx0ZXJzIC50YWJzLXRpdGxlID4gYVthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGNvbG9yOiAjMzQ4Mzc4OyB9XG4gIC5maWx0ZXJzIC50YWJzLWNvbnRlbnQge1xuICAgIHdpZHRoOiAxMDAlOyB9XG4gIC5maWx0ZXJzIC50YWJzLXBhbmVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICBwYWRkaW5nLXRvcDogMi41cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7IH1cbiAgICAuZmlsdGVycyAudGFicy1wYW5lbDpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgIHJpZ2h0OiAtOTk5OXB4O1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maWx0ZXJzIC50YWJzLXBhbmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDMuNzVyZW07XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICAgIC5maWx0ZXJzIC50YWJzLXBhbmVsIC5jZWxsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICAgIC5maWx0ZXJzIC50YWJzLXBhbmVsIGEge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAuZmlsdGVycyAudGFicy1wYW5lbCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLmZpbHRlcnNfX2FjdGlvbnMge1xuICAgIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZmlsdGVyc19fYWN0aW9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maWx0ZXJzX19hY3Rpb25zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5maWx0ZXJzX19hY3Rpb25zIC5idXR0b24tbGluayB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bzsgfSB9XG4gIC5maWx0ZXJzX19idXR0b25zIC5idXR0b24ge1xuICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTsgfVxuICAuZmlsdGVyc19fYXoge1xuICAgIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5maWx0ZXJzX19heiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07IH0gfVxuICAgIC5maWx0ZXJzX19heiAuYXoge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMC42MjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmZpbHRlcnNfX2F6IC5heiB7XG4gICAgICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIDY3cHgpO1xuICAgICAgICAgIGdyaWQtZ2FwOiAwLjcxOXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgICAgLmZpbHRlcnNfX2F6IC5heiB7XG4gICAgICAgICAgZ3JpZC1nYXA6IDEuNzYzcmVtOyB9IH1cbiAgICAgIC5maWx0ZXJzX19heiAuYXogbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiA0LjEyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiA0LjEyNXJlbTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwLjYyNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07IH1cbiAgICAgICAgLmZpbHRlcnNfX2F6IC5heiBsaSBhIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgcGFkZGluZzogMDsgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAgIC5maWx0ZXJzX19heiAuYXogbGkgYSB7XG4gICAgICAgICAgICAgIHdpZHRoOiA0LjEyNXJlbTsgfSB9XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgICAuZmlsdGVyc19fYXogLmF6IGxpIHtcbiAgICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICAgIG1hcmdpbjogMDsgfSB9XG5cbi5wcm9nLXNlYXJjaC1yZXN1bHRzIHtcbiAgYmFja2dyb3VuZDogI2ZmZjsgfVxuXG4uc2VhcmNoLXJlc3VsdC1jYXJkLnNwZWNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyMDMsIDIwNiwgMjA2LCAwLjY1KTtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgdHJhbnNpdGlvbjogLjNzOyB9XG4gIC5zZWFyY2gtcmVzdWx0LWNhcmQuc3BlY3M6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMDI1KTtcbiAgICBiYWNrZ3JvdW5kOiAjY2IwMDY0O1xuICAgIGNvbG9yOiAjZmZmOyB9XG4gICAgLnNlYXJjaC1yZXN1bHQtY2FyZC5zcGVjczpob3ZlciBhIHtcbiAgICAgIGNvbG9yOiAjZmZmOyB9XG5cbi5maWx0ZXItdG9nZ2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMS4yNXJlbSAxcmVtO1xuICB3aWR0aDogMTAwJTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNiOGNjZDE7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjhjY2QxO1xuICBjb2xvcjogaW5oZXJpdDsgfVxuICAuZmlsdGVyLXRvZ2dsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiK1wiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICByaWdodDogMXJlbTtcbiAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuICAgIGNvbG9yOiAjRUI1RTk0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5maWx0ZXItdG9nZ2xlOmJlZm9yZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSAzcHgpOyB9IH1cbiAgLmZpbHRlci10b2dnbGUuaXMtYWN0aXZlOmJlZm9yZSB7XG4gICAgY29udGVudDogXCItXCI7IH1cblxuLmdhbGxlcnkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2FsbGVyeSB7XG4gICAgICBtYXJnaW46IDguNzVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuZ2FsbGVyeSB7XG4gICAgICBtYXJnaW46IDEwLjgxMjVyZW0gMDsgfSB9XG4gIC5nYWxsZXJ5IGltZyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuICAgIGhlaWdodDogNzB2dzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZ2FsbGVyeSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDQzdnc7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZ2FsbGVyeSBpbWcge1xuICAgICAgICBoZWlnaHQ6IDI4dnc7IH0gfVxuICAuZ2FsbGVyeSBmaWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5nYWxsZXJ5IGZpZ3VyZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDEuMjVyZW0pO1xuICAgICAgaGVpZ2h0OiA0MCU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNCkgMTQuMDYlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLmdhbGxlcnkgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMXJlbTtcbiAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmdhbGxlcnkgZmlndXJlIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIGJvdHRvbTogMS41cmVtO1xuICAgICAgICAgIGxlZnQ6IDEuMzEyNXJlbTsgfSB9XG4gIC5nYWxsZXJ5IC5zbGljay1wcmV2LCAuZ2FsbGVyeSAuc2xpY2stbmV4dCB7XG4gICAgdG9wOiAtMS4yNXJlbTtcbiAgICByaWdodDogOCU7XG4gICAgbGVmdDogYXV0bztcbiAgICB6LWluZGV4OiAxMDA7IH1cbiAgLmdhbGxlcnkgLnNsaWNrLXByZXYge1xuICAgIG1hcmdpbi1yaWdodDogMi4xODc1cmVtOyB9XG4gIC5nYWxsZXJ5X193cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmdhbGxlcnlfX25hdiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogMy45Mzc1cmVtO1xuICAgIGhlaWdodDogMy45Mzc1cmVtOyB9XG4gICAgLmdhbGxlcnlfX25hdiAuc2xpY2stcHJldixcbiAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1uZXh0IHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2OmhvdmVyLCAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2OmZvY3VzLCAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2OmFjdGl2ZSxcbiAgICAgIC5nYWxsZXJ5X19uYXYgLnNsaWNrLW5leHQ6aG92ZXIsXG4gICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1uZXh0OmZvY3VzLFxuICAgICAgLmdhbGxlcnlfX25hdiAuc2xpY2stbmV4dDphY3RpdmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2OmZvY3VzLFxuICAgICAgLmdhbGxlcnlfX25hdiAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQ7XG4gICAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAgIC5nYWxsZXJ5X19uYXYgLnNsaWNrLXByZXYgc3ZnLFxuICAgICAgLmdhbGxlcnlfX25hdiAuc2xpY2stbmV4dCBzdmcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2LFxuICAgICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1uZXh0IHtcbiAgICAgICAgICB3aWR0aDogMC43NXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5nYWxsZXJ5X19uYXYgLnNsaWNrLXByZXYsXG4gICAgICAgIC5nYWxsZXJ5X19uYXYgLnNsaWNrLW5leHQge1xuICAgICAgICAgIHdpZHRoOiAxcmVtOyB9IH1cbiAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuZ2FsbGVyeV9fbmF2IC5zbGljay1wcmV2IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDlweDsgfSB9XG4gICAgLmdhbGxlcnlfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgICByaWdodDogMDtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmdhbGxlcnlfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDlweDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmdhbGxlcnlfX25hdiB7XG4gICAgICAgIHdpZHRoOiA3Ljg3NXJlbTtcbiAgICAgICAgaGVpZ2h0OiA3Ljg3NXJlbTsgfSB9XG4gICAgLmdhbGxlcnlfX25hdjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgIzQxQTQ5NDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuZ2FsbGVyeV9fbmF2IHtcbiAgICAgICAgcmlnaHQ6IDFyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZ2VuZXJhbC1jb250ZW50ID4gKjpub3QoaW1nKTpub3QoYXNpZGUpIHtcbiAgICB3aWR0aDogODUlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmdlbmVyYWwtY29udGVudCA+ICo6bm90KGltZyk6bm90KGFzaWRlKSB7XG4gICAgd2lkdGg6IDc1JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gIC5nZW5lcmFsLWNvbnRlbnQgPiAqOm5vdChpbWcpOm5vdChhc2lkZSkge1xuICAgIHdpZHRoOiA4MCU7IH0gfVxuXG4uZ2VuZXJhbC1jb250ZW50ID4gLmdhbGxlcnlfX3dyYXBwZXIge1xuICB3aWR0aDogMTAwJTsgfVxuICAuZ2VuZXJhbC1jb250ZW50ID4gLmdhbGxlcnlfX3dyYXBwZXIgKyAqIHtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLmdlbmVyYWwtY29udGVudCA+IC5nYWxsZXJ5X193cmFwcGVyIC5nYWxsZXJ5X19uYXYge1xuICAgICAgbGVmdDogY2FsYyg2NXZ3ICsgMC42MjVyZW0gKyAxLjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBhbGwgYW5kIChkZXZpY2Utd2lkdGg6IDE5MjBweCkgYW5kIChkZXZpY2UtaGVpZ2h0OiAxMDgwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5nZW5lcmFsLWNvbnRlbnQgPiAuZ2FsbGVyeV9fd3JhcHBlciAuZ2FsbGVyeV9fbmF2IHtcbiAgICAgIGxlZnQ6IGNhbGMoNjV2dyArIDAuNjI1cmVtICsgMzJweCk7IH0gfVxuXG4uZ2VuZXJhbC1jb250ZW50IGgyLCAuZ2VuZXJhbC1jb250ZW50IC5oMiB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ2VuZXJhbC1jb250ZW50IGgyLCAuZ2VuZXJhbC1jb250ZW50IC5oMiB7XG4gICAgICBmb250LXNpemU6IDEuODc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG4uZ2VuZXJhbC1jb250ZW50ID4gaW1nLFxuLmdlbmVyYWwtY29udGVudCBhc2lkZSB7XG4gIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5nZW5lcmFsLWNvbnRlbnQgPiBpbWcsXG4gICAgLmdlbmVyYWwtY29udGVudCBhc2lkZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cmVtOyB9IH1cbiAgLmdlbmVyYWwtY29udGVudCA+IGltZzpsYXN0LWNoaWxkLFxuICAuZ2VuZXJhbC1jb250ZW50IGFzaWRlOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLmdlbmVyYWwtY29udGVudCA+IC5mZWF0dXJlLWltZy1jb2xzIHtcbiAgd2lkdGg6IDg0dnc7XG4gIG1heC13aWR0aDogMTAxLjI1cmVtOyB9XG5cbi5nZW5lcmFsLWNvbnRlbnQgPiAuZmVhdHVyZS1wcm9maWxlIHtcbiAgd2lkdGg6IDc0dnc7XG4gIG1heC13aWR0aDogMTAxLjI1cmVtOyB9XG5cbi5nZW5lcmFsLWNvbnRlbnQgcCArIGltZyB7XG4gIG1hcmdpbi10b3A6IDFyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJhbC1jb250ZW50IHAgKyBpbWcge1xuICAgICAgbWFyZ2luLXRvcDogMy41cmVtOyB9IH1cblxuLmdlbmVyYWwtY29udGVudCBwICsgYXNpZGUge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuZ2VuZXJhbC1jb250ZW50IHAgKyBhc2lkZSB7XG4gICAgICBtYXJnaW4tdG9wOiA1cmVtOyB9IH1cblxuLmdlbmVyYWwtY29udGVudCBwLmludHJvIHtcbiAgbGluZS1oZWlnaHQ6IDExNSUgMC43O1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICBmb250LXdlaWdodDogNjAwO1xuICBtYXJnaW4tYm90dG9tOiAycmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ2VuZXJhbC1jb250ZW50IHAuaW50cm8ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMy4yNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMi4yNXJlbTsgfSB9XG5cbi5nZW5lcmFsLWNvbnRlbnQgcCBhIHtcbiAgY29sb3I6ICM0MUE0OTQ7XG4gIGZpbHRlcjogY29udHJhc3QoMSk7IH1cblxuLmdlbmVyYWwtY29udGVudCB1bCB7XG4gIHBhZGRpbmctbGVmdDogMnJlbTsgfVxuXG4uZ2VuZXJhbC1jb250ZW50IC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gIG92ZXJmbG93OiB2aXNpYmxlOyB9XG5cbi5nZW5lcmFsLWNvbnRlbnQgLnNsaWNrLWxpc3QuZHJhZ2dpbmcsIC5nZW5lcmFsLWNvbnRlbnQgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlOmFjdGl2ZTpob3ZlciB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7IH1cblxuLmdlbmVyYWwtY29udGVudCAuZ2FsbGVyeV9fbmF2IHtcbiAgcmlnaHQ6IGNhbGMoNjNweCAtIDI2cHgpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmdlbmVyYWwtY29udGVudCAuZ2FsbGVyeV9fbmF2IHtcbiAgICAgIGxlZnQ6IGNhbGMoNzB2dyArIDAuNjI1cmVtKTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZ2VuZXJhbC1jb250ZW50IC5nYWxsZXJ5X19uYXYge1xuICAgICAgbGVmdDogY2FsYyg2NXZ3ICsgMC42MjVyZW0pOyB9IH1cblxuLmhhc2h0YWdfX3RpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC1zaXplOiAyLjEyNXJlbTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5oYXNodGFnX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDMuNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5oYXNodGFnX190aXRsZSB7XG4gICAgICBmb250LXNpemU6IDYuMjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaGFzaHRhZ19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA3LjM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaGFzaHRhZ19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiA5LjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuaGFzaHRhZ19fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAxMS43NXJlbTsgfSB9XG4gIC5oYXNodGFnX190aXRsZSBlbSB7XG4gICAgY29sb3I6ICNFQjVFOTQ7IH1cblxuLmhhc2h0YWdfX3NvY2lhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGxpbmUtaGVpZ2h0OiAxOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmhhc2h0YWdfX3NvY2lhbCB7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAuaGFzaHRhZ19fc29jaWFsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgLmhhc2h0YWdfX3NvY2lhbCBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgICAuaGFzaHRhZ19fc29jaWFsIGxpIHtcbiAgICAgICAgZmxleDogMSAxMDAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmhhc2h0YWdfX3NvY2lhbCBsaSB7XG4gICAgICAgIG1hcmdpbjogMTBweDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5oYXNodGFnX19zb2NpYWwgbGkge1xuICAgICAgICBtYXJnaW46IDE1cHg7IH0gfVxuICAuaGFzaHRhZ19fc29jaWFsIHN2ZyB7XG4gICAgZmlsbDogIzAwMDAwMDtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBmaWxsIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFzaHRhZ19fc29jaWFsIHNwYW4ge1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAuaGFzaHRhZ19fc29jaWFsIGEge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5oYXNodGFnX19zb2NpYWwgYTpob3ZlciB7XG4gICAgICBjb2xvcjogI0VCNUU5NDsgfVxuICAgICAgLmhhc2h0YWdfX3NvY2lhbCBhOmhvdmVyIHN2ZyB7XG4gICAgICAgIGZpbGw6ICNFQjVFOTQ7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgLmludHJvLXctc3RhdCAuaW50cm8ge1xuICAgIHdpZHRoOiA5NSU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuaW50cm8tdy1zdGF0IC5zdGF0IHtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07IH0gfVxuXG4ubGF0ZXN0LWV2ZW50cyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAubGF0ZXN0LWV2ZW50czpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMi41cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxhdGVzdC1ldmVudHM6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiAwOyB9IH1cbiAgLmxhdGVzdC1ldmVudHM6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogLTEuMjVyZW07XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDYuMjVyZW07XG4gICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmxhdGVzdC1ldmVudHM6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMjAuODMzMzMlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAubGF0ZXN0LWV2ZW50cyB7XG4gICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5sYXRlc3QtZXZlbnRzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyLjVyZW07IH0gfVxuICAubGF0ZXN0LWV2ZW50c19faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubGF0ZXN0LWV2ZW50c19faW5uZXIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAubGF0ZXN0LWV2ZW50c19fdGV4dCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLmxhdGVzdC1ldmVudHNfX3RleHQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDIuNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLmxhdGVzdC1ldmVudHNfX3RleHQge1xuICAgICAgcGFkZGluZzogNC42ODc1cmVtIDAgNS45Mzc1cmVtO1xuICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubGF0ZXN0LWV2ZW50c19fdGV4dCB7XG4gICAgICBwYWRkaW5nOiA3LjVyZW0gMCAxMHJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLmxhdGVzdC1ldmVudHNfX3RleHQge1xuICAgICAgcGFkZGluZzogMTEuMjVyZW0gMCAxMy43NXJlbTsgfSB9XG4gIC5sYXRlc3QtZXZlbnRzX190ZXh0IHAge1xuICAgIG1heC13aWR0aDogMjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmxhdGVzdC1ldmVudHNfX3RleHQgcCB7XG4gICAgICAgIG1heC13aWR0aDogMzEuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sYXRlc3QtZXZlbnRzX19ldmVudHMge1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmctbGVmdDogMS4yNXJlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5sYXRlc3QtZXZlbnRzX19ldmVudHMge1xuICAgICAgd2lkdGg6IDY2LjY2NjY3JTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDIuNXJlbTtcbiAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH0gfVxuXG4ubGF0ZXN0LW5ld3Mge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmxhdGVzdC1uZXdzIGgzIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAubGF0ZXN0LW5ld3MgaDMge1xuICAgICAgICBmb250LXNpemU6IDJyZW07IH0gfVxuICAubGF0ZXN0LW5ld3MgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7IH1cbiAgLmxhdGVzdC1uZXdzX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sYXRlc3QtbmV3c19faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogMy43NXJlbTsgfSB9XG4gICAgLmxhdGVzdC1uZXdzX19pbm5lcjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNXJlbTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLmxhdGVzdC1uZXdzX19pbm5lcjpiZWZvcmUge1xuICAgICAgICAgIGxlZnQ6IC05LjUyMzgxJTtcbiAgICAgICAgICByaWdodDogLTkuNTIzODElOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5sYXRlc3QtbmV3c19faW5uZXI6YmVmb3JlIHtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjUlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLmxhdGVzdC1uZXdzX19pbm5lciB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgfSB9XG4gIC5sYXRlc3QtbmV3c19fZmVhdHVyZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5sYXRlc3QtbmV3c19fZmVhdHVyZSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlOjpiZWZvcmUsIC5sYXRlc3QtbmV3c19fZmVhdHVyZTo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgICAgIG9yZGVyOiAxOyB9XG4gICAgICAgIC5sYXRlc3QtbmV3c19fZmVhdHVyZTo6YWZ0ZXIge1xuICAgICAgICAgIGNsZWFyOiBib3RoOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubGF0ZXN0LW5ld3NfX2ZlYXR1cmUge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclOyB9IH1cbiAgICAubGF0ZXN0LW5ld3NfX2ZlYXR1cmUgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGltZyB7XG4gICAgICAgIHdpZHRoOiA3NSU7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGF0ZXN0LW5ld3NfX2ZlYXR1cmUgaW1nIHtcbiAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0OyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGltZyB7XG4gICAgICAgIHdpZHRoOiA4MCU7IH0gfVxuICAgIC5sYXRlc3QtbmV3c19fZmVhdHVyZSBhID4gZGl2IHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHBhZGRpbmc6IDEuNTYyNXJlbSAxLjU2MjVyZW0gMi44MTI1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW4tdG9wOiAtMy43NXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgICAgIC5sYXRlc3QtbmV3c19fZmVhdHVyZSBhID4gZGl2OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDEuMjVyZW07XG4gICAgICAgIHJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICB3aWR0aDogMS41cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuMjVyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXJyb3ctcmlnaHQtd2hpdGUuc3ZnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEuNXJlbTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDUwcHgpO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKSwgdHJhbnNmb3JtIDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGEgPiBkaXYge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgICAgICBwYWRkaW5nOiAzLjEyNXJlbTtcbiAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGEgPiBkaXYge1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBwYWRkaW5nOiAzLjEyNXJlbSAyLjE4NzVyZW0gMy43NXJlbSAwOyB9XG4gICAgICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGEgPiBkaXY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAtMTcwcHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgICAubGF0ZXN0LW5ld3NfX2ZlYXR1cmUgYSA+IGRpdiB7XG4gICAgICAgICAgcGFkZGluZzogNXJlbSAzLjEyNXJlbSA2LjI1cmVtIDA7IH0gfVxuICAgICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGEgPiBkaXYgPiAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAubGF0ZXN0LW5ld3NfX2ZlYXR1cmUgYSA+IGRpdiBoMyB7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLmxhdGVzdC1uZXdzX19mZWF0dXJlIGE6aG92ZXIgPiBkaXY6YWZ0ZXIge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICAubGF0ZXN0LW5ld3NfX21vcmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMy43NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubGF0ZXN0LW5ld3NfX21vcmUge1xuICAgICAgICB3aWR0aDogNDEuNjY2NjclO1xuICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbSAwOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubGF0ZXN0LW5ld3NfX21vcmUge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBhbGlnbi1zZWxmOiBjZW50ZXI7IH0gfVxuICAgIC5sYXRlc3QtbmV3c19fbW9yZSBoMyB7XG4gICAgICBjb2xvcjogIzAwMDAwMDtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKTsgfVxuICAgICAgLmxhdGVzdC1uZXdzX19tb3JlIGgzOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICNFQjVFOTQ7IH1cblxuLndndS1sb2dvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZpbGw6ICMxNTFGMzU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAud2d1LWxvZ28ge1xuICAgICAgaGVpZ2h0OiBhdXRvOyB9IH1cbiAgLmlzLXdoaXRlIC53Z3UtbG9nbyB7XG4gICAgZmlsbDogI2ZmZmZmZjsgfVxuXG4ubG9nby13cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogNzglO1xuICB3aWR0aDogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5sb2dvLXdyYXBwZXIge1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIHBhZGRpbmctdG9wOiAzOSU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmxvZ28td3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogNDElO1xuICAgICAgd2lkdGg6IDMxM3B4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5sb2dvLXdyYXBwZXIge1xuICAgICAgcGFkZGluZy10b3A6IDQ5JTsgfSB9XG4gIC5sb2dvLXdyYXBwZXIgc3ZnIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG5cbm1haW4ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB6LWluZGV4OiAxO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gIG1haW46Zm9jdXMge1xuICAgIG91dGxpbmU6IDA7IH1cblxuLm1hc3RoZWFkIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyLjVyZW0gMCAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gIC5tYXN0aGVhZC50aGVtZS1waW5rIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gICAgLm1hc3RoZWFkLnRoZW1lLXBpbmsgcCB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9XG4gICAgICAubWFzdGhlYWQudGhlbWUtcGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYXN0aGVhZCB7XG4gICAgICBwYWRkaW5nLXRvcDogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLm1hc3RoZWFkIHtcbiAgICAgIHBhZGRpbmctdG9wOiA2LjI1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLmJvcmRlci1ncmFwaGljOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogLTEuMjVyZW07XG4gICAgd2lkdGg6IDEzLjc1cmVtO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC5ib3JkZXItZ3JhcGhpYzphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMi41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTtcbiAgICAgICAgd2lkdGg6IDE1JTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1hc3RoZWFkLmJvcmRlci1ncmFwaGljOmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLm1hc3RoZWFkLmJvcmRlci1ncmFwaGljOmFmdGVyIHtcbiAgICAgICAgYm90dG9tOiA2LjI1cmVtOyB9IH1cbiAgLm1hc3RoZWFkX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWRfX2lubmVyOjpiZWZvcmUsIC5tYXN0aGVhZF9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgICAgZmxleC1iYXNpczogMDtcbiAgICAgICAgb3JkZXI6IDE7IH1cbiAgICAgIC5tYXN0aGVhZF9faW5uZXI6OmFmdGVyIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICAgIC5tYXN0aGVhZF9faW5uZXI6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IC0yLjVyZW07XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDIuNXJlbTtcbiAgICAgICAgbGVmdDogLTkuNTIzODElO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1hc3RoZWFkX19pbm5lcjpiZWZvcmUge1xuICAgICAgdG9wOiAtNXJlbTtcbiAgICAgIGJvdHRvbTogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5tYXN0aGVhZF9faW5uZXI6YmVmb3JlIHtcbiAgICAgIHRvcDogLTYuMjVyZW07XG4gICAgICBib3R0b206IDYuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC50aGVtZS1waW5rIC5tYXN0aGVhZF9faW5uZXI6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9IH1cbiAgLm1hc3RoZWFkX19jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMCAwIDIuNXJlbTtcbiAgICB6LWluZGV4OiAyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tYXN0aGVhZF9fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1hc3RoZWFkX19jb250ZW50IHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIHBhZGRpbmc6IDAgMi41cmVtIDVyZW0gMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1hc3RoZWFkX19jb250ZW50IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA3LjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAubWFzdGhlYWRfX2NvbnRlbnQge1xuICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAubWFzdGhlYWRfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWFzdGhlYWRfX3RleHQge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1hc3RoZWFkX190ZXh0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTUlOyB9IH1cbiAgLnRoZW1lLXBpbmsgLm1hc3RoZWFkX190aXRsZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC50aGVtZS1waW5rIC5tYXN0aGVhZF9fdGl0bGUgc3BhbiB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAubWFzdGhlYWRfX3RpdGxlICsgKiB7XG4gICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH1cbiAgLm1hc3RoZWFkX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLm1hc3RoZWFkX19pbWFnZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOS41MjM4MSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElO1xuICAgICAgICB3aWR0aDogMTE5LjA0NzYyJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX2ltYWdlIHtcbiAgICAgICAgaGVpZ2h0OiA0MHZoO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgICAgIC5tYXN0aGVhZF9faW1hZ2UgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JzsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tYXN0aGVhZF9faW1hZ2Uge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDU5LjUyMzgxJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOS41MjM4MSU7IH0gfVxuICAgIC5tYXN0aGVhZF9faW1hZ2UgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tYXN0aGVhZF9faW1hZ2UtLXN0cmV0Y2gge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgICAgICAubWFzdGhlYWRfX2ltYWdlLS1zdHJldGNoIGltZyB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZF9fZm9ybS13aWRlIHtcbiAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAubWFzdGhlYWRfX2Zvcm0td2lkZSB7XG4gICAgICBtYXJnaW4tdG9wOiA0LjM3NXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDguMTI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAubWFzdGhlYWRfX2Zvcm0td2lkZSB7XG4gICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogOS4zNzVyZW07IH0gfVxuICAubWFzdGhlYWRfX2RldGFpbC10ZXh0IHtcbiAgICBwYWRkaW5nOiAyLjVyZW0gMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX2RldGFpbC10ZXh0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOS41MjM4MSU7XG4gICAgICAgIHdpZHRoOiAxMTkuMDQ3NjIlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDkuNTIzODElO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA5LjUyMzgxJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1hc3RoZWFkX19kZXRhaWwtdGV4dCB7XG4gICAgICAgIHBhZGRpbmc6IDMuNzVyZW0gMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkLS1kZXRhaWwgLm1hc3RoZWFkX19pbm5lcjpiZWZvcmUge1xuICAgICAgY29udGVudDogbm9uZTsgfSB9XG4gIC5tYXN0aGVhZC0tZGV0YWlsIC5tYXN0aGVhZF9fY29udGVudCB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgLm1hc3RoZWFkLS1kZXRhaWwgLm1hc3RoZWFkX190ZXh0IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMi41cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC0tZGV0YWlsIC5tYXN0aGVhZF9fdGV4dCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9XG4gICAgICAgIC5tYXN0aGVhZC0tZGV0YWlsIC5tYXN0aGVhZF9fdGV4dDpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICB0b3A6IC05OTk5cHg7XG4gICAgICAgICAgbGVmdDogLTk5OTlweDtcbiAgICAgICAgICByaWdodDogLTk5OTlweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gICAgICAgIC5tYXN0aGVhZC0tZGV0YWlsIC5tYXN0aGVhZF9fdGV4dCA+ICoge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLm1hc3RoZWFkLS1kZXRhaWwgLm1hc3RoZWFkX190ZXh0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAubWFzdGhlYWQtLWRldGFpbCAubWFzdGhlYWRfX3RleHQge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAuNjI1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLS1kZXRhaWwgLm1hc3RoZWFkX19pbWFnZSB7XG4gICAgei1pbmRleDogMzsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC0tZGV0YWlsLnRoZW1lLXBpbmsgLm1hc3RoZWFkX190ZXh0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgICAgIC5tYXN0aGVhZC0tZGV0YWlsLnRoZW1lLXBpbmsgLm1hc3RoZWFkX190ZXh0OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH0gfVxuICAubWFzdGhlYWQtLWV2ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuICAgIC5tYXN0aGVhZC0tZXZlbnQgYSB7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjNzOyB9XG4gICAgICAubWFzdGhlYWQtLWV2ZW50IGE6aG92ZXIge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07IH1cbiAgICAubWFzdGhlYWQtLWV2ZW50LmJvcmRlci1ncmFwaGljOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogMDsgfVxuICAgIC5tYXN0aGVhZC0tZXZlbnQgbGkge1xuICAgICAgY29sb3I6ICNmZmY7IH1cbiAgLm1hc3RoZWFkLS1ldmVudCAubWFzdGhlYWRfX2lubmVyOmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5tYXN0aGVhZC0tZXZlbnQgLm1hc3RoZWFkX19pbm5lciB7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMy4xMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC0tZXZlbnQgLm1hc3RoZWFkX19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYXN0aGVhZC0tZXZlbnQgLm1hc3RoZWFkX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA1OC4zMzMzMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC0tZXZlbnQgLm1hc3RoZWFkX190ZXh0IHtcbiAgICAgIG1hcmdpbi10b3A6IDclOyB9IH1cbiAgLm1hc3RoZWFkX19wYW5lbCB7XG4gICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWRfX3BhbmVsIHtcbiAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX3BhbmVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX3BhbmVsIHtcbiAgICAgICAgd2lkdGg6IDQxLjY2NjY3JTtcbiAgICAgICAgcGFkZGluZzogMy4xMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAubWFzdGhlYWRfX3BhbmVsIHtcbiAgICAgICAgcGFkZGluZzogMy43NXJlbTtcbiAgICAgICAgd2lkdGg6IDMzLjMzMzMzJTsgfSB9XG4gICAgLm1hc3RoZWFkX19wYW5lbCBoMiB7XG4gICAgICBmb250LXNpemU6IDIuNjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkX19wYW5lbCBoMiB7XG4gICAgICAgICAgd2lkdGg6IDQwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fcGFuZWwgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAuNzY7IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkX19wYW5lbCBoMiB7XG4gICAgICAgICAgZm9udC1zaXplOiA1Ljc1cmVtOyB9IH1cbiAgICAubWFzdGhlYWRfX3BhbmVsIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBmb250LXNpemU6IDEuMjVyZW07XG4gICAgICBmb250LXdlaWdodDogNTAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkX19wYW5lbCB1bCB7XG4gICAgICAgICAgd2lkdGg6IDUwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fcGFuZWwgdWwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfSB9XG4gICAgLm1hc3RoZWFkX19wYW5lbCBsaSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXJyb3ctcmlnaHQtd2hpdGUuc3ZnXCIpO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMS4yNXJlbTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgN3B4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fcGFuZWwgbGkge1xuICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgMTZweDsgfSB9XG4gICAgLm1hc3RoZWFkX19wYW5lbCBhIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5tYXN0aGVhZC0tcG9zdCAubWFzdGhlYWRfX3RleHQge1xuICAgICAgd2lkdGg6IDgwJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFzdGhlYWQtLXBvc3QgLm1hc3RoZWFkX190ZXh0IHtcbiAgICAgIHdpZHRoOiA4NyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5tYXN0aGVhZC0tcG9zdCAubWFzdGhlYWRfX3RleHQgcCB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYXN0aGVhZC0tcG9zdCAubWFzdGhlYWRfX3RleHQgcCB7XG4gICAgICBtYXgtd2lkdGg6IDQxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFzdGhlYWQtLXByb2ZpbGUgLm1hc3RoZWFkX19pbm5lciB7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAubWFzdGhlYWQtLXByb2ZpbGUgLm1hc3RoZWFkX19pbm5lcjpiZWZvcmUge1xuICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogNzIuNTIzODElOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFzdGhlYWQtLXByb2ZpbGUgLm1hc3RoZWFkX19jb250ZW50IHtcbiAgICAgIHdpZHRoOiA2MyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC0tcHJvZmlsZSAubWFzdGhlYWRfX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA4NSU7IH0gfVxuICAubWFzdGhlYWRfX21ldGEge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWFzdGhlYWRfX21ldGE6OmJlZm9yZSwgLm1hc3RoZWFkX19tZXRhOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5tYXN0aGVhZF9fbWV0YTo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX21ldGEge1xuICAgICAgICB3aWR0aDogODAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAubWFzdGhlYWRfX21ldGEge1xuICAgICAgICB3aWR0aDogNjUlOyB9IH1cbiAgICAubWFzdGhlYWRfX21ldGEgZHQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogbGVmdDtcbiAgICAgIG1hcmdpbi1yaWdodDogMC4zMTI1cmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDsgfVxuICAgICAgLm1hc3RoZWFkX19tZXRhIGR0OmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCI6XCI7IH1cbiAgICAubWFzdGhlYWRfX21ldGEgZGQge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICBjbGVhcjogcmlnaHQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fbWV0YSBkZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgICAgIC5tYXN0aGVhZF9fbWV0YSBkZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC50aGVtZS1waW5rIC5tYXN0aGVhZF9fbWV0YSB7XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgLm1hc3RoZWFkX19jb250YWN0IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZF9fY29udGFjdCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOS41MjM4MSU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElO1xuICAgICAgICB3aWR0aDogMTE5LjA0NzYyJTtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA5LjUyMzgxJTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogOS41MjM4MSU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1hc3RoZWFkX19jb250YWN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAzNyU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWRfX2NvbnRhY3Qge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNy41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLm1hc3RoZWFkX19jb250YWN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDguNzVyZW07IH0gfVxuICAgIC5tYXN0aGVhZF9fY29udGFjdCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBpbWcge1xuICAgICAgICAgIG9yZGVyOiAyO1xuICAgICAgICAgIG1heC13aWR0aDogMTVyZW07IH0gfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkX19jb250YWN0IGltZyB7XG4gICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDIxLjI1cmVtO1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtZW5kOyB9IH1cbiAgICAubWFzdGhlYWRfX2NvbnRhY3QgZGwge1xuICAgICAgbWFyZ2luOiAwOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgICAubWFzdGhlYWRfX2NvbnRhY3QgZGwge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgIG1hcmdpbjogMS44NzVyZW0gMS44NzVyZW0gMS44NzVyZW0gMDsgfSB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAubWFzdGhlYWRfX2NvbnRhY3QgZGwge1xuICAgICAgICAgIG1hcmdpbjogMS44NzVyZW0gMCAwIDEuODc1cmVtO1xuICAgICAgICAgIGZsZXg6IDEgMTAwJTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBkbCB7XG4gICAgICAgICAgbWFyZ2luOiAzLjc1cmVtIDAgMCAzLjc1cmVtOyB9IH1cbiAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBkbCBhIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBkbCBkZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBkbCBkZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfSB9XG4gICAgICAgIC5tYXN0aGVhZF9fY29udGFjdCBkbCBkZDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIC5tYXN0aGVhZF9fc2Nyb2xsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgei1pbmRleDogMzsgfVxuICAgIC5tYXN0aGVhZF9fc2Nyb2xsIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIC5tYXN0aGVhZF9fc2Nyb2xsLmxlZnQge1xuICAgICAgbGVmdDogMDsgfVxuICAgIC5tYXN0aGVhZF9fc2Nyb2xsLmJnLW5hdnkgc3ZnIHtcbiAgICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgICAubWFzdGhlYWRfX3Njcm9sbC5iZy1uYXZ5IHN2ZyBwYXRoOmxhc3QtY2hpbGQge1xuICAgICAgICBzdHJva2U6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLm1hc3RoZWFkX19zY3JvbGwge1xuICAgICAgICB3aWR0aDogMTAlOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1hc3RoZWFkX19zY3JvbGwge1xuICAgICAgICByaWdodDogMi43NXJlbTtcbiAgICAgICAgd2lkdGg6IDMuNzVyZW07IH1cbiAgICAgICAgLm1hc3RoZWFkX19zY3JvbGwubGVmdCB7XG4gICAgICAgICAgbGVmdDogMi43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1hc3RoZWFkX19zY3JvbGwge1xuICAgICAgICByaWdodDogNS41cmVtOyB9XG4gICAgICAgIC5tYXN0aGVhZF9fc2Nyb2xsLmxlZnQge1xuICAgICAgICAgIGxlZnQ6IDUuNXJlbTsgfSB9XG4gICAgLm1hc3RoZWFkX19zY3JvbGwuYmctYmx1ZSB7XG4gICAgICBjb2xvcjogIzQxQTQ5NDsgfVxuICAgICAgLm1hc3RoZWFkX19zY3JvbGwuYmctYmx1ZSBzdmcge1xuICAgICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAgIC5tYXN0aGVhZF9fc2Nyb2xsLmJnLWJsdWUgc3ZnIHBhdGg6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIGNvbG9yOiAjNDFBNDk0OyB9XG5cbi5tYXN0aGVhZC1pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubWFzdGhlYWQtaW1hZ2VfX2lubmVyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtaW4taGVpZ2h0OiA4MnZoO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogOS4wNjI1cmVtIDAgMDtcbiAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAubWFzdGhlYWQtaW1hZ2VfX2lubmVyID4gKiB7XG4gICAgICBmbGV4OiAxIDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLm1hc3RoZWFkLWltYWdlX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmc6IDEwLjI1cmVtIDAgMS4yNXJlbTtcbiAgICAgICAgbWluLWhlaWdodDogNzB2aDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICAgICAgICBwYWRkaW5nOiAxNC43NXJlbSAwIDMuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAubWFzdGhlYWQtaW1hZ2VfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZzogMTZyZW0gMCAzLjc1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLWltYWdlLmJvcmRlci1ncmFwaGljIC5tYXN0aGVhZC1pbWFnZV9faW5uZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA4JTtcbiAgICB3aWR0aDogMjUlO1xuICAgIGhlaWdodDogMS4yNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gIC5tYXN0aGVhZC1pbWFnZV9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAubWFzdGhlYWQtaW1hZ2VfX2ltYWdlIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgIGZvbnQtZmFtaWx5OiAnb2JqZWN0LWZpdDogY292ZXI7JzsgfVxuICAubWFzdGhlYWQtaW1hZ2VfX3RleHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBhbGlnbi1zZWxmOiBmbGV4LWVuZDtcbiAgICBtYXJnaW4tdG9wOiAyLjVyZW07XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgei1pbmRleDogMjsgfVxuICAgIC5tYXN0aGVhZC1pbWFnZV9fdGV4dCB1bCB7XG4gICAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgICBkaXNwbGF5OiBmbGV4OyB9XG4gICAgICAubWFzdGhlYWQtaW1hZ2VfX3RleHQgdWwuYmctbmF2eSBhIHtcbiAgICAgICAgY29sb3I6ICM0MUE0OTQ7IH1cbiAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGV4dCB1bCBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgICAubWFzdGhlYWQtaW1hZ2VfX3RleHQgdWwgbGkgYSB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xODc1cmVtOyB9XG4gICAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGV4dCB1bCBsaSBhOmhvdmVyIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICB0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDsgfVxuICAgICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGV4dCB1bCBsaSBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGV4dCB1bCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUge1xuICAgIHdpZHRoOiA1OC4zMzMzMyU7IH1cbiAgICAubWFzdGhlYWQtaW1hZ2VfX3RpdGxlICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9XG4gICAgLm1hc3RoZWFkLWltYWdlX190aXRsZSBzdHJvbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgIC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUuZGlzcGxheS0xIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUuZGlzcGxheS0xIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9IH1cbiAgICAubWFzdGhlYWQtaW1hZ2VfX3RpdGxlLmRpc3BsYXktNCB7XG4gICAgICBtYXgtd2lkdGg6IDUwJTsgfVxuICAgICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkLWltYWdlX190aXRsZS5kaXNwbGF5LTQge1xuICAgICAgICAgIG1heC13aWR0aDogNDAlOyB9IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUuZGlzcGxheS00IHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDE0LjA2MjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubWFzdGhlYWQtaW1hZ2VfX3RpdGxlLmRpc3BsYXktNCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMC4zMTI1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLWltYWdlX19zaGFwZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICB3aWR0aDogNTAlOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUge1xuICAgICAgICB3aWR0aDogNzIlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlIHtcbiAgICAgICAgbWluLXdpZHRoOiAzNy42ODc1cmVtO1xuICAgICAgICBtYXgtd2lkdGg6IDMxLjI1cmVtOyB9IH1cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSBhbmQgKG1heC1oZWlnaHQ6IDkxMHB4KSB7XG4gICAgICAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlIHtcbiAgICAgICAgd2lkdGg6IDM1JTsgfSB9XG4gICAgLm1hc3RoZWFkLWltYWdlX19zaGFwZSBzdmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLm1hc3RoZWFkLWltYWdlX19zaGFwZVtjbGFzcyo9XCJiZy1cIl0ge1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuYmctbmF2eSBzdmcge1xuICAgICAgY29sb3I6ICMxNTFGMzU7IH1cbiAgICAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLmJnLWJsdWUgc3ZnIHtcbiAgICAgIGNvbG9yOiAjNDFBNDk0OyB9XG4gICAgLm1hc3RoZWFkLWltYWdlX19zaGFwZS5iZy1waW5rIHN2ZyB7XG4gICAgICBjb2xvcjogI0VCNUU5NDsgfVxuXG4ubWVudS1mZWF0dXJlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWVudS1mZWF0dXJlLnhsYXJnZS1vZmZzZXQtMSB7XG4gICAgICBtYXJnaW46IDAgYXV0bzsgfSB9XG4gIC5tZW51LWZlYXR1cmUgYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAubWVudS1mZWF0dXJlIGE6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMnB4IGRvdHRlZCAjMTUxRjM1OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1lbnUtZmVhdHVyZSBhIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogMTUuMzEyNXJlbTtcbiAgICAgICAgaGVpZ2h0OiAxNS4zMTI1cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTUuMzEyNXJlbTsgfVxuICAgICAgICAubWVudS1mZWF0dXJlIGEgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLm1lbnUtZmVhdHVyZSBhIHtcbiAgICAgICAgd2lkdGg6IDIxLjI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDIxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjEuMjVyZW07IH0gfVxuICAubWVudS1mZWF0dXJlX190ZXh0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTEuODc1cmVtO1xuICAgIGJvdHRvbTogMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHBhZGRpbmc6IDEuODc1cmVtO1xuICAgIHdpZHRoOiAxOS4zNzVyZW07XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0NCMDA2NDsgfVxuICAgIC5tZW51LWZlYXR1cmVfX3RleHQgLmRpc3BsYXktNiB7XG4gICAgICBsaW5lLWhlaWdodDogODcuNiU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM4cmVtOyB9XG4gICAgICAubWVudS1mZWF0dXJlX190ZXh0IC5kaXNwbGF5LTYgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubWVudS1mZWF0dXJlX190ZXh0IC5kaXNwbGF5LTYge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi42MjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAgICAgLm1lbnUtZmVhdHVyZV9fdGV4dCAuZGlzcGxheS02IHtcbiAgICAgICAgICBmb250LXNpemU6IDMuMzc1cmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH0gfVxuICAgIC5tZW51LWZlYXR1cmVfX3RleHQgcCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMTE3JTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNjI1cmVtO1xuICAgICAgbWF4LXdpZHRoOiA5LjI1cmVtOyB9XG4gICAgICAubWVudS1mZWF0dXJlX190ZXh0IHAgc3Ryb25nIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAgIC5tZW51LWZlYXR1cmVfX3RleHQgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyLjEyNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1lbnUtZmVhdHVyZV9fdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICBsZWZ0OiAxMDAlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxNS4zMTI1cmVtO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDEuNjI1cmVtIDIuMDYzcmVtIDJyZW0gMS42MjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgICAubWVudS1mZWF0dXJlX190ZXh0IHtcbiAgICAgICAgd2lkdGg6IDIxLjI1cmVtO1xuICAgICAgICBwYWRkaW5nOiAyLjEyNXJlbSAzLjEyNXJlbSAyLjEyNXJlbSAzLjEyNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lOyB9IH1cbiAgLm1lbnUtZmVhdHVyZSBwOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLm1lbnUtdG9nZ2xlIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDEuNjI1cmVtO1xuICByaWdodDogOCU7XG4gIG1hcmdpbi1yaWdodDogM3JlbTtcbiAgd2lkdGg6IDIuNXJlbTtcbiAgaGVpZ2h0OiAyLjVyZW07XG4gIHotaW5kZXg6IDI7XG4gIHRyYW5zaXRpb246IGFsbCAuMjVzIGVhc2Utb3V0OyB9XG4gIC5tZW51LXRvZ2dsZSBzcGFuOmJlZm9yZSwgLm1lbnUtdG9nZ2xlOmJlZm9yZSwgLm1lbnUtdG9nZ2xlOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMDtcbiAgICB3aWR0aDogMS44NzVyZW07XG4gICAgaGVpZ2h0OiAwLjEyNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxRjM1O1xuICAgIHRyYW5zaXRpb246IGFsbCAuMjVzIGVhc2Utb3V0OyB9XG4gICAgLmlzLXdoaXRlIC5tZW51LXRvZ2dsZSBzcGFuOmJlZm9yZSwgLmlzLXdoaXRlIC5tZW51LXRvZ2dsZTpiZWZvcmUsIC5pcy13aGl0ZSAubWVudS10b2dnbGU6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgICAuc2VhcmNoLW9wZW4gLm1lbnUtdG9nZ2xlIHNwYW46YmVmb3JlLCAuc2VhcmNoLW9wZW4gLm1lbnUtdG9nZ2xlOmJlZm9yZSwgLnNlYXJjaC1vcGVuIC5tZW51LXRvZ2dsZTphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxNTFGMzU7IH0gfVxuICAubWVudS10b2dnbGU6YmVmb3JlIHtcbiAgICB0b3A6IDA7IH1cbiAgLm1lbnUtdG9nZ2xlOmFmdGVyIHtcbiAgICB0b3A6IDAuNXJlbTsgfVxuICAubWVudS10b2dnbGUgc3BhbiB7XG4gICAgdGV4dC1pbmRlbnQ6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1vdXQ7XG4gICAgZmlsdGVyOiBjb250cmFzdCgyMzMuMzMlKTsgfVxuICAgIC5tZW51LXRvZ2dsZSBzcGFuOmJlZm9yZSB7XG4gICAgICB0b3A6IDAuMjVyZW07IH1cbiAgICAuaXMtd2hpdGUgLm1lbnUtdG9nZ2xlIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tZW51LXRvZ2dsZSB7XG4gICAgICBkaXNwbGF5OiBub25lOyB9IH1cbiAgLm1lbnUtdG9nZ2xlLmlzLWFjdGl2ZTpiZWZvcmUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gICAgdG9wOiAwLjVyZW07IH1cbiAgLm1lbnUtdG9nZ2xlLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpOyB9XG4gIC5tZW51LXRvZ2dsZS5pcy1hY3RpdmUgc3BhbiB7XG4gICAgb3BhY2l0eTogMDsgfVxuICAuaXMtd2hpdGUgLm1lbnUtdG9nZ2xlLmlzLWFjdGl2ZSBzcGFuOmJlZm9yZSwgLmlzLXdoaXRlIC5tZW51LXRvZ2dsZS5pcy1hY3RpdmU6YmVmb3JlLCAuaXMtd2hpdGUgLm1lbnUtdG9nZ2xlLmlzLWFjdGl2ZTphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzE1MUYzNTsgfVxuICAubWVudS1vcGVuIC5tZW51LXRvZ2dsZSxcbiAgLnNlYXJjaC1vcGVuIC5tZW51LXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGZpeGVkOyB9XG5cbi5tb3JlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAubW9yZSBoMiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubW9yZSBoMiB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgICAubW9yZSBoMjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0yLjVyZW07XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAxLjI1cmVtO1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1heC13aWR0aDogMTIuNXJlbTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5tb3JlIGgyOmFmdGVyIHtcbiAgICAgICAgICBib3R0b206IC0zLjEyNXJlbTsgfSB9XG4gIC5tb3JlX19pbm5lciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAzLjc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5tb3JlX19pbm5lciB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubW9yZV9faW5uZXIge1xuICAgICAgICBwYWRkaW5nLXRvcDogNi4yNXJlbTsgfSB9XG4gICAgLm1vcmVfX2lubmVyOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogLTkuNTIzODElO1xuICAgICAgcmlnaHQ6IC05LjUyMzgxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5tb3JlX19pbm5lcjpiZWZvcmUge1xuICAgICAgICAgIHJpZ2h0OiA4JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1vcmVfX2NhcmRzIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWZsb3c6IHJvdyB3cmFwO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0wLjYyNXJlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTAuNjI1cmVtOyB9XG4gICAgICAubW9yZV9fY2FyZHMgPiAuY29udGVudC1jYXJkIHtcbiAgICAgICAgZmxleDogMCAwIGF1dG87XG4gICAgICAgIHdpZHRoOiBjYWxjKDMzLjMzMzMzJSAtIDEuMjVyZW0pO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42MjVyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMC42MjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1vcmVfX2NhcmRzIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNDY4N3JlbTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTEuMjQ2ODdyZW07IH1cbiAgICAgIC5tb3JlX19jYXJkcyA+IC5jb250ZW50LWNhcmQge1xuICAgICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgICAgd2lkdGg6IGNhbGMoMzMuMzMzMzMlIC0gMi40OTM3NXJlbSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxLjI0Njg3cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuMjQ2ODdyZW07IH0gfVxuICAubW9yZV9fY2FyZHMgLnNsaWNrLXRyYWNrID4gKiB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjVyZW07IH1cbiAgLm1vcmUgLnNsaWNrLWxpc3Qge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9XG4gIC5tb3JlLnRoZW1lLWRhcmsgaDIge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMxYTFhMWE7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLm1vcmUudGhlbWUtZGFyayBoMjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDFBNDk0OyB9XG4gIC5tb3JlLnRoZW1lLWRhcmsgLm1vcmVfX2lubmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzFhMWExYTsgfVxuXG4jbm9JdGVtc0ZvdW5kTWVzc2FnZSBoMiB7XG4gIG1hcmdpbi1ib3R0b206IDZyZW07IH1cblxuI25vSXRlbXNGb3VuZE1lc3NhZ2UgYnV0dG9uIHtcbiAgY29sb3I6ICNFQjVFOTQ7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAjbm9JdGVtc0ZvdW5kTWVzc2FnZSBidXR0b246aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuLnNlYXJjaC10b2dnbGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMS4yNXJlbTtcbiAgcmlnaHQ6IDglO1xuICB3aWR0aDogMi41cmVtO1xuICBoZWlnaHQ6IDIuNXJlbTtcbiAgei1pbmRleDogMjtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxLjYyNXJlbTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIDFweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlYXJjaC10b2dnbGUge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMy43NXJlbTtcbiAgICAgIHRvcDogMy43NXJlbTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogMXJlbTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAwOyB9IH1cbiAgLmlzLXdoaXRlIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24td2hpdGUuc3ZnXCIpOyB9XG4gICAgLmlzLXdoaXRlIC5zZWFyY2gtdG9nZ2xlIHNwYW4ge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuaXMtd2hpdGUgLnNlYXJjaC10b2dnbGU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAgIC5pcy13aGl0ZSAuc2VhcmNoLXRvZ2dsZTpmb2N1cyBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAubWVudS1vcGVuLmlzLXdoaXRlIC5zZWFyY2gtdG9nZ2xlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9zZWFyY2gtaWNvbi1ibGFjay5zdmdcIik7IH0gfVxuICAuaXMtd2hpdGUgLnNlYXJjaC10b2dnbGUuaXMtYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24tYmxhY2suc3ZnXCIpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLm1lbnUtb3BlbiAuc2VhcmNoLXRvZ2dsZSxcbiAgICAuc2VhcmNoLW9wZW4gLnNlYXJjaC10b2dnbGUge1xuICAgICAgcG9zaXRpb246IGZpeGVkOyB9IH1cblxuLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYWdpbmF0aW9uIHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnaW5hdGlvbiB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAtMS44MTNyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5wYWdpbmF0aW9uIGxpOmZpcnN0LWNoaWxkLCAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIGZsZXg6IDEgMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnBhZ2luYXRpb24gbGk6Zmlyc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFnaW5hdGlvbiBsaTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvOyB9IH1cbiAgLnBhZ2luYXRpb24gLmhvbGxvdy5idXR0b24uY2xlYXIge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYm9yZGVyLWNvbG9yOiAjQ0IwMDY0O1xuICAgIGNvbG9yOiAjQ0IwMDY0O1xuICAgIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICBwYWRkaW5nOiAwLjU2MjVyZW0gMS4yNXJlbTtcbiAgICBtaW4taGVpZ2h0OiAyLjRyZW07IH1cbiAgICAucGFnaW5hdGlvbiAuaG9sbG93LmJ1dHRvbi5jbGVhcjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjQ0IwMDY0O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucGFnaW5hdGlvbiAuaG9sbG93LmJ1dHRvbi5jbGVhciB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH0gfVxuICAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyIHtcbiAgICBwYWRkaW5nOiAwLjgxMjVyZW07XG4gICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiOyB9XG4gICAgLnBhZ2luYXRpb24gLmJ1dHRvbi5jbGVhciwgLnBhZ2luYXRpb24gLmJ1dHRvbi5jbGVhci5kaXNhYmxlZCwgLnBhZ2luYXRpb24gLmJ1dHRvbi5jbGVhcltkaXNhYmxlZF0sIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXIuZGlzYWJsZWQ6aG92ZXIsIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXJbZGlzYWJsZWRdOmhvdmVyLCAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyLmRpc2FibGVkOmZvY3VzLCAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAgIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXI6aG92ZXIsIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXI6Zm9jdXMge1xuICAgICAgY29sb3I6IGJsYWNrOyB9XG4gICAgLnBhZ2luYXRpb24gLmJ1dHRvbi5jbGVhci5pcy1hY3RpdmUsIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXIuaXMtYWN0aXZlLmRpc2FibGVkLCAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyLmlzLWFjdGl2ZVtkaXNhYmxlZF0sIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXIuaXMtYWN0aXZlLmRpc2FibGVkOmhvdmVyLCAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyLmlzLWFjdGl2ZVtkaXNhYmxlZF06aG92ZXIsIC5wYWdpbmF0aW9uIC5idXR0b24uY2xlYXIuaXMtYWN0aXZlLmRpc2FibGVkOmZvY3VzLCAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyLmlzLWFjdGl2ZVtkaXNhYmxlZF06Zm9jdXMge1xuICAgICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgICAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyLmlzLWFjdGl2ZTpob3ZlciwgLnBhZ2luYXRpb24gLmJ1dHRvbi5jbGVhci5pcy1hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICM5MjEyNDM7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucGFnaW5hdGlvbiAuYnV0dG9uLmNsZWFyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG4gIC5wYWdpbmF0aW9uIC5pcy1hY3RpdmUgYSB7XG4gICAgY29sb3I6ICNFQjVFOTQ7IH1cblxuLnBhbmVsIHtcbiAgcGFkZGluZzogMi41cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAucGFuZWwge1xuICAgICAgcGFkZGluZzogMy43NXJlbSAwOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucGFuZWwge1xuICAgICAgcGFkZGluZzogNXJlbSAwOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wYW5lbCB7XG4gICAgICBwYWRkaW5nOiA2LjI1cmVtIDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAubWFzdGhlYWQtLWRldGFpbCArIC5wYW5lbCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfSB9XG5cbi5wbGF5LXZpZGVvIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG4gIC5wbGF5LXZpZGVvOmJlZm9yZSwgLnBsYXktdmlkZW86YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSkgdHJhbnNsYXRlWSgtNTAlKTsgfVxuICAucGxheS12aWRlbzpiZWZvcmUge1xuICAgIHdpZHRoOiA1Ljc1cmVtO1xuICAgIGhlaWdodDogNS43NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0O1xuICAgIGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC4yNSwgMC40NiwgMC40NSwgMC45NCk7IH1cbiAgLnBsYXktdmlkZW86YWZ0ZXIge1xuICAgIGJvcmRlci10b3A6IDI1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItbGVmdDogNDNweCBzb2xpZCAjZmZmZmZmO1xuICAgIHotaW5kZXg6IDM7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuMjUsIDAuNDYsIDAuNDUsIDAuOTQpOyB9XG4gIC5wbGF5LXZpZGVvOmhvdmVyOmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgfVxuICAucGxheS12aWRlbzpob3ZlcjphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICMwMDAwMDA7IH1cbiAgLnBsYXktdmlkZW8gaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTsgfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAucHJpbWFyeS1tZW51IHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDg0JTsgfSB9XG5cbi5wcmltYXJ5LW1lbnUgdWwge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLnByaW1hcnktbWVudSB1bCBsaSB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBhLFxuICAucHJpbWFyeS1tZW51IHVsIGxpID4gc3BhbixcbiAgLnByaW1hcnktbWVudSB1bCBsaSA+IGJ1dHRvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IGEsXG4gICAgICAucHJpbWFyeS1tZW51IHVsIGxpID4gc3BhbixcbiAgICAgIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBidXR0b24ge1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxLjI1cmVtOyB9IH1cbiAgLnByaW1hcnktbWVudSB1bCBsaSA+IHNwYW4sXG4gIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBidXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgICAucHJpbWFyeS1tZW51IHVsIGxpID4gc3BhbixcbiAgICAgIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBidXR0b24ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IHNwYW46YmVmb3JlLCAucHJpbWFyeS1tZW51IHVsIGxpID4gc3BhbjphZnRlcixcbiAgICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IGJ1dHRvbjpiZWZvcmUsXG4gICAgICAgIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBidXR0b246YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM4YThhOGE7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IHNwYW46YmVmb3JlLFxuICAgICAgICAucHJpbWFyeS1tZW51IHVsIGxpID4gYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjEyNXJlbTsgfVxuICAgICAgICAucHJpbWFyeS1tZW51IHVsIGxpID4gc3BhbjphZnRlcixcbiAgICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IGJ1dHRvbjphZnRlciB7XG4gICAgICAgICAgcmlnaHQ6IDAuMzEyNXJlbTtcbiAgICAgICAgICB3aWR0aDogMC4xMjVyZW07XG4gICAgICAgICAgaGVpZ2h0OiAwLjc1cmVtOyB9XG4gICAgICAgIC5wcmltYXJ5LW1lbnUgdWwgbGkgPiBzcGFuLmlzLWFjdGl2ZTphZnRlcixcbiAgICAgICAgLnByaW1hcnktbWVudSB1bCBsaSA+IGJ1dHRvbi5pcy1hY3RpdmU6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDA7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wcmltYXJ5LW1lbnUgPiB1bCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMC45Mzc1cmVtOyB9XG4gICAgLnByaW1hcnktbWVudSA+IHVsOjpiZWZvcmUsIC5wcmltYXJ5LW1lbnUgPiB1bDo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICBjb250ZW50OiAnICc7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7IH1cbiAgICAucHJpbWFyeS1tZW51ID4gdWw6OmFmdGVyIHtcbiAgICAgIGNsZWFyOiBib3RoOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgLnByaW1hcnktbWVudSA+IHVsIHtcbiAgICBtYXJnaW4tcmlnaHQ6IC0xLjg3NXJlbTsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDsgfSB9XG5cbi5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYSxcbi5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gc3Bhbixcbi5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYnV0dG9uIHtcbiAgZm9udC1zaXplOiAycmVtO1xuICBsaW5lLWhlaWdodDogMS4zMjtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGNvbG9yOiAjMTUxRjM1O1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICBmb250LXdlaWdodDogNzAwO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBhLFxuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gc3BhbixcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBwYWRkaW5nOiAwLjc1cmVtIDFyZW0gMS42ODhyZW0gMXJlbTsgfVxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBidXR0b246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDAuOTM3NXJlbTtcbiAgICAgICAgYm90dG9tOiAwLjc1cmVtO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgaGVpZ2h0OiAwLjMxMjVyZW07XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM0MUE0OTQ7XG4gICAgICAgIHRyYW5zaXRpb246IHdpZHRoIC4xNXMgZWFzZS1pbi1vdXQ7IH1cbiAgICAgIC5pcy13aGl0ZSAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGEsIC5pcy13aGl0ZVxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBzcGFuLCAuaXMtd2hpdGVcbiAgICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICNmZmZmZmY7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYSxcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IHNwYW4sXG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBidXR0b24ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAxLjg3NXJlbTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfVxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBhOmFmdGVyLFxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBzcGFuOmFmdGVyLFxuICAgICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBidXR0b246YWZ0ZXIge1xuICAgICAgICBsZWZ0OiAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NC45OTg3NWVtKSB7XG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBhOmhvdmVyLCAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGE6Zm9jdXMsXG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBzcGFuOmhvdmVyLFxuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gc3Bhbjpmb2N1cyxcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGJ1dHRvbjpob3ZlcixcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGJ1dHRvbjpmb2N1cyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGE6aG92ZXI6YWZ0ZXIsIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYTpmb2N1czphZnRlcixcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IHNwYW46aG92ZXI6YWZ0ZXIsXG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBzcGFuOmZvY3VzOmFmdGVyLFxuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYnV0dG9uOmhvdmVyOmFmdGVyLFxuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYnV0dG9uOmZvY3VzOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYTpmb2N1cyxcbiAgICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IHNwYW46Zm9jdXMsXG4gICAgLnByaW1hcnktbWVudSA+IHVsID4gbGkgPiBidXR0b246Zm9jdXMge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IHNwYW46YmVmb3JlLFxuICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IGJ1dHRvbjpiZWZvcmUge1xuICAgIHRvcDogMS4yNXJlbTsgfVxuICAucHJpbWFyeS1tZW51ID4gdWwgPiBsaSA+IHNwYW46YWZ0ZXIsXG4gIC5wcmltYXJ5LW1lbnUgPiB1bCA+IGxpID4gYnV0dG9uOmFmdGVyIHtcbiAgICB0b3A6IDAuOTM3NXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnByaW1hcnktbWVudSA+IHVsID4gbGkuaXMtYWN0aXZlID4gYTphZnRlcixcbiAgLnByaW1hcnktbWVudSA+IHVsID4gbGkuaXMtYWN0aXZlID4gc3BhbjphZnRlcixcbiAgLnByaW1hcnktbWVudSA+IHVsID4gbGkuaXMtYWN0aXZlID4gYnV0dG9uOmFmdGVyIHtcbiAgICB3aWR0aDogMS4yNXJlbTsgfSB9XG5cbi5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAyLjE4NzVyZW0gMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0YwRjRGNTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzQuOTk4NzVlbSkge1xuICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC05LjUyMzgxJTtcbiAgICAgIG1hcmdpbi1yaWdodDogLTkuNTIzODElO1xuICAgICAgd2lkdGg6IDExOS4wNDc2MiU7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcGFkZGluZy1sZWZ0OiA5LjUyMzgxJTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDkuNTIzODElO1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNTYyNXJlbTsgfVxuICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdi5pcy1hY3RpdmUge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IC5jbG9zZS1idXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMC41cmVtO1xuICAgICAgbWFyZ2luLXJpZ2h0OiAtMy43NXJlbTtcbiAgICAgIHJpZ2h0OiA4JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcGFkZGluZy10b3A6IDguMTg3NXJlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA0LjI1cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDYuODEyNXJlbTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgcGFkZGluZy1sZWZ0OiA4JTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDglO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwJSk7XG4gICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCB0cmFuc2Zvcm0gMHMgMC4yNXM7IH1cbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYuaXMtYWN0aXZlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpLCB0cmFuc2Zvcm0gMHM7IH0gfVxuICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjU2MjVyZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45Mzc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYSxcbiAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIHNwYW4sXG4gICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSBidXR0b24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMzEyNXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGNvbG9yOiAjMTUxRjM1O1xuICAgICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYSxcbiAgICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSBzcGFuLFxuICAgICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIGJ1dHRvbiB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMS4yNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIGEsXG4gICAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgc3BhbixcbiAgICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSBidXR0b24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSBhOmhvdmVyLCAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIGE6Zm9jdXMsXG4gICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIHNwYW46aG92ZXIsXG4gICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIHNwYW46Zm9jdXMsXG4gICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIGJ1dHRvbjpob3ZlcixcbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICMzNDgzNzg7IH1cbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYTpmb2N1cyxcbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgc3Bhbjpmb2N1cyxcbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgd2lkdGg6IGZpdC1jb250ZW50OyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgc3BhbixcbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgc3BhbjpiZWZvcmUsXG4gICAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgdWwgbGkgYnV0dG9uOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAwLjQzNzVyZW07IH1cbiAgICAgICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiB1bCBsaSBzcGFuOmFmdGVyLFxuICAgICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2IHVsIGxpIGJ1dHRvbjphZnRlciB7XG4gICAgICAgICAgdG9wOiAwLjEyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgPiBkaXYgPiB1bCA+IGxpIHtcbiAgICB3aWR0aDogNTAlOyB9IH1cblxuLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc0Ljk5ODc1ZW0pIHtcbiAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2ID4gZGl2ID4gdWwgPiBsaSA+IHVsIHtcbiAgICAgIG1hcmdpbjogMS44NzVyZW0gMCAxLjg3NXJlbSAyLjVyZW07IH1cbiAgICAgIC5wcmltYXJ5LW1lbnUgLnN1Yi1uYXYgPiBkaXYgPiB1bCA+IGxpID4gdWwuaXMtYWN0aXZlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMCUpO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgdHJhbnNmb3JtIDBzIDAuMjVzOyB9XG4gICAgICAucHJpbWFyeS1tZW51IC5zdWItbmF2ID4gZGl2ID4gdWwgPiBsaSA+IHVsLmlzLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKSwgdHJhbnNmb3JtIDBzOyB9IH1cbiAgLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCA+IGxpID4gYSxcbiAgLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCA+IGxpID4gc3BhbixcbiAgLnByaW1hcnktbWVudSAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCA+IGxpID4gYnV0dG9uIHtcbiAgICBjb2xvcjogIzE1MUYzNTsgfVxuXG4uc2VhcmNoLXJlc3VsdHMge1xuICBtYXJnaW46IDMuNzVyZW0gMDsgfVxuICAuc2VhcmNoLXJlc3VsdHMgLmRpc3BsYXktNSB7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0cyAuZGlzcGxheS01IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMy43NXJlbTsgfSB9XG4gIC5zZWFyY2gtcmVzdWx0cyAuc2VhcmNoLXJlc3VsdC1jYXJkLnNwZWNzIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgLnNlYXJjaC1yZXN1bHRzIC5zZWFyY2gtcmVzdWx0LWNhcmQuc3BlY3MgYTpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAycHggZG90dGVkOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdHMge1xuICAgICAgbWFyZ2luOiA1LjYyNXJlbSAwIDcuMTI1cmVtIDA7IH0gfVxuXG4uc2VhcmNoLXJlc3VsdC1jYXJkIHtcbiAgcGFkZGluZzogMi41cmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgbWFyZ2luLXRvcDogLTFweDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHQtY2FyZCB7XG4gICAgICBwYWRkaW5nOiAzLjc1cmVtIDA7IH0gfVxuICAuc2VhcmNoLXJlc3VsdC1jYXJkIGgyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAuc2VhcmNoLXJlc3VsdC1jYXJkIGgyIGEge1xuICAgICAgY29sb3I6ICMwMDAwMDA7XG4gICAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgICAgIC5zZWFyY2gtcmVzdWx0LWNhcmQgaDIgYTpob3ZlciwgLnNlYXJjaC1yZXN1bHQtY2FyZCBoMiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc2VhcmNoLXJlc3VsdC1jYXJkIGgyIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yNXJlbTtcbiAgICAgICAgd2lkdGg6IDg1JTsgfSB9XG4gIC5zZWFyY2gtcmVzdWx0LWNhcmQgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0LWNhcmQgcCB7XG4gICAgICAgIHdpZHRoOiA5MCU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zZWFyY2gtcmVzdWx0LWNhcmQgcCB7XG4gICAgICAgIHdpZHRoOiA3NSU7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHQtY2FyZF9fbGluayB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7IH0gfVxuICAuc2VhcmNoLXJlc3VsdC1jYXJkX19saW5rIGgyIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLnNlYXJjaC1yZXN1bHQtY2FyZF9fbGluayBwIHtcbiAgICBjb2xvcjogIzE1MUYzNTsgfVxuICAuc2VhcmNoLXJlc3VsdC1jYXJkX19saW5rOmhvdmVyIGgyIHtcbiAgICBjb2xvcjogI0VCNUU5NDsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWFyY2gtcmVzdWx0LWNhcmRfX3RleHQge1xuICAgICAgZmxleDogMTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHQtY2FyZF9faW1hZ2Uge1xuICAgICAgbWF4LXdpZHRoOiA4Ljc1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuc2VhcmNoLXJlc3VsdC1jYXJkX19pbWFnZSB7XG4gICAgICB3aWR0aDogMjUlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDEuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNlYXJjaC1yZXN1bHQtY2FyZF9faW1hZ2Uge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAuc2Vjb25kYXJ5LWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5zZWNvbmRhcnktY29udGVudCA+ICoge1xuICAgIHdpZHRoOiA3NSU7XG4gICAgbWFyZ2luLWxlZnQ6IDEuNXJlbTsgfSB9XG5cbi5zZWNvbmRhcnktY29udGVudCBhc2lkZSBoMiB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc2Vjb25kYXJ5LWNvbnRlbnQgYXNpZGUgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLnNlY29uZGFyeS1jb250ZW50IGFzaWRlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41NjI1cmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDIuMDYyNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuOTM3NXJlbTsgfSB9XG5cbi5zZWNvbmRhcnktbWVudSBoMiB7XG4gIGZvbnQtc2l6ZTogMS4zMTI1cmVtO1xuICBsaW5lLWhlaWdodDogMS4yODtcbiAgbWFyZ2luLWJvdHRvbTogMC44NzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc2Vjb25kYXJ5LW1lbnUgaDIge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07IH0gfVxuXG4uc2Vjb25kYXJ5LW1lbnUgdWwge1xuICBwYWRkaW5nOiAxLjg3NXJlbSAyLjVyZW07XG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAuc2Vjb25kYXJ5LW1lbnUgdWw6OmJlZm9yZSwgLnNlY29uZGFyeS1tZW51IHVsOjphZnRlciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNvbnRlbnQ6ICcgJztcbiAgICAgIGZsZXgtYmFzaXM6IDA7XG4gICAgICBvcmRlcjogMTsgfVxuICAgIC5zZWNvbmRhcnktbWVudSB1bDo6YWZ0ZXIge1xuICAgICAgY2xlYXI6IGJvdGg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5zZWNvbmRhcnktbWVudSB1bCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAuc2Vjb25kYXJ5LW1lbnUgdWwgYSB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgY3ViaWMtYmV6aWVyKDAuNjQ1LCAwLjA0NSwgMC4zNTUsIDEpO1xuICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplOyB9XG4gICAgLnNlY29uZGFyeS1tZW51IHVsIGE6aG92ZXIge1xuICAgICAgY29sb3I6ICM0MUE0OTQ7IH1cbiAgLnNlY29uZGFyeS1tZW51IHVsIGxpIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBwYWRkaW5nLWxlZnQ6IDEuMjVyZW07IH1cbiAgICAuc2Vjb25kYXJ5LW1lbnUgdWwgbGkgYSxcbiAgICAuc2Vjb25kYXJ5LW1lbnUgdWwgbGkgc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgIC5zZWNvbmRhcnktbWVudSB1bCBsaSBhOjpiZWZvcmUsXG4gICAgICAuc2Vjb25kYXJ5LW1lbnUgdWwgbGkgc3Bhbjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogY2FsYygxMDAlICsgMC43NXJlbSk7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWcvY2hldnJvbi1yaWdodC5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVyZW07XG4gICAgICAgIGhlaWdodDogMC41cmVtO1xuICAgICAgICBwYWRkaW5nOiAwLjVyZW07IH1cbiAgICAuc2Vjb25kYXJ5LW1lbnUgdWwgbGk6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgLnNlY29uZGFyeS1tZW51IHVsIGxpLmlzLWFjdGl2ZSBhIHtcbiAgICAgIGNvbG9yOiAjNDFBNDk0OyB9XG5cbnVsW2NsYXNzXj1tdWx0aWxldmVsLWxpbmt1bF0ge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgdWxbY2xhc3NePW11bHRpbGV2ZWwtbGlua3VsXSBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbnNwYW5bY2xhc3NePWN1cnJlbnRicmFuY2hdIGEge1xuICBjb2xvcjogIzQxQTQ5NDtcbiAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuXG4jcmVjaXRlLWhlYWRlciAucmVjaXRlLWNvbnRyb2xzIGJ1dHRvbiB7XG4gIGZpbHRlcjogZ3JheXNjYWxlKDEpOyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gIC5yZWxhdGVkIGgyIHtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtOyB9IH1cblxuLnJlbGF0ZWQgLmRpc3BsYXktNSB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIGxpbmUtaGVpZ2h0OiA5NS4yJTtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5yZWxhdGVkIC5kaXNwbGF5LTUge1xuICAgICAgZm9udC1zaXplOiAyLjgxMjVyZW07IH0gfVxuXG4ucmVsYXRlZCBoMyB7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICBmb250LXdlaWdodDogNzAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucmVsYXRlZCBoMyB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAycmVtOyB9IH1cblxuLnJlbGF0ZWQgYTpob3ZlciBoMyB7XG4gIGNvbG9yOiAjNDFBNDk0OyB9XG5cbi5yZWxhdGVkLmludmVydCBhLFxuLnJlbGF0ZWQuaW52ZXJ0IGgzIHtcbiAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnJlbGF0ZWQtYXNpZGUtY2FyZCB7XG4gIHBhZGRpbmc6IDIuMTI1cmVtIDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAwMDAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgbWFyZ2luLXRvcDogLTFweDsgfVxuICAucmVsYXRlZC1hc2lkZS1jYXJkX19saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgICAgLnJlbGF0ZWQtYXNpZGUtY2FyZF9fbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7IH0gfVxuICAucmVsYXRlZC1hc2lkZS1jYXJkX19saW5rIC5yZWxhdGVkLWFzaWRlLWNhcmRfX3RpdGxlIHtcbiAgICBjb2xvcjogIzAwMDAwMDsgfVxuICAucmVsYXRlZC1hc2lkZS1jYXJkX19pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICBtYXgtd2lkdGg6IDguNzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5yZWxhdGVkLWFzaWRlLWNhcmRfX2ltYWdlIHtcbiAgICAgICAgbWFyZ2luOiAwIDIwcHggMCAwOyB9IH1cbiAgLnJlbGF0ZWQtYXNpZGUtY2FyZF9fdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgbWF4LXdpZHRoOiAxNy44NzVyZW07IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAgIC5yZWxhdGVkLWFzaWRlLWNhcmRfX3RpdGxlIHtcbiAgICAgICAgZmxleDogMTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5yZWxhdGVkLWFzaWRlLWNhcmRfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjMxMjVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQzNzVyZW07IH0gfVxuXG4ucmV2ZWFsIHtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAucmV2ZWFsIHtcbiAgICAgIHdpZHRoOiA4NCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMS4yNXJlbTtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgbWluLWhlaWdodDogMDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHRvcDogNTAlICFpbXBvcnRhbnQ7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTcwJSk7IH0gfVxuICAucmV2ZWFsX19jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICAgIHBhZGRpbmc6IDEuMjVyZW07XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAucmV2ZWFsX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMi41cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucmV2ZWFsX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMy43NXJlbTsgfSB9XG4gIC5yZXZlYWwtLXZpZGVvIC5yZXZlYWxfX2NvbnRlbnQge1xuICAgIHBhZGRpbmc6IDA7IH1cbiAgLnJldmVhbCAucmVzcG9uc2l2ZS1lbWJlZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAucmV2ZWFsIC5jbG9zZS1idXR0b24ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0yLjVyZW07XG4gICAgcmlnaHQ6IDA7IH1cblxuLnJldmVhbC1jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ucm91bmQtb2ZmIHtcbiAgcGFkZGluZzogMi41cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxYTFhMWE7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIGFuZCAobWF4LXdpZHRoOiA2My45OTg3NWVtKSB7XG4gICAgLnJvdW5kLW9mZiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnJvdW5kLW9mZiB7XG4gICAgICBwYWRkaW5nOiAzLjc1cmVtIDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnJvdW5kLW9mZiB7XG4gICAgICBwYWRkaW5nOiA1cmVtIDA7IH0gfVxuICAucm91bmQtb2ZmIGgyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5yb3VuZC1vZmYgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogMTAwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5yb3VuZC1vZmYgLmJ1dHRvbiB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAucm91bmQtb2ZmIC5idXR0b24ge1xuICAgICAgd2lkdGg6IDEwMCU7IH0gfVxuXG4uc2VjdGlvbi1mZWF0dXJlc19faXRlbSB7XG4gIGJvcmRlci10b3A6IDEwcHggc29saWQgI0VCNUU5NDtcbiAgcGFkZGluZy10b3A6IDEuMjVyZW07XG4gIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zZWN0aW9uLWZlYXR1cmVzX19pdGVtIHtcbiAgICAgIG1hcmdpbi10b3A6IDMuNzVyZW07XG4gICAgICBwYWRkaW5nLXRvcDogMS44NzVyZW07IH0gfVxuXG4uc2VjdGlvbi1mZWF0dXJlc19fbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjb2xvcjogIzE1MUYzNTsgfVxuXG4uc2VjdGlvbi1mZWF0dXJlc19fdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwLjVyZW07XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0cmFuc2l0aW9uOiBjb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cblxuLnNlY3Rpb24tZmVhdHVyZXNfX2xpbms6aG92ZXIgcCB7XG4gIGNvbG9yOiAjMTUxRjM1OyB9XG5cbi5zZWN0aW9uLWZlYXR1cmVzX19saW5rOmhvdmVyIC5zZWN0aW9uLWZlYXR1cmVzX190aXRsZSB7XG4gIGNvbG9yOiAjRUI1RTk0OyB9XG5cbi5zZWN0aW9uLWZlYXR1cmVzIHA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1ib3R0b206IDA7IH1cblxuLnNraXAtbGlua19fY29udGFpbmVyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIHdpZHRoOiA4NCU7IH1cblxuLnNraXAtbGluayBhIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC02MjQuOTM3NXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDtcbiAgY29sb3I6ICMwMDAwMDA7IH1cbiAgLnNraXAtbGluayBhOmZvY3VzIHtcbiAgICBsZWZ0OiAwO1xuICAgIHotaW5kZXg6IDQ7IH1cblxuLnNpdGUtc2VhcmNoIHtcbiAgbWFyZ2luOiAxMi41cmVtIGF1dG8gMy4xMjVyZW07XG4gIHdpZHRoOiA4NCU7IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zaXRlLXNlYXJjaCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMi41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zaXRlLXNlYXJjaCBsYWJlbCBpbnB1dCB7XG4gICAgICBoZWlnaHQ6IDYuMjVyZW07XG4gICAgICBmb250LXNpemU6IDMuNzVyZW07XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDVlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLnNpdGUtc2VhcmNoIGxhYmVsIGlucHV0IHtcbiAgICAgIGhlaWdodDogOC4xMjVyZW07XG4gICAgICBmb250LXNpemU6IDUuNjI1cmVtOyB9IH1cblxuaW5wdXQuYm9yZGVyLWJvdHRvbSB7XG4gIGJvcmRlci10b3A6IDA7XG4gIGJvcmRlci1yaWdodDogMDtcbiAgYm9yZGVyLWxlZnQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgYm9yZGVyLXdpZHRoOiAwLjMxMjVyZW07XG4gIGJvcmRlci1jb2xvcjogI0VCNUU5NDtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1zaXplOiAxLjI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgY29sb3I6ICMxNTFGMzU7IH1cbiAgaW5wdXQuYm9yZGVyLWJvdHRvbTo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gIGlucHV0LmJvcmRlci1ib3R0b206Zm9jdXMge1xuICAgIGJveC1zaGFkb3c6IDBweCAycHggMHB4IDBweCAjMWExYTFhO1xuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1sZWZ0OiAwO1xuICAgIGJvcmRlci13aWR0aDogMC4zMTI1cmVtO1xuICAgIGJvcmRlci1jb2xvcjogIzFhMWExYTsgfVxuXG4uc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuICB3aWR0aDogMS4yNXJlbTtcbiAgaGVpZ2h0OiAxcmVtOyB9XG4gIC5zbGljay1wcmV2OmJlZm9yZSwgLnNsaWNrLW5leHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lOyB9XG4gIC5zbGljay1wcmV2OmZvY3VzLCAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZEQzQwMDsgfVxuXG4uc2xpY2stbmV4dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9hcnJvdy1yaWdodC5zdmdcIik7IH1cbiAgLnNsaWNrLW5leHQ6aG92ZXIsIC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYXJyb3ctcmlnaHQuc3ZnXCIpOyB9XG5cbi5zbGljay1wcmV2IHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LWxlZnQuc3ZnXCIpOyB9XG4gIC5zbGljay1wcmV2OmhvdmVyLCAuc2xpY2stcHJldjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2Fycm93LWxlZnQuc3ZnXCIpOyB9XG5cbipbY2xhc3MqPVwiaW52ZXJ0XCJdIC5zbGljay1kb3RzIGJ1dHRvbiB7XG4gIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjZmZmZmZmIGluc2V0OyB9XG5cbi5zbGljay1kb3RzIGxpIHtcbiAgd2lkdGg6IDEzcHg7XG4gIGhlaWdodDogMTNweDtcbiAgbWFyZ2luOiAwIDdweDsgfVxuICAuc2xpY2stZG90cyBsaSBidXR0b24ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggIzAwMDAwMCBpbnNldDtcbiAgICB0cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuMjVzIGN1YmljLWJlemllcigwLjg2LCAwLCAwLjA3LCAxKTsgfVxuICAgIC5zbGljay1kb3RzIGxpIGJ1dHRvbjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLnNsaWNrLWRvdHMgbGkgYnV0dG9uOmhvdmVyLCAuc2xpY2stZG90cyBsaSBidXR0b246Zm9jdXMge1xuICAgICAgYm94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4ICNFQjVFOTQgaW5zZXQ7IH1cbiAgLnNsaWNrLWRvdHMgbGkuc2xpY2stYWN0aXZlIGJ1dHRvbiB7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0O1xuICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7IH1cbiAgICAuc2xpY2stZG90cyBsaS5zbGljay1hY3RpdmUgYnV0dG9uOmZvY3VzIHtcbiAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCAjRUI1RTk0OyB9XG5cbi5zb2NpYWwtbGlua3Mge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zb2NpYWwtbGlua3Mge1xuICAgICAgbWFyZ2luLXRvcDogNS4zMTI1cmVtO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7IH0gfVxuICAuc29jaWFsLWxpbmtzIGgyIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBtYXJnaW46IDAuMzEyNXJlbSAyLjVyZW0gMC43NXJlbTsgfVxuICAuc29jaWFsLWxpbmtzIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIC5zb2NpYWwtbGlua3MgdWwgbGkgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxLjVyZW07XG4gICAgICBoZWlnaHQ6IDEuNXJlbTsgfVxuICAgICAgLnNvY2lhbC1saW5rcyB1bCBsaSBhIHN2ZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuc29jaWFsLWxpbmtzIHVsIGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyLjMxMjVyZW07IH1cbiAgLnNvY2lhbC1saW5rcyBzdmcge1xuICAgIGZpbGw6ICMwMDAwMDA7XG4gICAgdHJhbnNpdGlvbjogZmlsbCAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgLnNvY2lhbC1saW5rcyBhOmhvdmVyIHN2ZyB7XG4gICAgZmlsbDogIzQxQTQ5NDsgfVxuICAuc29jaWFsLWxpbmtzIHNwYW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc29jaWFsLWxpbmtzIHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMi41cmVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAwOyB9IH1cblxuLndndS1zdGF0IHtcbiAgcGFkZGluZzogMS41NjI1cmVtIDEuMjVyZW07XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLndndS1zdGF0IHtcbiAgICAgIHBhZGRpbmc6IDIuMTg3NXJlbSAxLjg3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAud2d1LXN0YXQge1xuICAgICAgcGFkZGluZzogMy40Mzc1cmVtIDIuODEyNXJlbSAzLjc1cmVtOyB9IH1cbiAgLndndS1zdGF0IHAge1xuICAgIGZvbnQtc2l6ZTogMC43NXJlbTsgfVxuICAgIC53Z3Utc3RhdCBwOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAud2d1LXN0YXQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC53Z3Utc3RhdCBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLndndS1zdGF0IHAge1xuICAgICAgICBmb250LXNpemU6IDEuMjVyZW07IH0gfVxuICAud2d1LXN0YXQgc3BhbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMC42MjVyZW07XG4gICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLndndS1zdGF0IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDMuNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwLjk0O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLndndS1zdGF0IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDUuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLndndS1zdGF0IHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDguNzVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLndndS1zdGF0LS1tZWRpdW0tZG93bi1mbGV4IHtcbiAgICAgIG1heC13aWR0aDogMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC53Z3Utc3RhdC0tbWVkaXVtLWRvd24tZmxleCBwIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkgYW5kIChtYXgtd2lkdGg6IDYzLjk5ODc1ZW0pIHtcbiAgICAud2d1LXN0YXQtLW1lZGl1bS1kb3duLWZsZXggcCB7XG4gICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC53Z3Utc3RhdC0tbWVkaXVtLWRvd24tZmxleCBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMC45Mzc1cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC53Z3Utc3RhdC0tbWVkaXVtLWRvd24tZmxleCBzcGFuIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMS44NzVyZW07XG4gICAgICBmb250LXNpemU6IDYuMjVyZW07IH0gfVxuXG4udGFicyB7XG4gIGJvcmRlcjogMDsgfVxuICAudGFicy1jb250ZW50IHtcbiAgICBib3JkZXI6IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgd2lkdGg6IDkwJTsgfSB9XG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIGJvcmRlcjogMDsgfVxuICAudGFicy1wYW5lbCB7XG4gICAgcGFkZGluZzogMDsgfVxuICAgIC50YWJzLXBhbmVsIGgyIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAudGFicy1wYW5lbCBoMiB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4xODc1cmVtOyB9IH1cbiAgICAudGFicy1wYW5lbCBoMyB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiA5cHg7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLnRhYnMtcGFuZWwgaDMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtOyB9IH1cbiAgICAudGFicy1wYW5lbCBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNTAuNyU7IH1cbiAgLnRhYnMtdGl0bGUge1xuICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAudGFicy10aXRsZTpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAudGFicy10aXRsZSA+IGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGNvbG9yOiAjMTUxRjM1O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgICAgIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgICAgIC50YWJzLXRpdGxlID4gYTpob3ZlciwgLnRhYnMtdGl0bGUgPiBhW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNFQjVFOTQ7XG4gICAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gICAgICAudGFicy10aXRsZSA+IGFbYXJpYS1zZWxlY3RlZD0ndHJ1ZSddOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgI0VCNUU5NDsgfVxuICAudGFic19fc3RhZmYtdGl0bGVzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gIC50YWJzX19zdGFmZi1jb250ZW50IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjBmNGY1OyB9XG4gICAgLnRhYnNfX3N0YWZmLWNvbnRlbnQgaDMge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTsgfVxuICAgIC50YWJzX19zdGFmZi1jb250ZW50IHRhYmxlIHtcbiAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICBwYWRkaW5nOiA0cmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgYm94LXNoYWRvdzogNXB4IDVweCAxNXB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMik7IH1cbiAgICAudGFic19fc3RhZmYtY29udGVudCB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUI1RTk0O1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cblxuLnBhbmVsLXAtMV9fc3RhZmYge1xuICBtYXJnaW4tYm90dG9tOiAzcmVtOyB9XG5cbi50YWcge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDAuMTI1cmVtIDAuMzEyNXJlbSAwO1xuICBjb2xvcjogIzE1MUYzNTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC1zaXplOiAwLjc1cmVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjMzO1xuICBiYWNrZ3JvdW5kOiAjRUI1RTk0O1xuICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gIC50YWcud2hpdGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgY29sb3I6ICNFQjVFOTQ7IH1cbiAgLnRhZy5iZy1wb3N0Z3JhZCB7XG4gICAgYmFja2dyb3VuZDogI0U2ODgxRTsgfVxuXG5hLnRhZyB7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGN1YmljLWJlemllcigwLjY0NSwgMC4wNDUsIDAuMzU1LCAxKSwgYmFja2dyb3VuZC1jb2xvciAwLjI1cyBjdWJpYy1iZXppZXIoMC42NDUsIDAuMDQ1LCAwLjM1NSwgMSk7IH1cbiAgYS50YWc6Zm9jdXMge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIGEudGFnOmhvdmVyLCBhLnRhZzpmb2N1cyB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gICAgb3V0bGluZTogMnB4IGRvdHRlZCAjMDAwMDAwOyB9XG5cbi50YWctZ3JvdXAgPiAqIHtcbiAgbWFyZ2luLXJpZ2h0OiAwLjkzNzVyZW07IH1cbiAgLnRhZy1ncm91cCA+ICo6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwOyB9XG5cbiN1bmlzdGF0cy13aWRnZXQtZnJhbWUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87IH1cblxuLmNvbnRlbnQtY2FyZC1waW5rIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0VCNUU5NDtcbiAgYm9yZGVyOiA1cHggc29saWQgI0VCNUU5NDtcbiAgbWFyZ2luLWJvdHRvbTogMXJlbTsgfVxuICAuY29udGVudC1jYXJkLXBpbmsgYTpob3ZlciB7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogIzJlMmUyZTsgfVxuICAuY29udGVudC1jYXJkLXBpbmsgLmgzIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDIuMjVyZW07IH1cbiAgLmNvbnRlbnQtY2FyZC1waW5rX190ZXh0IHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBwYWRkaW5nOiA0LjM3NXJlbSAzLjEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtOyB9XG4gICAgLmNvbnRlbnQtY2FyZC1waW5rX190ZXh0ID4gKiB7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gIC5jb250ZW50LWNhcmQtcGluayBhOmhvdmVyIC5jb250ZW50LWNhcmQtcGlua19fdGV4dCB7XG4gICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBjb2xvcjogIzJlMmUyZTsgfVxuICAgIC5jb250ZW50LWNhcmQtcGluayBhOmhvdmVyIC5jb250ZW50LWNhcmQtcGlua19fdGV4dCBoMyB7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgY29sb3I6ICMyZTJlMmU7IH1cblxuLmNvbnRlbnQtY2FyZC1waW5rLXNlY29uZC1sZXZlbCB7XG4gIHBhZGRpbmc6IDFyZW07IH1cbiAgLmNvbnRlbnQtY2FyZC1waW5rLXNlY29uZC1sZXZlbCAuaDMge1xuICAgIGZvbnQtc2l6ZTogMS4zcmVtOyB9XG4gIC5jb250ZW50LWNhcmQtcGluay1zZWNvbmQtbGV2ZWwgcCB7XG4gICAgZm9udC1zaXplOiAxcmVtOyB9XG5cbi5zdGF0dXMtY29udGFpbmVyIHtcbiAgYmFja2dyb3VuZDogI2YwZjRmNTtcbiAgcGFkZGluZzogNHJlbSAwOyB9XG5cbi5zZXJ2aWNlLXJlcG9ydCB7XG4gIHBhZGRpbmc6IDJyZW07XG4gIGJvcmRlci1yYWRpdXM6IDNweDsgfVxuICAuc2VydmljZS1yZXBvcnQgUCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gIC5zZXJ2aWNlLXJlcG9ydCBpbWcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07IH1cbiAgLnNlcnZpY2UtcmVwb3J0LmlzT25saW5lIHtcbiAgICBiYWNrZ3JvdW5kOiAjRjFGQ0VCOyB9XG4gIC5zZXJ2aWNlLXJlcG9ydC5pc09mZmxpbmUge1xuICAgIGJhY2tncm91bmQ6ICNmY2ZhZWI7IH1cbiAgLnNlcnZpY2UtcmVwb3J0LnNlcnZpY2VEb3duIHtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmNGY1OyB9XG5cbi5zZXJ2aWNlLWluZm8ge1xuICBtYXJnaW46IDFyZW0gMDsgfVxuICAuc2VydmljZS1pbmZvIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cblxuLnN0YXR1cy10YWJsZS13cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgcGFkZGluZzogNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBib3gtc2hhZG93OiA1cHggNXB4IDE1cHggM3B4IHJnYmEoMCwgMCwgMCwgMC4yKTsgfVxuXG4uc3RhdHVzLXRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlOyB9XG4gIC5zdGF0dXMtdGFibGUgYSB7XG4gICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuXG4uc3RhdHVzLXRhYmxlLXJvdyB7XG4gIGRpc3BsYXk6IHRhYmxlLXJvdztcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNmMGY0ZjU7IH1cbiAgLnN0YXR1cy10YWJsZS1yb3cuaGVhZGVyIHtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBiYWNrZ3JvdW5kOiAjZjBmNGY1OyB9XG5cbi5zdGF0dXMtdGFibGUtY2VsbCB7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsOyB9XG4gIC5zdGF0dXMtdGFibGUtY2VsbFtkYXRhLXRpdGxlfj1cIlN5c3RlbVwiXSB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAuc3RhdHVzLXRhYmxlLWNlbGxbZGF0YS10aXRsZX49XCJTeXN0ZW1cIl0gYTpob3ZlciB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAuc3RhdHVzLXRhYmxlLWNlbGxbZGF0YS10aXRsZX49XCJEZXNjcmlwdGlvblwiXSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljOyB9XG5cbi5pc09mZmxpbmUge1xuICBjb2xvcjogI0MyNTcwMDsgfVxuXG4uaXNPbmxpbmUge1xuICBjb2xvcjogZ3JlZW47IH1cblxuLnN0YXR1c0N1c3RvbU1lc3NhZ2Uge1xuICBiYWNrZ3JvdW5kOiAjZmZmO1xuICBwYWRkaW5nOiA0cmVtO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJveC1zaGFkb3c6IDVweCA1cHggMTVweCAzcHggcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBtYXJnaW46IDJyZW0gMDsgfVxuXG4ucHJvZ3NwZWNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTtcbiAgcGFkZGluZzogMmVtIDAgMWVtIDA7IH1cbiAgLnByb2dzcGVjcyB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTsgfVxuICAucHJvZ3NwZWNzIGgyLCAucHJvZ3NwZWNzIC5oMiB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAucHJvZ3NwZWNzIGgyLCAucHJvZ3NwZWNzIC5oMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cblxuLnNpdGUtZm9vdGVyLWN0YSAuZGlzcGxheS02IHtcbiAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgbGluZS1oZWlnaHQ6IDk1LjIlO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnNpdGUtZm9vdGVyLWN0YSAuZGlzcGxheS02IHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH0gfVxuXG4uc2l0ZS1mb290ZXItY3RhIC5idXR0b24ge1xuICB3aWR0aDogMTAwJTtcbiAgYm9yZGVyLXdpZHRoOiAycHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZpbHRlcjogY29udHJhc3QoMSk7XG4gIGJhY2tncm91bmQ6ICMxNTFGMzU7XG4gIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5zaXRlLWZvb3Rlci1jdGEgLmJ1dHRvbjpob3ZlciB7XG4gICAgY29sb3I6ICMxNTFGMzU7XG4gICAgYm9yZGVyLWNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7IH1cbiAgLnNpdGUtZm9vdGVyLWN0YSAuYnV0dG9uOmZvY3VzIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICBib3JkZXItY29sb3I6IGluaGVyaXQ7IH1cblxuLnNpdGUtZm9vdGVyLWN0YS5pbnZlcnQgaDIsIC5zaXRlLWZvb3Rlci1jdGEuaW52ZXJ0IGJ1dHRvbiwgLnNpdGUtZm9vdGVyLWN0YS5pbnZlcnQgcCwgLnNpdGUtZm9vdGVyLWN0YS5pbnZlcnQgYSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItY29sb3I6ICNmZmZmZmY7IH1cblxuLm1hc3RoZWFkLXNwbGl0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5tYXN0aGVhZC1zcGxpdC5iZy1waW5rIC5icmVhZGNydW1iIGEsIC5tYXN0aGVhZC1zcGxpdC5iZy1yZWQgLmJyZWFkY3J1bWIgYSwgLm1hc3RoZWFkLXNwbGl0LmJnLWJsdWUgLmJyZWFkY3J1bWIgYSB7XG4gICAgY29sb3I6ICMxNTFGMzU7IH1cbiAgLm1hc3RoZWFkLXNwbGl0LmJnLXBpbmsgcCwgLm1hc3RoZWFkLXNwbGl0LmJnLXJlZCBwLCAubWFzdGhlYWQtc3BsaXQuYmctYmx1ZSBwIHtcbiAgICBjb2xvcjogIzE1MUYzNTsgfVxuICAubWFzdGhlYWQtc3BsaXQuYmctcGluayB1bCBsaSwgLm1hc3RoZWFkLXNwbGl0LmJnLXJlZCB1bCBsaSwgLm1hc3RoZWFkLXNwbGl0LmJnLWJsdWUgdWwgbGkge1xuICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0LmJnLXBpbmsgdWwgbGkgc3Ryb25nLCAubWFzdGhlYWQtc3BsaXQuYmctcmVkIHVsIGxpIHN0cm9uZywgLm1hc3RoZWFkLXNwbGl0LmJnLWJsdWUgdWwgbGkgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0LmJnLXBpbmsgdWwgbGkgYSBzdHJvbmcsIC5tYXN0aGVhZC1zcGxpdC5iZy1yZWQgdWwgbGkgYSBzdHJvbmcsIC5tYXN0aGVhZC1zcGxpdC5iZy1ibHVlIHVsIGxpIGEgc3Ryb25nIHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gIC5tYXN0aGVhZC1zcGxpdCAuYnJlYWRjcnVtYiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0IC5icmVhZGNydW1iIGEge1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXQgLmJyZWFkY3J1bWIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjAlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXQgLmJyZWFkY3J1bWIge1xuICAgICAgICB0b3A6IDEwJTsgfSB9XG4gIC5tYXN0aGVhZC1zcGxpdF9faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmc6IDgwcHggMCAyLjVyZW0gMDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIG1pbi1oZWlnaHQ6IDYwdmg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXRfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZzogMTAuMjVyZW0gMCAzLjc1cmVtO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MHZoOyB9IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1hc3RoZWFkLXNwbGl0X19pbm5lciB7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDEwMHZoO1xuICAgICAgICBwYWRkaW5nOiAwOyB9IH1cbiAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5kaXNwbGF5LTEge1xuICAgIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIG1heC13aWR0aDogMzAuMzEyNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCAuZGlzcGxheS0xIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNvbG9yOiAjRTY0NTUwO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCAuZGlzcGxheS0xIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi44NzVyZW07IH0gfVxuICAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmRpc3BsYXktMyB7XG4gICAgbGluZS1oZWlnaHQ6IDExMy4xJTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDNtO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5kaXNwbGF5LTMgc3Ryb25nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5kaXNwbGF5LTMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmRpc3BsYXktNCB7XG4gICAgbGluZS1oZWlnaHQ6IDgzLjElO1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgIG1heC13aWR0aDogMzVyZW07IH1cbiAgICAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmRpc3BsYXktNCBzdHJvbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNDAwOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5kaXNwbGF5LTQgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmRpc3BsYXktNCArICoge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDQuMzc1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5oMiB7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsaW5lLWhlaWdodDogODcuNiU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgbWF4LXdpZHRoOiAxNy41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmgyICsgKiB7XG4gICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCAuaDIge1xuICAgICAgICBtYXgtd2lkdGg6IDMyLjVyZW07IH1cbiAgICAgICAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IC5oMiArICoge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMuMTI1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IHAge1xuICAgIG1heC13aWR0aDogMjIuMjVyZW07XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICBsaW5lLWhlaWdodDogMTU3JTtcbiAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0X190ZXh0IHA6bGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXRfX3RleHQgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAyNi44NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCB7XG4gICAgICB3aWR0aDogNTAlOyB9IH1cbiAgLm1hc3RoZWFkLXNwbGl0X19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gICAgLm1hc3RoZWFkLXNwbGl0X19pbWFnZSBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXRfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwdmg7IH1cbiAgICAgICAgLm1hc3RoZWFkLXNwbGl0X19pbWFnZSBpbWcge1xuICAgICAgICAgIC13ZWJraXQtbWFzazogdXJsKFwiLi4vaW1nL21hc3RoZWFkLW1hc2suc3ZnXCIpIGNlbnRlciBjZW50ZXIvY292ZXI7XG4gICAgICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgIC13ZWJraXQtbWFzay1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgLXdlYmtpdC1tYXNrLXNpemU6IGNvdmVyOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXRfX2ltYWdlIHtcbiAgICAgICAgd2lkdGg6IDUzJTsgfSB9XG4gIC5tYXN0aGVhZC1zcGxpdF9fbGlua3Mge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleDogd3JhcDsgfVxuICAgIC5tYXN0aGVhZC1zcGxpdF9fbGlua3MgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkLXNwbGl0X19saW5rcyBsaTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtOyB9IH1cbiAgICAubWFzdGhlYWQtc3BsaXRfX2xpbmtzIGEge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1mYW1pbHk6IFwiZGVndWxhclwiO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgICAgLm1hc3RoZWFkLXNwbGl0X19saW5rcyBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4OyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5tYXN0aGVhZC1zcGxpdF9fbGlua3MgYSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxLjEyNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMTU2MjVyZW07IH0gfVxuICAubWFzdGhlYWQtc3BsaXRfX2xpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAubWFzdGhlYWQtc3BsaXRfX2xpc3QgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLm1hc3RoZWFkLXNwbGl0X19saXN0ICsgKiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07IH0gfVxuICAgIC5tYXN0aGVhZC1zcGxpdF9fbGlzdCBsaSB7XG4gICAgICBsaW5lLWhlaWdodDogMTEwJTtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgICAgLm1hc3RoZWFkLXNwbGl0X19saXN0IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLm1hc3RoZWFkLXNwbGl0X19saXN0IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4xMjVyZW07IH0gfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAubWFzdGhlYWQtc3BsaXRfX2xpc3QgbGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTsgfSB9XG4gICAgLm1hc3RoZWFkLXNwbGl0X19saXN0IGEge1xuICAgICAgY29sb3I6IGluaGVyaXQ7IH1cbiAgICAgIC5tYXN0aGVhZC1zcGxpdF9fbGlzdCBhOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4OyB9XG4gIC5tYXN0aGVhZC1zcGxpdCAubWFzdGhlYWRfX3Njcm9sbCB7XG4gICAgYm90dG9tOiAtMnB4O1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7IH1cbiAgICAubWFzdGhlYWQtc3BsaXQgLm1hc3RoZWFkX19zY3JvbGwgc3ZnIHtcbiAgICAgIGhlaWdodDogYXV0bzsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXQgLm1hc3RoZWFkX19zY3JvbGwge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgYm90dG9tOiAtMnB4OyB9XG4gICAgICAgIC5tYXN0aGVhZC1zcGxpdCAubWFzdGhlYWRfX3Njcm9sbC5sZWZ0IHtcbiAgICAgICAgICBsZWZ0OiAwOyB9IH1cbiAgLm1hc3RoZWFkLXNwbGl0LmludmVydCAubWFzdGhlYWQtc3BsaXRfX3RleHQgLmRpc3BsYXktMSBzdHJvbmcge1xuICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gIC5tYXN0aGVhZC1zcGxpdDpub3QoLmludmVydCkgLm1hc3RoZWFkLXNwbGl0X19pbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLm1hc3RoZWFkLXNwbGl0Om5vdCguaW52ZXJ0KSAubWFzdGhlYWQtc3BsaXRfX2lubmVyIHtcbiAgICAgICAgcGFkZGluZzogMTIuNzVyZW0gMDsgfSB9XG4gIC5tYXN0aGVhZC1zcGxpdDpub3QoLmludmVydCkgLm1hc3RoZWFkLXNwbGl0X19pbWFnZSB7XG4gICAgcGFkZGluZy10b3A6IDExNSU7IH1cbiAgICAubWFzdGhlYWQtc3BsaXQ6bm90KC5pbnZlcnQpIC5tYXN0aGVhZC1zcGxpdF9faW1hZ2UgaW1nIHtcbiAgICAgIC13ZWJraXQtbWFzazogbm9uZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgdG9wOiA2LjYyNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWQtc3BsaXQ6bm90KC5pbnZlcnQpIC5tYXN0aGVhZC1zcGxpdF9faW1hZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygoMTE1JSAvIDIpKTtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHRvcDogYXV0bzsgfSB9XG4gIC5tYXN0aGVhZC1zcGxpdDpub3QoLmludmVydCkge1xuICAgIG92ZXJmbG93OiBoaWRkZW47IH1cblxuLmZlYXR1cmUtaW1nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5mZWF0dXJlLWltZyAucGxheS12aWRlbyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBtYXJnaW46IGF1dG87IH1cbiAgICAuZmVhdHVyZS1pbWcgLnBsYXktdmlkZW86Zm9jdXM6OmJlZm9yZSB7XG4gICAgICBvdXRsaW5lOiAycHggZG90dGVkICNmZmZmZmY7XG4gICAgICBvdXRsaW5lLW9mZnNldDogNXB4OyB9XG4gICAgLmZlYXR1cmUtaW1nIC5wbGF5LXZpZGVvOjpiZWZvcmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0U2NDU1MDsgfVxuICAgIC5mZWF0dXJlLWltZyAucGxheS12aWRlbzpob3Zlcjo6YmVmb3JlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNlOTViNjU7IH1cbiAgICAuZmVhdHVyZS1pbWcgLnBsYXktdmlkZW86aG92ZXI6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmZmZmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZyAucGxheS12aWRlbyB7XG4gICAgICAgIGJvdHRvbTogMTElO1xuICAgICAgICByaWdodDogNyU7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgbGVmdDogYXV0bzsgfVxuICAgICAgICAuZmVhdHVyZS1pbWcgLnBsYXktdmlkZW86OmJlZm9yZSB7XG4gICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTsgfVxuICAgICAgICAuZmVhdHVyZS1pbWcgLnBsYXktdmlkZW86OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4OyB9IH1cbiAgLmZlYXR1cmUtaW1nX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gICAgLmZlYXR1cmUtaW1nX19pbWFnZTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTEuMTg3NXJlbTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC40KSAxNC4wNiUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICB6LWluZGV4OiAxOyB9XG4gICAgLmZlYXR1cmUtaW1nX19pbWFnZSBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmUtaW1nX19pbWFnZSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2Mi41JTsgfSB9XG4gIC5mZWF0dXJlLWltZ19fdGV4dCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiBjYWxjKDgyJSArIDAuOTM4cmVtKTsgfVxuICAgIC5mZWF0dXJlLWltZ19fdGV4dCAuZGlzcGxheS00IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07IH1cbiAgICAgIC5mZWF0dXJlLWltZ19fdGV4dCAuZGlzcGxheS00IHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgICAuZmVhdHVyZS1pbWdfX3RleHQgLmRpc3BsYXktNC5mZWF0dXJlLWltZ19fdGl0bGUtLWRpc3BsYXkgc3Ryb25nIHtcbiAgICAgICAgZGlzcGxheTogY29udGVudHM7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmZlYXR1cmUtaW1nX190ZXh0IC5kaXNwbGF5LTQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgICAuZmVhdHVyZS1pbWdfX3RleHQgcCB7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMy43NXJlbSk7XG4gICAgICBsaW5lLWhlaWdodDogMTQzJTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuZmVhdHVyZS1pbWdfX3RleHQgcCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7IH1cbiAgICAgICAgICAuZmVhdHVyZS1pbWdfX3RleHQgcCBzdHJvbmcge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07IH0gfVxuICAgICAgLmZlYXR1cmUtaW1nX190ZXh0IHAgKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMC42MjVyZW07XG4gICAgICAgIG1heC13aWR0aDogbm9uZTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmZlYXR1cmUtaW1nX190ZXh0IHAgKyAqIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9IH1cbiAgICAuZmVhdHVyZS1pbWdfX3RleHQgYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICBjb2xvcjogaW5oZXJpdDsgfVxuICAgICAgLmZlYXR1cmUtaW1nX190ZXh0IGE6aG92ZXIge1xuICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmZlYXR1cmUtaW1nX190ZXh0IGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZ19fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIG1heC13aWR0aDogMzkuMTg3NXJlbTsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZ19fdGV4dCB7XG4gICAgICAgIHdpZHRoOiA0MiU7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZ19fdGV4dCB7XG4gICAgICAgIHdpZHRoOiBtYXgtY29udGVudDsgfSB9XG4gICAgLmZlYXR1cmUtaW1nX190ZXh0ID4gKiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAuZmVhdHVyZS1pbWdfX3NoYXBlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgICAuZmVhdHVyZS1pbWdfX3NoYXBlIHN2ZyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuZmVhdHVyZS1pbWdfX3NoYXBlLmJnLXllbGxvdyBzdmcge1xuICAgICAgY29sb3I6ICNGREM0MDA7IH1cbiAgICAuZmVhdHVyZS1pbWdfX3NoYXBlLmJnLWJsdWUgc3ZnIHtcbiAgICAgIGNvbG9yOiAjNDFBNDk0OyB9XG4gICAgLmZlYXR1cmUtaW1nX19zaGFwZS5iZy1ibHVlICsgLmZlYXR1cmUtaW1nX19jb250ZW50IHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuZmVhdHVyZS1pbWdfX3NoYXBlLmJnLWJsdWUgKyAuZmVhdHVyZS1pbWdfX2NvbnRlbnQgcCB7XG4gICAgICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgLmZlYXR1cmUtaW1nX19zaGFwZS5iZy1wdXJwbGUgc3ZnIHtcbiAgICAgIGNvbG9yOiAjNEM0Mzk0OyB9XG4gICAgLmZlYXR1cmUtaW1nX19zaGFwZS5iZy1wdXJwbGUgKyAuZmVhdHVyZS1pbWdfX2NvbnRlbnQge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICAuZmVhdHVyZS1pbWdfX3NoYXBlLmJnLW5hdnkgc3ZnIHtcbiAgICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgLmZlYXR1cmUtaW1nX19zaGFwZS5iZy1uYXZ5ICsgLmZlYXR1cmUtaW1nX19jb250ZW50IHtcbiAgICAgIGNvbG9yOiAjZmZmZmZmOyB9XG4gICAgICAuZmVhdHVyZS1pbWdfX3NoYXBlLmJnLW5hdnkgKyAuZmVhdHVyZS1pbWdfX2NvbnRlbnQgcCwgLmZlYXR1cmUtaW1nX19zaGFwZS5iZy1uYXZ5ICsgLmZlYXR1cmUtaW1nX19jb250ZW50IGEge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTUxRjM1OyB9XG4gIC5mZWF0dXJlLWltZ19fY29udGVudCB7XG4gICAgcGFkZGluZzogMC45MzhyZW07IH1cbiAgICAuZmVhdHVyZS1pbWdfX2NvbnRlbnQgcCB7XG4gICAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZ19fY29udGVudCB7XG4gICAgICAgIHBhZGRpbmc6IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmZlYXR1cmUtaW1nX19jb250ZW50IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiBjYWxjKDEwMCUgLSAwLjkzOHJlbSk7IH1cbiAgICAgICAgLmZlYXR1cmUtaW1nX19jb250ZW50IHAge1xuICAgICAgICAgIG1heC13aWR0aDogMjIuMjVyZW07IH0gfVxuXG4uZGlzY292ZXItbW9yZS1jb2xzIHtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZGlzY292ZXItbW9yZS1jb2xzIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA1LjYyNXJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiAxMS4yNXJlbTsgfSB9XG4gIC5kaXNjb3Zlci1tb3JlLWNvbHMuaW52ZXJ0IC5jb250ZW50LWNhcmQgaDMsIC5kaXNjb3Zlci1tb3JlLWNvbHMuaW52ZXJ0IC5jb250ZW50LWNhcmQgcCB7XG4gICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgLmRpc2NvdmVyLW1vcmUtY29sc19faW5uZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAuZGlzY292ZXItbW9yZS1jb2xzIC5kaXNwbGF5LTIsXG4gIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmRpc3BsYXktNCB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDk0LjYlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgLmRpc2NvdmVyLW1vcmUtY29scyAuZGlzcGxheS0yIHN0cm9uZyxcbiAgICAuZGlzY292ZXItbW9yZS1jb2xzIC5kaXNwbGF5LTQgc3Ryb25nIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmRpc3BsYXktMixcbiAgICAgIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmRpc3BsYXktNCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQuMjVyZW07IH0gfVxuICAuZGlzY292ZXItbW9yZS1jb2xzX19pbWFnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gICAgLmRpc2NvdmVyLW1vcmUtY29sc19faW1hZ2U6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0MCU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNCkgMTQuMDYlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG4gICAgICB6LWluZGV4OiAyOyB9XG4gICAgLmRpc2NvdmVyLW1vcmUtY29sc19faW1hZ2UgaW1nIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAuZGlzY292ZXItbW9yZS1jb2xzX19pbWFnZSBmaWdjYXB0aW9uIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMXJlbTtcbiAgICAgIGxlZnQ6IDFyZW07XG4gICAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgICAgIC5kaXNjb3Zlci1tb3JlLWNvbHNfX2ltYWdlIGZpZ2NhcHRpb246YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNDFBNDk0O1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTExMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4yNXMgY3ViaWMtYmV6aWVyKDAuODYsIDAsIDAuMDcsIDEpOyB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5kaXNjb3Zlci1tb3JlLWNvbHNfX2ltYWdlIGZpZ2NhcHRpb24ge1xuICAgICAgICAgIGxlZnQ6IDEuMzEyNXJlbTtcbiAgICAgICAgICBib3R0b206IDEuNXJlbTsgfSB9XG4gIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmNvbnRlbnQtY2FyZCBoMyB7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZGlzY292ZXItbW9yZS1jb2xzIC5jb250ZW50LWNhcmQgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuNjI1cmVtOyB9IH1cbiAgLmRpc2NvdmVyLW1vcmUtY29scyAuY29udGVudC1jYXJkIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxNDQuMiU7XG4gICAgbWF4LXdpZHRoOiAxNy44NzVyZW07IH1cbiAgLmRpc2NvdmVyLW1vcmUtY29scyAuY29udGVudC1jYXJkOmhvdmVyIGZpZ2NhcHRpb24sIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmNvbnRlbnQtY2FyZDpmb2N1cyBmaWdjYXB0aW9uIHtcbiAgICBjb2xvcjogI2ZmZmZmZjsgfVxuICAgIC5kaXNjb3Zlci1tb3JlLWNvbHMgLmNvbnRlbnQtY2FyZDpob3ZlciBmaWdjYXB0aW9uOmFmdGVyLCAuZGlzY292ZXItbW9yZS1jb2xzIC5jb250ZW50LWNhcmQ6Zm9jdXMgZmlnY2FwdGlvbjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAucXVpY2stbGlua3Mge1xuICAgIG1hcmdpbjogNy41cmVtIDA7IH0gfVxuXG4ucXVpY2stbGlua3MgLmdyaWQteCB7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogZmxleC1lbmQ7IH1cbiAgLnF1aWNrLWxpbmtzIC5ncmlkLXg6Zmlyc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAucXVpY2stbGlua3MgLmdyaWQteCArIC5ncmlkLXgge1xuICAgIG1hcmdpbi10b3A6IDEuODc1cmVtOyB9XG5cbi5xdWljay1saW5rc19fYm94IHtcbiAgcGFkZGluZzogMi41OTM3NXJlbSAzLjA5Mzc1cmVtIDJyZW0gMS4zNzVyZW07IH1cbiAgLnF1aWNrLWxpbmtzX19ib3ggaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICBsaW5lLWhlaWdodDogMTIwJTtcbiAgICBtYXgtd2lkdGg6IDEwcmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnF1aWNrLWxpbmtzX19ib3ggaDIge1xuICAgICAgICBtYXgtd2lkdGg6IDEzLjkzNzVyZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjgxMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnF1aWNrLWxpbmtzX19ib3gge1xuICAgICAgcGFkZGluZzogNS4xODc1cmVtIDYuMTg3NXJlbSA0cmVtIDIuNzVyZW07IH0gfVxuXG4ucXVpY2stbGlua3NfX3RhZyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gIHBhZGRpbmc6IDAuMjVyZW0gMC4zNzVyZW0gMC4xODc1cmVtIDAuNDM3NXJlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgbWFyZ2luLWJvdHRvbTogMC41NjI1cmVtO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjsgfVxuXG4ucXVpY2stbGlua3NfX2xpbmsge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICMxNTFGMzU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfVxuICAucXVpY2stbGlua3NfX2xpbms6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlOyB9XG4gIC5xdWljay1saW5rc19fbGluazpob3ZlciB7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7IH1cblxuLnF1aWNrLWxpbmtzX19pbWFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDY3LjUlOyB9XG4gIC5xdWljay1saW5rc19faW1hZ2UgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG5cbi5xdWljay1saW5rc19fbGlzdCBoMyB7XG4gIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4gIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAucXVpY2stbGlua3NfX2xpc3QgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjYyNXJlbTsgfSB9XG5cbi5xdWljay1saW5rc19fbGlzdCAuYXJyb3ctbGlzdCB7XG4gIHBhZGRpbmctbGVmdDogMS4yNXJlbTsgfVxuICAucXVpY2stbGlua3NfX2xpc3QgLmFycm93LWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2NoZXZyb24tcmlnaHQtYmx1ZS5zdmdcIik7IH1cbiAgLnF1aWNrLWxpbmtzX19saXN0IC5hcnJvdy1saXN0IGxpIGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnF1aWNrLWxpbmtzX19saXN0IC5hcnJvdy1saXN0IGxpOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS4xMjVyZW07IH1cbiAgICAucXVpY2stbGlua3NfX2xpc3QgLmFycm93LWxpc3QgbGk6OmJlZm9yZSB7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IDAuNXJlbTtcbiAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgIGhlaWdodDogMC41cmVtOyB9XG4gICAgLnF1aWNrLWxpbmtzX19saXN0IC5hcnJvdy1saXN0IGxpIGEge1xuICAgICAgZm9udC1zaXplOiAxLjM3NXJlbTsgfSB9XG5cbi5zdHVkZW50LWN0YSB7XG4gIG1hcmdpbi1ib3R0b206IC0xLjI1cmVtOyB9XG4gIC5zdHVkZW50LWN0YSArICoge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnN0dWRlbnQtY3RhIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnN0dWRlbnQtY3RhIHtcbiAgICAgIG1hcmdpbi10b3A6IDcuMjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5zdHVkZW50LWN0YSAuZ3JpZC14IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLnN0dWRlbnQtY3RhX190ZXh0IHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNiU7IH0gfVxuICAuc3R1ZGVudC1jdGFfX3RleHQgLmRpc3BsYXktNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IH1cbiAgICAuc3R1ZGVudC1jdGFfX3RleHQgLmRpc3BsYXktNCBzdHJvbmcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAgIC5zdHVkZW50LWN0YV9fdGV4dCAuZGlzcGxheS00IHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMy43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnN0dWRlbnQtY3RhX190ZXh0IC5kaXNwbGF5LTQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07IH0gfVxuICAuc3R1ZGVudC1jdGFfX3RleHQgcCB7XG4gICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4gICAgbGluZS1oZWlnaHQ6IDE0MyU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgbWF4LXdpZHRoOiAxOXJlbTsgfVxuICAuc3R1ZGVudC1jdGFfX3RleHQgYSB7XG4gICAgY29sb3I6ICMxNTFGMzU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTsgfVxuICAgIC5zdHVkZW50LWN0YV9fdGV4dCBhOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7IH1cbiAgLnN0dWRlbnQtY3RhX190ZXh0IGJsb2NrcXVvdGUgcCB7XG4gICAgZm9udC1zaXplOiAxLjM3NXJlbTtcbiAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuc3R1ZGVudC1jdGFfX3RleHQgYmxvY2txdW90ZSBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc3R1ZGVudC1jdGFfX3RleHQgYmxvY2txdW90ZSBwIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjM3NXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi44NzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5zdHVkZW50LWN0YV9fdGV4dCBibG9ja3F1b3RlIHAge1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTJweDtcbiAgICAgICAgZm9udC1zaXplOiAzLjEyNXJlbTtcbiAgICAgICAgbWF4LXdpZHRoOiAyOC41NjI1cmVtOyB9IH1cbiAgLnN0dWRlbnQtY3RhX190ZXh0IGZpZ2NhcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgbGluZS1oZWlnaHQ6IDEyNyU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgLnN0dWRlbnQtY3RhX190ZXh0IGZpZ2NhcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAgIC5zdHVkZW50LWN0YV9fdGV4dCBmaWdjYXB0aW9uIGNpdGUge1xuICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICBsaW5lLWhlaWdodDogMTI3JTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7IH1cbiAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAgIC5zdHVkZW50LWN0YV9fdGV4dCBmaWdjYXB0aW9uIGNpdGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTsgfSB9XG4gICAgICAuc3R1ZGVudC1jdGFfX3RleHQgZmlnY2FwdGlvbiBjaXRlOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLnN0dWRlbnQtY3RhX190ZXh0IHtcbiAgICAgIG1heC13aWR0aDogMTguODc1cmVtO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zdHVkZW50LWN0YV9fdGV4dCB7XG4gICAgICBtYXJnaW46IDMuNzVyZW0gYXV0bzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc3R1ZGVudC1jdGFfX3RleHQge1xuICAgICAgbWF4LXdpZHRoOiAyNS4xMjVyZW07XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgLnN0dWRlbnQtY3RhX190ZXh0IHtcbiAgICAgIG1heC13aWR0aDogMzEuMzc1cmVtOyB9IH1cblxuLnN0YXRzLXNsaWRlciAuZ3JpZC14IHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtZW5kOyB9XG5cbi5zdGF0cy1zbGlkZXIgaDIgc3Ryb25nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0YXRzLXNsaWRlciBoMiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMTMuNzVyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zdGF0cy1zbGlkZXIgaDIge1xuICAgIG1heC13aWR0aDogMzAuNTYyNXJlbTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnN0YXRzLXNsaWRlciBwLFxuICAuc3RhdHMtc2xpZGVyIHNwYW4ge1xuICAgIG1heC13aWR0aDogMTguMzc1cmVtOyB9IH1cblxuLnN0YXRzLXNsaWRlciBwIHtcbiAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICBsaW5lLWhlaWdodDogMTYwJTsgfVxuXG4uc3RhdHMtc2xpZGVyIHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGluZS1oZWlnaHQ6IDE2MCU7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gIC5zdGF0cy1zbGlkZXIgc3BhbiBzdHJvbmcge1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7IH1cblxuLnN0YXRzLXNsaWRlcl9fc2xpZGVyIHtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTsgfVxuICAuc3RhdHMtc2xpZGVyX19zbGlkZXI6aG92ZXIge1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLnN0YXRzLXNsaWRlcl9fc2xpZGVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07IH0gfVxuICAuc3RhdHMtc2xpZGVyX19zbGlkZXIgc3BhbiB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zdGF0cy1zbGlkZXJfX3NsaWRlciBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLnN0YXRzLXNsaWRlcl9fc2xpZGVyIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuICAuc3RhdHMtc2xpZGVyX19zbGlkZXIgLmNpcmNsZSB7XG4gICAgd2lkdGg6IDYwJTtcbiAgICBwYWRkaW5nLXRvcDogNjAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi10b3A6IC0yNSU7XG4gICAgbWFyZ2luLXJpZ2h0OiAxLjI1cmVtOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5zdGF0cy1zbGlkZXJfX3NsaWRlciAuY2lyY2xlIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMTAwJSAvIDIpO1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IH0gfVxuXG4uc3RhdHMtc2xpZGVyX19zbGlkZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7IH1cbiAgLnN0YXRzLXNsaWRlcl9fc2xpZGU6Zm9jdXMge1xuICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgI2ZmZmZmZjsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5zdGF0cy1zbGlkZXJfX3NsaWRlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuc3RhdHMtc2xpZGVyX19zbGlkZS1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5zdGF0cy1zbGlkZXJfX3NsaWRlLWNvbnRlbnQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cblxuLnN0YXRzLXNsaWRlcl9faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAxMDAlOyB9XG4gIC5zdGF0cy1zbGlkZXJfX2ltYWdlIGltZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc3RhdHMtc2xpZGVyX19pbWFnZSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoMTAwJSAvIDIpOyB9IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLnN0YXRzLXNsaWRlciAuc2xpY2stbGlzdC5kcmFnZ2FibGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlOyB9IH1cblxuLnN0YXRzLXNsaWRlciAuc2xpY2stbGlzdC5kcmFnZ2luZywgLnN0YXRzLXNsaWRlciAuc2xpY2stbGlzdC5kcmFnZ2FibGU6YWN0aXZlOmhvdmVyIHtcbiAgY3Vyc29yOiBncmFiYmluZzsgfVxuXG4uY2lyY2xlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICAuY2lyY2xlX19pbm5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvOyB9XG4gIC5jaXJjbGUgLmRpc3BsYXktMSB7XG4gICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgIG1hcmdpbi1ib3R0b206IDEuMTI1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmNpcmNsZSAuZGlzcGxheS0xIHtcbiAgICAgICAgZm9udC1zaXplOiA5LjM3NXJlbTsgfSB9XG4gIC5jaXJjbGUgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgbWF4LXdpZHRoOiA5LjM3NXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuY2lyY2xlIHAge1xuICAgICAgICBtYXgtd2lkdGg6IDEzLjI1cmVtO1xuICAgICAgICBmb250LXNpemU6IDAuODc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuY2lyY2xlIHAge1xuICAgICAgICBmb250LXNpemU6IDFyZW07IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gIC5pbnRyby1ibG9jayB7XG4gICAgcGFkZGluZy10b3A6IDkuMzc1cmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiA1LjVyZW07IH0gfVxuXG4uaW50cm8tYmxvY2sgLmg0IHtcbiAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICBtYXJnaW46IDA7IH1cblxuLmludHJvLWJsb2NrIC5nYWxsZXJ5IHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgbWFyZ2luLXRvcDogMy43NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5pbnRyby1ibG9jayAuZ2FsbGVyeSB7XG4gICAgICBtYXJnaW4tdG9wOiA1Ljc1cmVtOyB9IH1cbiAgLmludHJvLWJsb2NrIC5nYWxsZXJ5IC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmludHJvLWJsb2NrIC5zdGF0cy1zbGlkZXJfX3NsaWRlciAuc2xpY2stbGlzdC5kcmFnZ2FibGUge1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXAtcGF0aDogaW5zZXQoLTEwMHZ3IC0xMDB2dyAtMTAwdncgMCk7IH0gfVxuXG4uaW50cm8tYmxvY2sgLnN0YXRzLXNsaWRlcl9fc2xpZGVyIC5zbGljay1saXN0LmRyYWdnaW5nLCAuaW50cm8tYmxvY2sgLnN0YXRzLXNsaWRlcl9fc2xpZGVyIC5zbGljay1saXN0LmRyYWdnYWJsZTphY3RpdmU6aG92ZXIge1xuICBjdXJzb3I6IGdyYWJiaW5nOyB9XG5cbi5pbWctdGV4dC1jb2wge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG1hcmdpbi1ib3R0b206IC0xLjg3NXJlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5pbWctdGV4dC1jb2wge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuaW1nLXRleHQtY29sIHtcbiAgICAgIHBhZGRpbmctdG9wOiAxMi41cmVtOyB9IH1cbiAgLmltZy10ZXh0LWNvbCAuZ3JpZC14IHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tcmlnaHQge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7IH0gfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuaW1nLXRleHQtY29sIC5ncmlkLXguaW1nLXRleHQtY29sLS1sZWZ0IC5pbWctdGV4dC1jb2xfX2NvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLTIuNXJlbTsgfVxuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tbGVmdCAuaW1nLXRleHQtY29sX19jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgIGxlZnQ6IDIuNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tbGVmdCAuaW1nLXRleHQtY29sX19jb2w6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC02LjI1cmVtOyB9XG4gICAgICAuaW1nLXRleHQtY29sIC5ncmlkLXguaW1nLXRleHQtY29sLS1sZWZ0IC5pbWctdGV4dC1jb2xfX2NvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgbGVmdDogNi4yNXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tbGVmdCAuaW1nLXRleHQtY29sX19jb2w6Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC05LjM3NXJlbTsgfVxuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tbGVmdCAuaW1nLXRleHQtY29sX19jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgIGxlZnQ6IDkuMzc1cmVtOyB9XG4gICAgICAgIC5pbWctdGV4dC1jb2wgLmdyaWQteC5pbWctdGV4dC1jb2wtLWxlZnQgLmltZy10ZXh0LWNvbF9fY29sOmxhc3QtY2hpbGQgLmltZy10ZXh0LWNvbF9fdGV4dCB7XG4gICAgICAgICAgcGFkZGluZzogMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5pbWctdGV4dC1jb2wgLmdyaWQteC5pbWctdGV4dC1jb2wtLXJpZ2h0IC5pbWctdGV4dC1jb2xfX2NvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMi41cmVtOyB9XG4gICAgICAuaW1nLXRleHQtY29sIC5ncmlkLXguaW1nLXRleHQtY29sLS1yaWdodCAuaW1nLXRleHQtY29sX19jb2w6bGFzdC1jaGlsZCB7XG4gICAgICAgIHJpZ2h0OiAyLjVyZW07XG4gICAgICAgIGxlZnQ6IC0yLjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5pbWctdGV4dC1jb2wgLmdyaWQteC5pbWctdGV4dC1jb2wtLXJpZ2h0IC5pbWctdGV4dC1jb2xfX2NvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtNi4yNXJlbTsgfVxuICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tcmlnaHQgLmltZy10ZXh0LWNvbF9fY29sOmxhc3QtY2hpbGQge1xuICAgICAgICByaWdodDogNi4yNXJlbTtcbiAgICAgICAgbGVmdDogLTYuMjVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDkwZW0pIHtcbiAgICAgIC5pbWctdGV4dC1jb2wgLmdyaWQteC5pbWctdGV4dC1jb2wtLXJpZ2h0IC5pbWctdGV4dC1jb2xfX2NvbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtOS4zNzVyZW07IH1cbiAgICAgIC5pbWctdGV4dC1jb2wgLmdyaWQteC5pbWctdGV4dC1jb2wtLXJpZ2h0IC5pbWctdGV4dC1jb2xfX2NvbDpsYXN0LWNoaWxkIHtcbiAgICAgICAgcmlnaHQ6IDkuMzc1cmVtO1xuICAgICAgICBsZWZ0OiAtOS4zNzVyZW07IH1cbiAgICAgICAgLmltZy10ZXh0LWNvbCAuZ3JpZC14LmltZy10ZXh0LWNvbC0tcmlnaHQgLmltZy10ZXh0LWNvbF9fY29sOmxhc3QtY2hpbGQgLmltZy10ZXh0LWNvbF9fdGV4dCB7XG4gICAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtOyB9IH1cbiAgLmltZy10ZXh0LWNvbF9fY29sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgLmltZy10ZXh0LWNvbF9faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXRvcDogOTEuMSU7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAgIC5pbWctdGV4dC1jb2xfX2ltYWdlIGltZyB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAgIC5pbWctdGV4dC1jb2xfX2ltYWdlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfSB9XG4gIC5pbWctdGV4dC1jb2xfX3RleHQge1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9XG4gICAgLmltZy10ZXh0LWNvbF9fdGV4dCAuZGlzcGxheS01IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMDAlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjkzOHJlbTtcbiAgICAgIGNvbG9yOiAjMDAwMDAwO1xuICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICAgICAgLmltZy10ZXh0LWNvbF9fdGV4dCAuZGlzcGxheS01IHN0cm9uZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmb250LXdlaWdodDogNjAwOyB9XG4gICAgLmltZy10ZXh0LWNvbF9fdGV4dCBwIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkludGVyXCIsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMy43NXJlbSk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAgIC5pbWctdGV4dC1jb2xfX3RleHQgcDpsYXN0LW9mLXR5cGUge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwOyB9XG4gICAgICAuaW1nLXRleHQtY29sX190ZXh0IHAgKyAqIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgICAgLmltZy10ZXh0LWNvbF9fdGV4dCBwICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTsgfSB9XG4gICAgLmltZy10ZXh0LWNvbF9fdGV4dCBhIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogIzE1MUYzNTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcImRlZ3VsYXJcIjtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpOyB9XG4gICAgICAuaW1nLXRleHQtY29sX190ZXh0IGE6aG92ZXIge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuaW1nLXRleHQtY29sX190ZXh0IGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgIC5pbWctdGV4dC1jb2xfX3RleHQgdWwge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgICAgLmltZy10ZXh0LWNvbF9fdGV4dCB1bCBsaSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyB9XG4gICAgICAgIC5pbWctdGV4dC1jb2xfX3RleHQgdWwgbGk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4OyB9XG4gICAgLmltZy10ZXh0LWNvbF9fdGV4dC5pbnZlcnQgaDIge1xuICAgICAgY29sb3I6ICNmZmZmZmY7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbF9fdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiBtaW4tY29udGVudDtcbiAgICAgICAgbWluLXdpZHRoOiAyMC42MjVyZW07XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgcGFkZGluZzogMS44NzVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5pbWctdGV4dC1jb2xfX3RleHQge1xuICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW07IH0gfVxuICAuaW1nLXRleHQtY29sX19zaGFwZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogZml0LWNvbnRlbnQ7XG4gICAgei1pbmRleDogLTE7XG4gICAgdG9wOiBhdXRvO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMik7IH1cbiAgICAuaW1nLXRleHQtY29sX19zaGFwZSBzdmcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbF9fc2hhcGUge1xuICAgICAgICB0b3A6IDMyJTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuaW1nLXRleHQtY29sX19zaGFwZSB7XG4gICAgICAgIHRvcDogMzYlOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAuaW1nLXRleHQtY29sX19zaGFwZSB7XG4gICAgICAgIHRvcDogMzElOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgICAgLmltZy10ZXh0LWNvbF9fc2hhcGUge1xuICAgICAgICB0b3A6IDI4JTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLmV2ZW50LXNsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogOC45Mzc1cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDguOTM3NXJlbTsgfSB9XG5cbi5ldmVudC1zbGlkZXJfX2lubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5ldmVudC1zbGlkZXJfX2lubmVyIC5tZWRpdW0tNyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgICAuZXZlbnQtc2xpZGVyX19pbm5lciAubWVkaXVtLTcge1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gIC5ldmVudC1zbGlkZXJfX3NsaWRlciB7XG4gICAgbWFyZ2luLXRvcDogY2FsYygoMy43NXJlbSArIDEuMjVyZW0pICogMik7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZXZlbnQtc2xpZGVyX19zbGlkZXIgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KC0xMDB2dyAtMTAwdncgLTEwMHZ3IDApOyB9IH1cblxuLmV2ZW50LXNsaWRlcl9fc2xpZGVyIC5zbGljay1saXN0LmRyYWdnaW5nLCAuZXZlbnQtc2xpZGVyX19zbGlkZXIgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlOmFjdGl2ZTpob3ZlciB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7IH1cblxuLmV2ZW50LXNsaWRlcl9faW1hZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA3MC43NiU7IH1cbiAgLmV2ZW50LXNsaWRlcl9faW1hZ2UgaW1nIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuXG4uZXZlbnQtc2xpZGVyX190ZXh0IHtcbiAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAuZXZlbnQtc2xpZGVyX190ZXh0IC5kaXNwbGF5LTQgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXdlaWdodDogNjAwOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZXZlbnQtc2xpZGVyX190ZXh0IC5kaXNwbGF5LTQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9IH1cbiAgLmV2ZW50LXNsaWRlcl9fdGV4dCBwIHtcbiAgICBmb250LWZhbWlseTogXCJJbnRlclwiLCBzYW5zLXNlcmlmO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE0MyU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgbWF4LXdpZHRoOiAxNS4xMjVyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5ldmVudC1zbGlkZXJfX3RleHQgcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDAuODc1cmVtOyB9IH1cbiAgICAuZXZlbnQtc2xpZGVyX190ZXh0IHAgKyAqIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMjVyZW07IH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgICAgLmV2ZW50LXNsaWRlcl9fdGV4dCBwICsgKiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07IH0gfVxuICAuZXZlbnQtc2xpZGVyX190ZXh0IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiAgICBjb2xvcjogIzE1MUYzNTsgfVxuICAgIC5ldmVudC1zbGlkZXJfX3RleHQgYTpob3ZlciB7XG4gICAgICBjb2xvcjogIzE1MUYzNTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmV2ZW50LXNsaWRlcl9fdGV4dCB7XG4gICAgICBtYXgtd2lkdGg6IDE2LjI1cmVtO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ldmVudC1zbGlkZXJfX3RleHQge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZXZlbnQtc2xpZGVyX190ZXh0IHtcbiAgICAgIG1heC13aWR0aDogMjIuNXJlbTsgfSB9XG5cbi5ldmVudC1zbGlkZXJfX2RhdGUge1xuICBtYXJnaW4tdG9wOiAyLjVyZW07IH1cbiAgLmV2ZW50LXNsaWRlcl9fZGF0ZSAuZGlzcGxheS01IHtcbiAgICBsaW5lLWhlaWdodDogODcuNiU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMi41cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmV2ZW50LXNsaWRlcl9fZGF0ZSAuZGlzcGxheS01IHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMuMTI1cmVtOyB9IH1cbiAgLmV2ZW50LXNsaWRlcl9fZGF0ZSBzcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzQxQTQ5NDtcbiAgICBmb250LWZhbWlseTogXCJkZWd1bGFyXCI7XG4gICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgICAuZXZlbnQtc2xpZGVyX19kYXRlIHNwYW4uc21hbGwge1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1mYW1pbHk6IFwiSW50ZXJcIiwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICBjb2xvcjogIzM0ODM3ODtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMTsgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgICAuZXZlbnQtc2xpZGVyX19kYXRlIHNwYW4uc21hbGwge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07IH0gfVxuICAgIC5ldmVudC1zbGlkZXJfX2RhdGUgc3Bhbi5sYXJnZSB7XG4gICAgICBmb250LXNpemU6IDguMTI1cmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTUlOyB9XG4gICAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgICAgICAuZXZlbnQtc2xpZGVyX19kYXRlIHNwYW4ubGFyZ2Uge1xuICAgICAgICAgIG1hcmdpbi10b3A6IC0xMCU7XG4gICAgICAgICAgZm9udC1zaXplOiAxMS4yNXJlbTsgfSB9XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAgIC5ldmVudC1zbGlkZXJfX2RhdGUgc3Bhbi5sYXJnZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNC4zNzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5ldmVudC1zbGlkZXJfX2RhdGUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTQuMTI1cmVtO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIHBhZGRpbmc6IDAgMC42MjVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5ldmVudC1zbGlkZXJfX2RhdGUge1xuICAgICAgcGFkZGluZzogMDsgfSB9XG5cbi5ldmVudC1zbGlkZXJfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMy45Mzc1cmVtO1xuICBoZWlnaHQ6IDMuOTM3NXJlbTsgfVxuICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLXByZXYsXG4gIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgdG9wOiAwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgd2lkdGg6IDAuNzVyZW07XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBjb2xvcjogIzE1MUYzNTsgfVxuICAgIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stcHJldjpob3ZlciwgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1wcmV2OmZvY3VzLCAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLXByZXY6YWN0aXZlLFxuICAgIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQ6Zm9jdXMsXG4gICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1uZXh0OmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyB9XG4gICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1wcmV2OmZvY3VzLFxuICAgIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDpmb2N1cyB7XG4gICAgICBvdXRsaW5lOiAycHggZG90dGVkO1xuICAgICAgYmFja2dyb3VuZDogbm9uZTsgfVxuICAgIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stcHJldiBzdmcsXG4gICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLXByZXYsXG4gICAgICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgICAgICB3aWR0aDogMC43NXJlbTsgfSB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1wcmV2LFxuICAgICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHtcbiAgICAgICAgd2lkdGg6IDFyZW07IH0gfVxuICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLXByZXYge1xuICAgIGxlZnQ6IDA7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbi1yaWdodDogNHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1wcmV2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA5cHg7IH0gfVxuICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICBtYXJnaW4tbGVmdDogNHB4OyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgICAgLmV2ZW50LXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDlweDsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuZXZlbnQtc2xpZGVyX19uYXYge1xuICAgICAgd2lkdGg6IDcuODc1cmVtO1xuICAgICAgaGVpZ2h0OiA3Ljg3NXJlbTsgfSB9XG4gIC5ldmVudC1zbGlkZXJfX25hdjo6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIGJhY2tncm91bmQ6ICNmZmZmZmY7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQxQTQ5NDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzkuOTk4NzVlbSkge1xuICAgIC5ldmVudC1zbGlkZXJfX25hdiB7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICBib3R0b206IGNhbGMoMTAwJSArIDEuMjVyZW0pO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogYXV0bzsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmV2ZW50LXNsaWRlcl9fbmF2IHtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgcmlnaHQ6IC0yNCU7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmV2ZW50LXNsaWRlcl9fbmF2IHtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHdpZHRoOiA3Ljg3NXJlbTtcbiAgICAgIGhlaWdodDogNy44NzVyZW07IH1cbiAgICAgIC5ldmVudC1zbGlkZXJfX25hdiAuc2xpY2stcHJldiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOXB4OyB9XG4gICAgICAuZXZlbnQtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogOXB4OyB9IH1cblxuLmNvdXJzZS1oaWdobGlnaHRzIC5pbm5lciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4uY291cnNlLWhpZ2hsaWdodHMgLmNpcmNsZSB7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTsgfVxuICAuY291cnNlLWhpZ2hsaWdodHMgLmNpcmNsZSAuZGlzcGxheS0yIHtcbiAgICBsaW5lLWhlaWdodDogODcuNiU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAuY291cnNlLWhpZ2hsaWdodHMgLmNpcmNsZV9faW5uZXIge1xuICAgICAgcGFkZGluZzogMCAxLjI1cmVtOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY291cnNlLWhpZ2hsaWdodHMgLmNpcmNsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoKDEwMCUgLyAzKSAtIDEuMjVyZW0pOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5jb3Vyc2UtaGlnaGxpZ2h0cyAuY2lyY2xlIHtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKCgxMDAlIC8gMykgLSAyLjVyZW0pOyB9IH1cblxuLmNvdXJzZS1oaWdobGlnaHRzX19zaGFwZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMy43NXJlbTtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IC0xO1xuICBwYWRkaW5nLXRvcDogMTAwJTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjc1KTsgfVxuICAuY291cnNlLWhpZ2hsaWdodHNfX3NoYXBlIHN2ZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuY291cnNlLWhpZ2hsaWdodHNfX3NoYXBlIHtcbiAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgIHBhZGRpbmctdG9wOiA1NSU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5jb3Vyc2UtaGlnaGxpZ2h0c19fc2hhcGUge1xuICAgICAgcGFkZGluZy10b3A6IDQ4JTtcbiAgICAgIGJvdHRvbTogLTMuNzVyZW07XG4gICAgICB0b3A6IGF1dG87IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmNvdXJzZS1oaWdobGlnaHRzX19zaGFwZSB7XG4gICAgICBwYWRkaW5nLXRvcDogNTklO1xuICAgICAgbGVmdDogLTglO1xuICAgICAgYm90dG9tOiAtNy41cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAuY291cnNlLWhpZ2hsaWdodHNfX3NoYXBlIHtcbiAgICAgIHBhZGRpbmctdG9wOiA1MiU7IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAuZGlzY292ZXItbW9yZS1zbGlkZXIgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICBjbGlwLXBhdGg6IGluc2V0KC0xMDB2dyAtMTAwdncgLTEwMHZ3IDApOyB9IH1cblxuLmRpc2NvdmVyLW1vcmUtc2xpZGVyIC5zbGljay1saXN0LmRyYWdnaW5nLCAuZGlzY292ZXItbW9yZS1zbGlkZXIgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlOmFjdGl2ZTpob3ZlciB7XG4gIGN1cnNvcjogZ3JhYmJpbmc7IH1cblxuQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19zbGlkZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX3NsaWRlIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDEuNDM3NXJlbTsgfSB9XG5cbi5kaXNjb3Zlci1tb3JlLXNsaWRlciBhOmZvY3VzIHtcbiAgcGFkZGluZzogNXB4O1xuICBvdXRsaW5lLW9mZnNldDogLTRweDsgfVxuXG4uZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMy45Mzc1cmVtO1xuICBoZWlnaHQ6IDMuOTM3NXJlbTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgLSA2M3B4KTsgfVxuICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stcHJldixcbiAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgIHRvcDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIHdpZHRoOiAwLjc1cmVtO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgY29sb3I6ICMxNTFGMzU7IH1cbiAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stcHJldjpob3ZlciwgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYgLnNsaWNrLXByZXY6Zm9jdXMsIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2OmFjdGl2ZSxcbiAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDpmb2N1cyxcbiAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDphY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2OmZvY3VzLFxuICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0OmZvY3VzIHtcbiAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQ7XG4gICAgICBiYWNrZ3JvdW5kOiBub25lOyB9XG4gICAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYgLnNsaWNrLXByZXYgc3ZnLFxuICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stcHJldixcbiAgICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHtcbiAgICAgICAgd2lkdGg6IDAuNzVyZW07IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2LFxuICAgICAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgICAgICB3aWR0aDogMXJlbTsgfSB9XG4gIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2IHtcbiAgICBsZWZ0OiAwO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW4tcmlnaHQ6IDRweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA5cHg7IH0gfVxuICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgcmlnaHQ6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZVgoLTEpO1xuICAgIG1hcmdpbi1sZWZ0OiA0cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuZGlzY292ZXItbW9yZS1zbGlkZXJfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA5cHg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYge1xuICAgICAgd2lkdGg6IDcuODc1cmVtO1xuICAgICAgaGVpZ2h0OiA3Ljg3NXJlbTsgfSB9XG4gIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2OjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjNDFBNDk0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLmRpc2NvdmVyLW1vcmUtc2xpZGVyX19uYXYge1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgYm90dG9tOiAyNSU7XG4gICAgICBsZWZ0OiBhdXRvO1xuICAgICAgcmlnaHQ6IC0yLjUlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5kaXNjb3Zlci1tb3JlLXNsaWRlcl9fbmF2IHtcbiAgICAgIHJpZ2h0OiAtMy41JTsgfSB9XG5cbi5tYXN0aGVhZC1pbWFnZSArICoge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7IH1cblxuLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICBtaW4taGVpZ2h0OiA0MnZoOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICAgICAgbWluLWhlaWdodDogNDB2aDsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICAgICAgbWluLWhlaWdodDogNjB2aDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzLjc1cmVtOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDE0NDBweCkgYW5kIChtYXgtaGVpZ2h0OiA5MTBweCkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX2lubmVyIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDcydmg7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9faW5uZXIge1xuICAgICAgbWluLWhlaWdodDogNTJ2aDtcbiAgICAgIHBhZGRpbmctdG9wOiA1MnZoOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwZW0pIHtcbiAgICAubWFzdGhlYWQtaW1hZ2UubWFzdGhlYWQtaW1hZ2Utc2hvcnQgLm1hc3RoZWFkLWltYWdlX19pbm5lciB7XG4gICAgICBwYWRkaW5nLXRvcDogNTR2aDsgfSB9XG5cbi5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3RpdGxlIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDY4LjElO1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgZmlsdGVyOiBjb250cmFzdCgxKTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjMuOTk4NzVlbSkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUgc3Ryb25nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzE1MUYzNTtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGZpbHRlcjogY29udHJhc3QoMSk7IH1cbiAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fdGl0bGUuZGlzcGxheS0yIHtcbiAgICBsaW5lLWhlaWdodDogOTQuMSU7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gICAgICAubWFzdGhlYWQtaW1hZ2UubWFzdGhlYWQtaW1hZ2Utc2hvcnQgLm1hc3RoZWFkLWltYWdlX190aXRsZS5kaXNwbGF5LTIge1xuICAgICAgICBmb250LXNpemU6IDUuNjI1cmVtOyB9IH1cblxuLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUge1xuICBkaXNwbGF5OiBmbGV4OyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzOS45OTg3NWVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuc2hhcGUtMSB7XG4gICAgICB3aWR0aDogOTUuMyU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLnNoYXBlLTEge1xuICAgICAgd2lkdGg6IDYwJTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuc2hhcGUtMSB7XG4gICAgICB3aWR0aDogNTB2dzsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFzdGhlYWQtaW1hZ2UubWFzdGhlYWQtaW1hZ2Utc2hvcnQgLm1hc3RoZWFkLWltYWdlX19zaGFwZS5zaGFwZS0xIHtcbiAgICAgIG1pbi13aWR0aDogYXV0bztcbiAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBib3R0b206IC01cmVtICFpbXBvcnRhbnQ7IH0gfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjBlbSkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLnNoYXBlLTEge1xuICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIG1heC13aWR0aDogNTByZW07IH0gfVxuICBAbWVkaWEgKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6IDcwMHB4KSBhbmQgKG1heC13aWR0aDogMTQ0MHB4KSBhbmQgKG1heC1oZWlnaHQ6IDkxMHB4KSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuc2hhcGUtMSB7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgbWluLXdpZHRoOiBhdXRvOyB9IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM5Ljk5ODc1ZW0pIHtcbiAgICAubWFzdGhlYWQtaW1hZ2UubWFzdGhlYWQtaW1hZ2Utc2hvcnQgLm1hc3RoZWFkLWltYWdlX19zaGFwZS5zaGFwZS0yIHtcbiAgICAgIHdpZHRoOiA3MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLnNoYXBlLTIge1xuICAgICAgd2lkdGg6IDU1JTsgfSB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuc2hhcGUtMiB7XG4gICAgICB3aWR0aDogNDUlOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLnNoYXBlLTIge1xuICAgICAgbWluLXdpZHRoOiBhdXRvO1xuICAgICAgbWF4LXdpZHRoOiBpbml0aWFsO1xuICAgICAgd2lkdGg6IDQyJTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMGVtKSB7XG4gICAgLm1hc3RoZWFkLWltYWdlLm1hc3RoZWFkLWltYWdlLXNob3J0IC5tYXN0aGVhZC1pbWFnZV9fc2hhcGUuc2hhcGUtMiB7XG4gICAgICB3aWR0aDogNDElOyB9IH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkgYW5kIChtaW4taGVpZ2h0OiA3MDBweCkgYW5kIChtYXgtd2lkdGg6IDE0NDBweCkgYW5kIChtYXgtaGVpZ2h0OiA5MTBweCkge1xuICAgIC5tYXN0aGVhZC1pbWFnZS5tYXN0aGVhZC1pbWFnZS1zaG9ydCAubWFzdGhlYWQtaW1hZ2VfX3NoYXBlLnNoYXBlLTIge1xuICAgICAgd2lkdGg6IDQyJTtcbiAgICAgIG1pbi13aWR0aDogYXV0bzsgfSB9XG5cbi5mZWF0dXJlLWltZy1jb2xzIHtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTsgfVxuICAuZmVhdHVyZS1pbWctY29sc19faW1hZ2Uge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mZWF0dXJlLWltZy1jb2xzX19pbWFnZSBpbWcge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgLmZlYXR1cmUtaW1nLWNvbHMtLTIgLmZlYXR1cmUtaW1nLWNvbHNfX2ltYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogNTAlO1xuICAgIHdpZHRoOiA1MCU7IH1cbiAgICAuZmVhdHVyZS1pbWctY29scy0tMiAuZmVhdHVyZS1pbWctY29sc19faW1hZ2U6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiAyNSU7IH1cbiAgLmZlYXR1cmUtaW1nLWNvbHMtLTMgLmZlYXR1cmUtaW1nLWNvbHNfX2ltYWdlIHtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygxMDAlIC8gMyk7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpOyB9XG4gICAgLmZlYXR1cmUtaW1nLWNvbHMtLTMgLmZlYXR1cmUtaW1nLWNvbHNfX2ltYWdlOm50aC1jaGlsZCgyKSB7XG4gICAgICBtYXJnaW4tdG9wOiAxNSU7IH1cbiAgICAuZmVhdHVyZS1pbWctY29scy0tMyAuZmVhdHVyZS1pbWctY29sc19faW1hZ2U6bGFzdC1jaGlsZCB7XG4gICAgICBtYXJnaW4tdG9wOiA1JTsgfVxuICAuZmVhdHVyZS1pbWctY29scy0tMiB7XG4gICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuZmVhdHVyZS1pbWctY29scy0tMiB7XG4gICAgICAgIG1hcmdpbi10b3A6IDUuMjVyZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtOyB9IH1cbiAgLmZlYXR1cmUtaW1nLWNvbHMtLTMge1xuICAgIG1hcmdpbjogMi41cmVtIDA7IH1cbiAgICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgICAgLmZlYXR1cmUtaW1nLWNvbHMtLTMge1xuICAgICAgICBtYXJnaW46IDVyZW0gMDsgfSB9XG4gICAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAgIC5mZWF0dXJlLWltZy1jb2xzLS0zIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOS4xODc1cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1LjkzNzVyZW07IH0gfVxuXG5AbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAubWFzdGhlYWQtc2VhcmNoOm5vdCguaW52ZXJ0KSAuaW5uZXIge1xuICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTEuMjVyZW07XG4gICAgbWluLWhlaWdodDogY2FsYyg2MHZoIC0gOTJweCk7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5MGVtKSB7XG4gIC5tYXN0aGVhZC1zZWFyY2g6bm90KC5pbnZlcnQpIC5pbm5lciB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyLjc1cmVtO1xuICAgIG1pbi1oZWlnaHQ6IGNhbGMoMTAwdmggLSAxMi43NXJlbSk7IH0gfVxuXG4ubWFzdGhlYWQtc2VhcmNoLnB1cnBsZSBoMSBzdHJvbmcge1xuICBjb2xvcjogIzRDNDM5NDsgfVxuXG4ubWFzdGhlYWQtc2VhcmNoLnB1cnBsZSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5tYXN0aGVhZC1zZWFyY2gucHVycGxlIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBib3JkZXItY29sb3I6ICM0QzQzOTQ7IH1cblxuLm1hc3RoZWFkLXNlYXJjaC5yZWQgaDEgc3Ryb25nIHtcbiAgY29sb3I6ICNFNjQ1NTA7IH1cblxuLm1hc3RoZWFkLXNlYXJjaC5yZWQgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4ubWFzdGhlYWQtc2VhcmNoLnJlZCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm9yZGVyLWNvbG9yOiAjRTY0NTUwOyB9XG5cbi5tYXN0aGVhZC1zZWFyY2guYmx1ZSBoMSBzdHJvbmcge1xuICBjb2xvcjogIzQxQTQ5NDsgfVxuXG4ubWFzdGhlYWQtc2VhcmNoLmJsdWUgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4ubWFzdGhlYWQtc2VhcmNoLmJsdWUgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gIGJvcmRlci1jb2xvcjogIzQxQTQ5NDsgfVxuXG4ubWFzdGhlYWQtc2VhcmNoLnBpbmsgaDEgc3Ryb25nIHtcbiAgY29sb3I6ICNFQjVFOTQ7IH1cblxuLm1hc3RoZWFkLXNlYXJjaC5waW5rIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLm1hc3RoZWFkLXNlYXJjaC5waW5rIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICBib3JkZXItY29sb3I6ICNFQjVFOTQ7IH1cblxuLm1hc3RoZWFkLXNlYXJjaCAubWFzdGhlYWQtc3BsaXRfX3RleHQge1xuICB3aWR0aDogMTAwJTsgfVxuICAubWFzdGhlYWQtc2VhcmNoIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCBoMSBzdHJvbmcge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAubWFzdGhlYWQtc2VhcmNoIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzLjVyZW07IH0gfVxuICAubWFzdGhlYWQtc2VhcmNoIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCBwIHtcbiAgICBmb250LXNpemU6IDAuODc1cmVtOyB9XG4gICAgLm1hc3RoZWFkLXNlYXJjaCAubWFzdGhlYWQtc3BsaXRfX3RleHQgcCArICoge1xuICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTsgfVxuICAubWFzdGhlYWQtc2VhcmNoIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCBpbnB1dCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDsgfVxuICAubWFzdGhlYWQtc2VhcmNoIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCBmb3JtIC5zZWFyY2gtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvc2VhcmNoLWljb24tYmxhY2suc3ZnXCIpOyB9XG4gIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgLm1hc3RoZWFkLXNlYXJjaCAubWFzdGhlYWQtc3BsaXRfX3RleHQgZm9ybSB7XG4gICAgICBtYXgtd2lkdGg6IDI1LjY4NzVyZW07IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDBlbSkge1xuICAgIC5tYXN0aGVhZC1zZWFyY2ggLm1hc3RoZWFkLXNwbGl0X190ZXh0IHtcbiAgICAgIHdpZHRoOiA1MCU7IH0gfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5tYXN0aGVhZC1zZWFyY2ggLm1hc3RoZWFkLXNwbGl0X190ZXh0IHtcbiAgICAgIHdpZHRoOiA0MHZ3O1xuICAgICAgbWF4LXdpZHRoOiAzMi4zMTI1cmVtOyB9IH1cblxuLm1hc3RoZWFkLXNlYXJjaCArIC5maWx0ZXJzIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gIC5tYXN0aGVhZC1zZWFyY2ggKyAuZmlsdGVycyAuZmlsdGVyc19fZmFjZXRzIHtcbiAgICBtYXJnaW46IDEuMjVyZW0gMDsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAubWFzdGhlYWQtc2VhcmNoICsgLmZpbHRlcnMgLmZpbHRlcnNfX2ZhY2V0cyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAyLjVyZW0pO1xuICAgICAgICBtYXJnaW46IDA7IH0gfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5tYXN0aGVhZC1zZWFyY2ggKyAuZmlsdGVycyAuZmlsdGVyc19fZmFjZXRzIHtcbiAgICAgICAgYm90dG9tOiBjYWxjKDEwMCUgKyAyLjg3NXJlbSk7IH0gfVxuICAubWFzdGhlYWQtc2VhcmNoICsgLmZpbHRlcnMgLnRhYnMge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gIC5tYXN0aGVhZC1zZWFyY2ggKyAuZmlsdGVycyAudGFicy1wYW5lbCB7XG4gICAgbWFyZ2luLXRvcDogMDsgfVxuXG4ubWFzdGhlYWQtc2VhcmNoX19pbWFnZSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY0ZW0pIHtcbiAgICAubWFzdGhlYWQtc2VhcmNoX19pbWFnZSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDglO1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIG1heC13aWR0aDogNTEuMjVyZW07XG4gICAgICBoZWlnaHQ6IDEwMCU7IH0gfVxuICBAbWVkaWEgYWxsIGFuZCAoZGV2aWNlLXdpZHRoOiAxNDQwcHgpIGFuZCAoZGV2aWNlLWhlaWdodDogOTAwcHgpIGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSkge1xuICAgIC5tYXN0aGVhZC1zZWFyY2hfX2ltYWdlIHtcbiAgICAgIHRvcDogMDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgLnNvY2lhbC1zbGlkZXIge1xuICAgIHBhZGRpbmctdG9wOiAxMS4wNjI1cmVtIDAgNS42MjVyZW0gMDsgfSB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zb2NpYWwtc2xpZGVyIC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgY2xpcC1wYXRoOiBub25lOyB9IH1cblxuLnNvY2lhbC1zbGlkZXIgaDIge1xuICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTsgfVxuICBAbWVkaWEgcHJpbnQsIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNjRlbSkge1xuICAgIC5zb2NpYWwtc2xpZGVyIGgyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMS4yNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQuNDM3NXJlbTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc29jaWFsLXNsaWRlciBoMiB7XG4gICAgICBtYXJnaW4tbGVmdDogLTEuODc1cmVtOyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgIC5zb2NpYWwtc2xpZGVyIGgyIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAtMi41cmVtOyB9IH1cblxuLnNvY2lhbC1zbGlkZXIgLmNvbnRlbnQtY2FyZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDEwMCU7IH1cbiAgLnNvY2lhbC1zbGlkZXIgLmNvbnRlbnQtY2FyZCBpbWcge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gIC5zb2NpYWwtc2xpZGVyIC5jb250ZW50LWNhcmQgaSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMXJlbTtcbiAgICByaWdodDogMS4yNXJlbTtcbiAgICBmb250LXNpemU6IDEuODc1cmVtOyB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTBlbSkge1xuICAgICAgLnNvY2lhbC1zbGlkZXIgLmNvbnRlbnQtY2FyZCBpIHtcbiAgICAgICAgZm9udC1zaXplOiAyLjVyZW07IH0gfVxuICAuc29jaWFsLXNsaWRlciAuY29udGVudC1jYXJkIGE6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHotaW5kZXg6IDE7IH1cbiAgLnNvY2lhbC1zbGlkZXIgLmNvbnRlbnQtY2FyZCBhOmZvY3VzOjpiZWZvcmUge1xuICAgIG91dGxpbmU6IDJweCBkb3R0ZWQgI2ZmZmZmZjtcbiAgICBvdXRsaW5lLW9mZnNldDogMnB4OyB9XG5cbkBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MGVtKSB7XG4gIC5zb2NpYWwtc2xpZGVyX19zbGlkZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtOyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAuc29jaWFsLXNsaWRlcl9fc2xpZGUge1xuICAgIG1hcmdpbi1yaWdodDogMS40Mzc1cmVtOyB9IH1cblxuLnNvY2lhbC1zbGlkZXJfX25hdiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICByaWdodDogMDtcbiAgbWFyZ2luOiBhdXRvO1xuICB3aWR0aDogMy45Mzc1cmVtO1xuICBoZWlnaHQ6IDMuOTM3NXJlbTtcbiAgYm90dG9tOiBjYWxjKDEwMCUgLSA2M3B4KTsgfVxuICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2LFxuICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHtcbiAgICB0b3A6IDA7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMC43NXJlbTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGNvbG9yOiAjMTUxRjM1OyB9XG4gICAgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stcHJldjpob3ZlciwgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stcHJldjpmb2N1cywgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stcHJldjphY3RpdmUsXG4gICAgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dDpob3ZlcixcbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0OmZvY3VzLFxuICAgIC5zb2NpYWwtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQ6YWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7IH1cbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2OmZvY3VzLFxuICAgIC5zb2NpYWwtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQ6Zm9jdXMge1xuICAgICAgb3V0bGluZTogMnB4IGRvdHRlZDtcbiAgICAgIGJhY2tncm91bmQ6IG5vbmU7IH1cbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2IHN2ZyxcbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTsgfVxuICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NGVtKSB7XG4gICAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2LFxuICAgICAgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgICAgIHdpZHRoOiAwLjc1cmVtOyB9IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2LFxuICAgICAgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stbmV4dCB7XG4gICAgICAgIHdpZHRoOiAxcmVtOyB9IH1cbiAgLnNvY2lhbC1zbGlkZXJfX25hdiAuc2xpY2stcHJldiB7XG4gICAgbGVmdDogMDtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luLXJpZ2h0OiA0cHg7IH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NWVtKSB7XG4gICAgICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1wcmV2IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA5cHg7IH0gfVxuICAuc29jaWFsLXNsaWRlcl9fbmF2IC5zbGljay1uZXh0IHtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlWCgtMSk7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDsgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAgIC5zb2NpYWwtc2xpZGVyX19uYXYgLnNsaWNrLW5leHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogOXB4OyB9IH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzVlbSkge1xuICAgIC5zb2NpYWwtc2xpZGVyX19uYXYge1xuICAgICAgd2lkdGg6IDcuODc1cmVtO1xuICAgICAgaGVpZ2h0OiA3Ljg3NXJlbTsgfSB9XG4gIC5zb2NpYWwtc2xpZGVyX19uYXY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICBiYWNrZ3JvdW5kOiAjZmZmZmZmO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICM0MUE0OTQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7IH1cbiAgQG1lZGlhIHByaW50LCBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQwZW0pIHtcbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IHtcbiAgICAgIHRvcDogYXV0bztcbiAgICAgIGJvdHRvbTogMjUlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiAtMi41JTsgfSB9XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc1ZW0pIHtcbiAgICAuc29jaWFsLXNsaWRlcl9fbmF2IHtcbiAgICAgIHJpZ2h0OiAtMy41JTsgfSB9XG4iLCIvKipcbiAqIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4gKiBWZXJzaW9uIDYuNi4zXG4gKiBodHRwczovL2dldC5mb3VuZGF0aW9uXG4gKiBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcbiAqL1xuXG4vLyAtLS0gRGVwZW5kZW5jaWVzIC0tLVxuQGltcG9ydCAndmVuZG9yL25vcm1hbGl6ZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2hlbHBlcnMvbWlzc2luZy1kZXBlbmRlbmNpZXMnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9oZWxwZXJzL3RydWUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvY29udGFpbic7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9wdXJnZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy9yZW1vdmUnO1xuQGltcG9ydCAnLi4vX3ZlbmRvci9zYXNzeS1saXN0cy9zdHlsZXNoZWV0cy9mdW5jdGlvbnMvcmVwbGFjZSc7XG5AaW1wb3J0ICcuLi9fdmVuZG9yL3Nhc3N5LWxpc3RzL3N0eWxlc2hlZXRzL2Z1bmN0aW9ucy90by1saXN0JztcblxuLy8gLS0tIFNldHRpbmdzIC0tLVxuLy8gaW1wb3J0IHlvdXIgb3duIGBzZXR0aW5nc2AgaGVyZSBvclxuLy8gaW1wb3J0IGFuZCBtb2RpZnkgdGhlIGRlZmF1bHQgc2V0dGluZ3MgdGhyb3VnaFxuLy8gQGltcG9ydCAnc2V0dGluZ3Mvc2V0dGluZ3MnO1xuXG4vLyAtLS0gQ29tcG9uZW50cyAtLS1cbi8vIFV0aWxpdGllc1xuQGltcG9ydCAndXRpbC91dGlsJztcbi8vIEdsb2JhbCBzdHlsZXNcbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdmb3Jtcy9mb3Jtcyc7XG5AaW1wb3J0ICd0eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG4vLyBHcmlkc1xuQGltcG9ydCAnZ3JpZC9ncmlkJztcbkBpbXBvcnQgJ3h5LWdyaWQveHktZ3JpZCc7XG4vLyBHZW5lcmljIGNvbXBvbmVudHNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnV0dG9uLWdyb3VwJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2xvc2UtYnV0dG9uJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvbGFiZWwnO1xuQGltcG9ydCAnY29tcG9uZW50cy9wcm9ncmVzcy1iYXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zbGlkZXInO1xuQGltcG9ydCAnY29tcG9uZW50cy9zd2l0Y2gnO1xuQGltcG9ydCAnY29tcG9uZW50cy90YWJsZSc7XG4vLyBCYXNpYyBjb21wb25lbnRzXG5AaW1wb3J0ICdjb21wb25lbnRzL2JhZGdlJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvYnJlYWRjcnVtYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy9jYWxsb3V0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvY2FyZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcGFnaW5hdGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL3Rvb2x0aXAnO1xuXG4vLyBDb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL2FjY29yZGlvbic7XG5AaW1wb3J0ICdjb21wb25lbnRzL21lZGlhLW9iamVjdCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL29yYml0JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmVzcG9uc2l2ZS1lbWJlZCc7XG5AaW1wb3J0ICdjb21wb25lbnRzL3RhYnMnO1xuQGltcG9ydCAnY29tcG9uZW50cy90aHVtYm5haWwnO1xuLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG5AaW1wb3J0ICdjb21wb25lbnRzL21lbnUnO1xuQGltcG9ydCAnY29tcG9uZW50cy9tZW51LWljb24nO1xuQGltcG9ydCAnY29tcG9uZW50cy9hY2NvcmRpb24tbWVudSc7XG5AaW1wb3J0ICdjb21wb25lbnRzL2RyaWxsZG93bic7XG5AaW1wb3J0ICdjb21wb25lbnRzL2Ryb3Bkb3duLW1lbnUnO1xuXG4vLyBMYXlvdXQgY29tcG9uZW50c1xuQGltcG9ydCAnY29tcG9uZW50cy9vZmYtY2FudmFzJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvcmV2ZWFsJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvc3RpY2t5JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdGl0bGUtYmFyJztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdG9wLWJhcic7XG5cbi8vIEhlbHBlcnNcbkBpbXBvcnQgJ2NvbXBvbmVudHMvZmxvYXQnO1xuQGltcG9ydCAnY29tcG9uZW50cy9mbGV4JztcbkBpbXBvcnQgJ2NvbXBvbmVudHMvdmlzaWJpbGl0eSc7XG5AaW1wb3J0ICdwcm90b3R5cGUvcHJvdG90eXBlJztcblxuXG5AbWl4aW4gZm91bmRhdGlvbi1ldmVyeXRoaW5nKFxuICAkZmxleDogdHJ1ZSxcbiAgJHByb3RvdHlwZTogZmFsc2UsXG4gICR4eS1ncmlkOiAkeHktZ3JpZFxuKSB7XG4gIEBpZiAkZmxleCB7XG4gICAgJGdsb2JhbC1mbGV4Ym94OiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICBAaWYgJHh5LWdyaWQge1xuICAgICR4eS1ncmlkOiB0cnVlICFnbG9iYWw7XG4gIH1cblxuICAvLyBHbG9iYWwgc3R5bGVzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1mb3JtcztcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10eXBvZ3JhcGh5O1xuXG4gIC8vIEdyaWRzXG4gIEBpZiBub3QgJGZsZXgge1xuICAgIEBpbmNsdWRlIGZvdW5kYXRpb24tZ3JpZDtcbiAgfVxuICBAZWxzZSB7XG4gICAgQGlmICR4eS1ncmlkIHtcbiAgICAgIEBpbmNsdWRlIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBAaW5jbHVkZSBmb3VuZGF0aW9uLWZsZXgtZ3JpZDtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmljIGNvbXBvbmVudHNcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1idXR0b247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYnV0dG9uLWdyb3VwO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNsb3NlLWJ1dHRvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1sYWJlbDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm9ncmVzcy1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tc2xpZGVyO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN3aXRjaDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJsZTtcbiAgLy8gQmFzaWMgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJhZGdlO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWJyZWFkY3J1bWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWNhbGxvdXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tY2FyZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1kcm9wZG93bjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1wYWdpbmF0aW9uO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRvb2x0aXA7XG5cbiAgLy8gQ29udGFpbmVyc1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLWFjY29yZGlvbjtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZWRpYS1vYmplY3Q7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tb3JiaXQ7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmVzcG9uc2l2ZS1lbWJlZDtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10YWJzO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXRodW1ibmFpbDtcbiAgLy8gTWVudS1iYXNlZCBjb250YWluZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbWVudTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi1tZW51LWljb247XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tYWNjb3JkaW9uLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJpbGxkb3duLW1lbnU7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZHJvcGRvd24tbWVudTtcblxuICAvLyBMYXlvdXQgY29tcG9uZW50c1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLW9mZi1jYW52YXM7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tcmV2ZWFsO1xuICBAaW5jbHVkZSBmb3VuZGF0aW9uLXN0aWNreTtcbiAgQGluY2x1ZGUgZm91bmRhdGlvbi10aXRsZS1iYXI7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tdG9wLWJhcjtcblxuICAvLyBIZWxwZXJzXG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcztcbiAgQGlmICRmbGV4IHsgQGluY2x1ZGUgZm91bmRhdGlvbi1mbGV4LWNsYXNzZXM7IH1cbiAgQGluY2x1ZGUgZm91bmRhdGlvbi12aXNpYmlsaXR5LWNsYXNzZXM7XG4gIEBpZiAkcHJvdG90eXBlIHsgQGluY2x1ZGUgZm91bmRhdGlvbi1wcm90b3R5cGUtY2xhc3NlczsgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJyZWFrcG9pbnRzXG4vLy8vXG5cbi8vLyBBIGxpc3Qgb2YgbmFtZWQgYnJlYWtwb2ludHMuIFlvdSBjYW4gdXNlIHRoZXNlIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRvIHF1aWNrbHkgY3JlYXRlIG1lZGlhIHF1ZXJpZXMuXG4vLy8gQHR5cGUgTWFwXG4kYnJlYWtwb2ludHM6IChcbiAgc21hbGw6IDAsXG4gIG1lZGl1bTogNjQwcHgsXG4gIGxhcmdlOiAxMDI0cHgsXG4gIHhsYXJnZTogMTIwMHB4LFxuICB4eGxhcmdlOiAxNDQwcHgsXG4pICFkZWZhdWx0O1xuXG4vLy8gQSBsaXN0IG9mIG5hbWVkIEhpRFBJIGJyZWFrcG9pbnRzLiBZb3UgY2FuIHVzZSB0aGVzZSB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBxdWlja2x5IGNyZWF0ZSBtZWRpYSBxdWVyaWVzIGZvciByZXNvbHV0aW9ucy5cbi8vLyBWYWx1ZXMgbXVzdCByZXByZXNlbnQgdGhlIGRldmljZSBwaXhlbHMgLyB3ZWIgcGl4ZWxzIHJhdGlvbiBhbmQgYmUgdW5pdGxlc3Mgb3IgaW4gRFBQWC5cbi8vLyBAdHlwZSBNYXBcbiRicmVha3BvaW50cy1oaWRwaTogKFxuICBoaWRwaS0xOiAxLFxuICBoaWRwaS0xLTU6IDEuNSxcbiAgaGlkcGktMjogMixcbiAgcmV0aW5hOiAyLFxuICBoaWRwaS0zOiAzXG4pICFkZWZhdWx0O1xuXG4vLy8gVGhlIGxhcmdlc3QgbmFtZWQgYnJlYWtwb2ludCBpbiB3aGljaCB0byBpbmNsdWRlIHByaW50IGFzIGEgbWVkaWEgdHlwZVxuLy8vIEB0eXBlIEtleXdvcmRcbiRwcmludC1icmVha3BvaW50OiBsYXJnZSAhZGVmYXVsdDtcblxuJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IHNtYWxsICFkZWZhdWx0O1xuXG4kLXpmLWJyZWFrcG9pbnRzLWtleXM6IG1hcC10by1saXN0KCRicmVha3BvaW50cywgJ2tleXMnKTtcblxuQGlmIG50aChtYXAtdmFsdWVzKCRicmVha3BvaW50cyksIDEpICE9IDAge1xuICBAZXJyb3IgJ1RoZSBmaXJzdCBrZXkgaW4gdGhlICRicmVha3BvaW50cyBtYXAgbXVzdCBoYXZlIGEgdmFsdWUgb2YgXCIwXCIuJztcbn1cbkBlbHNlIHtcbiAgJC16Zi16ZXJvLWJyZWFrcG9pbnQ6IG50aChtYXAta2V5cygkYnJlYWtwb2ludHMpLCAxKTtcbn1cblxuLy8vIEFsbCBvZiB0aGUgbmFtZXMgaW4gdGhpcyBsaXN0IHdpbGwgYmUgb3V0cHV0IGFzIGNsYXNzZXMgaW4geW91ciBDU1MsIGxpa2UgYC5zbWFsbC0xMmAsIGAubWVkaXVtLTZgLCBhbmQgc28gb24uIEVhY2ggdmFsdWUgaW4gdGhpcyBsaXN0IG11c3QgYWxzbyBiZSBpbiB0aGUgYCRicmVha3BvaW50c2AgbWFwLlxuLy8vIEB0eXBlIExpc3RcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UpICFkZWZhdWx0O1xuXG4vLy8gR2VuZXJhdGVzIGEgbWVkaWEgcXVlcnkgc3RyaW5nIG1hdGNoaW5nIHRoZSBpbnB1dCB2YWx1ZS4gUmVmZXIgdG8gdGhlIGRvY3VtZW50YXRpb24gZm9yIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0byBzZWUgd2hhdCB0aGUgcG9zc2libGUgaW5wdXRzIGFyZS5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICR2YWwgW3NtYWxsXSAtIEJyZWFrcG9pbnQgbmFtZSwgb3IgcHgsIHJlbSwgb3IgZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbkBmdW5jdGlvbiBicmVha3BvaW50KCR2YWw6ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gIC8vIFdlYiBzdGFuZGFyZCBQaXhlbHMgcGVyIGluY2guICgxZGRweCAvICRzdGQtd2ViLWRwaSkgPSAxZHBpXG4gIC8vIFNlZSBodHRwczovL3d3dy53My5vcmcvVFIvY3NzLXZhbHVlcy0zLyNhYnNvbHV0ZS1sZW5ndGhzXG4gICRzdGQtd2ViLWRwaTogOTY7XG5cbiAgLy8gU2l6ZSBvciBrZXl3b3JkXG4gICRicDogbnRoKCR2YWwsIDEpO1xuICAvLyBWYWx1ZSBvZiB0aGUgZm9sbG93aW5nIGJyZWFrcG9pbnRcbiAgJGJwLW5leHQ6IG51bGw7XG4gIC8vIFZhbHVlIGZvciBtYXgtd2lkdGggbWVkaWEgcXVlcmllc1xuICAkYnAtbWluOiBudWxsO1xuICAvLyBWYWx1ZSBmb3IgbWluLXdpZHRoIG1lZGlhIHF1ZXJpZXNcbiAgJGJwLW1heDogbnVsbDtcbiAgLy8gRGlyZWN0aW9uIG9mIG1lZGlhIHF1ZXJ5ICh1cCwgZG93biwgb3Igb25seSlcbiAgJGRpcjogaWYobGVuZ3RoKCR2YWwpID4gMSwgbnRoKCR2YWwsIDIpLCB1cCk7XG4gIC8vIElmIG5hbWVkLCBuYW1lIG9mIHRoZSBicmVha3BvaW50XG4gICRuYW1lOiBudWxsO1xuICAvLyBJZiB0aGUgYnJlYWtwb2ludCBpcyBhIEhpRFBJIGJyZWFrcG9pbnRcbiAgJGhpZHBpOiBmYWxzZTtcblxuICAvLyBPcmllbnRhdGlvbiBtZWRpYSBxdWVyaWVzIGhhdmUgYSB1bmlxdWUgc3ludGF4XG4gIEBpZiAkYnAgPT0gJ2xhbmRzY2FwZScgb3IgJGJwID09ICdwb3J0cmFpdCcge1xuICAgIEByZXR1cm4gJyhvcmllbnRhdGlvbjogI3skYnB9KSc7XG4gIH1cblxuICAvLyBJZiBhIGJyZWFrcG9pbnQgbmFtZSBpcyBnaXZlbiwgZ2V0IGl0cyB2YWx1ZSBmcm9tIHRoZSAkYnJlYWtwb2ludHMvJGJyZWFrcG9pbnRzLWhpZHBpIG1hcC5cbiAgQGlmIHR5cGUtb2YoJGJwKSA9PSAnc3RyaW5nJyB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgJGJwKSB7XG4gICAgICAkbmFtZTogJGJwO1xuICAgICAgJGJwOiBtYXAtZ2V0KCRicmVha3BvaW50cywgJG5hbWUpO1xuICAgICAgJGJwLW5leHQ6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRuYW1lKTtcbiAgICB9XG4gICAgQGVsc2UgaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLWhpZHBpLCAkYnApIHtcbiAgICAgICRuYW1lOiAkYnA7XG4gICAgICAkYnA6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLWhpZHBpLCAkbmFtZSk7XG4gICAgICAkYnAtbmV4dDogLXpmLW1hcC1uZXh0LW51bWJlcigkYnJlYWtwb2ludHMtaGlkcGksICRicCk7XG4gICAgICAkaGlkcGk6IHRydWU7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgICRicDogMDtcbiAgICAgIEB3YXJuICdicmVha3BvaW50KCk6IFwiI3skdmFsfVwiIGlzIG5vdCBkZWZpbmVkIGluIHlvdXIgYCRicmVha3BvaW50c2Agb3IgYCRicmVha3BvaW50cy1oaWRwaWAgc2V0dGluZy4nO1xuICAgIH1cbiAgfVxuXG4gIEBpZiBub3QgJG5hbWUgYW5kICRkaXIgPT0gJ29ubHknIHtcbiAgICBAd2FybiAnYnJlYWtwb2ludCgpOiBPbmx5IG5hbWVkIG1lZGlhIHF1ZXJpZXMgY2FuIGhhdmUgYW4gYG9ubHlgIHJhbmdlLic7XG4gICAgQHJldHVybiBudWxsO1xuICB9XG5cbiAgLy8gT25seSAnb25seScgYW5kICd1cCcgaGF2ZSBhIG1pbiBsaW1pdC5cbiAgQGlmICRkaXIgPT0gJ29ubHknIG9yICRkaXIgPT0gJ3VwJyB7XG4gICAgJGJwLW1pbjogaWYoJGhpZHBpLCBzdHJpcC11bml0KCRicCksIC16Zi1icC10by1lbSgkYnApKTtcbiAgfVxuICAvLyBPbmx5ICdvbmx5JyBhbmQgJ2Rvd24nIGhhdmUgYSBtYXggbGltaXQuXG4gIEBpZiAkZGlyID09ICdvbmx5JyBvciAkZGlyID09ICdkb3duJyB7XG4gICAgLy8gSWYgdGhlIGJyZWFrcG9pbnQgaXMgYSB2YWx1ZSwgdXNlIGl0IGFzIG1heCBsaW1pdC5cbiAgICBAaWYgbm90ICRuYW1lIHtcbiAgICAgICRicC1tYXg6IGlmKCRoaWRwaSwgc3RyaXAtdW5pdCgkYnApLCAtemYtYnAtdG8tZW0oJGJwKSk7XG4gICAgfVxuICAgIC8vIElmIHRoZSBicmVha3BvaW50IGlzIG5hbWVkLCB0aGUgbWF4IGxpbWl0IGlzIHRoZSBmb2xsb3dpbmcgYnJlYWtwb2ludCAtIDFweC5cbiAgICBAZWxzZSBpZiAkYnAtbmV4dCB7XG4gICAgICAvLyBNYXggdmFsdWUgaXMgMC4ycHggdW5kZXIgdGhlIG5leHQgYnJlYWtwb2ludCAoMC4wMiAvIDE2ID0gMC4wMDEyNSkuXG4gICAgICAvLyBVc2UgYSBwcmVjaXNpb24gdW5kZXIgMXB4IHRvIHN1cHBvcnQgYnJvd3NlciB6b29tLCBidXQgbm90IHRvIGxvdyB0byBhdm9pZCByb3VuZGluZy5cbiAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAgICAgJGJwLW1heDogaWYoJGhpZHBpLCAkYnAtbmV4dCAtICgxLyRzdGQtd2ViLWRwaSksIC16Zi1icC10by1lbSgkYnAtbmV4dCkgLSAwLjAwMTI1KTtcbiAgICB9XG4gIH1cblxuICAvLyBHZW5lcmF0ZSB0aGUgbWVkaWEgcXVlcnkgc3RyaW5nIGZyb20gbWluIGFuZCBtYXggbGltaXRzLlxuICBAaWYgJGhpZHBpIHtcbiAgICAvLyBHZW5lcmF0ZSB2YWx1ZXMgaW4gRFBJIGluc3RlYWQgb2YgRFBQWCBmb3IgYW4gSUU5LTExL09wZXJhIG1pbmkgY29tcGF0aWJpbGl0eS5cbiAgICAvLyBTZWUgaHR0cHM6Ly9jYW5pdXNlLmNvbS8jZmVhdD1jc3MtbWVkaWEtcmVzb2x1dGlvblxuICAgICRicC1taW4tZHBpOiBpZigkYnAtbWluLCAkYnAtbWluICogJHN0ZC13ZWItZHBpICogMWRwaSwgJGJwLW1pbik7XG4gICAgJGJwLW1heC1kcGk6IGlmKCRicC1tYXgsICRicC1tYXggKiAkc3RkLXdlYi1kcGkgKiAxZHBpLCAkYnAtbWF4KTtcbiAgICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgICAgLXpmLWJwLWpvaW4oJGJwLW1pbiwgJGJwLW1heCwgJy13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbycsICctd2Via2l0LW1heC1kZXZpY2UtcGl4ZWwtcmF0aW8nKSxcbiAgICAgIC16Zi1icC1qb2luKCRicC1taW4tZHBpLCAkYnAtbWF4LWRwaSwgJ21pbi1yZXNvbHV0aW9uJywgJ21heC1yZXNvbHV0aW9uJyksXG4gICAgICAnLCAnKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiAtemYtYnAtam9pbigkYnAtbWluLCAkYnAtbWF4KTtcbiAgfVxufVxuXG4vLy8gV3JhcHMgYSBtZWRpYSBxdWVyeSBhcm91bmQgdGhlIGNvbnRlbnQgeW91IHB1dCBpbnNpZGUgdGhlIG1peGluLiBUaGlzIG1peGluIGFjY2VwdHMgYSBudW1iZXIgb2YgdmFsdWVzOlxuLy8vICAtIElmIGEgc3RyaW5nIGlzIHBhc3NlZCwgdGhlIG1peGluIHdpbGwgbG9vayBmb3IgaXQgaW4gdGhlIGAkYnJlYWtwb2ludHNgIGFuZCBgJGJyZWFrcG9pbnRzLWhpZHBpYCBtYXBzLCBhbmQgdXNlIGEgbWVkaWEgcXVlcnkgdGhlcmUuXG4vLy8gIC0gSWYgYSBwaXhlbCB2YWx1ZSBpcyBwYXNzZWQsIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGVtIHZhbHVlIHVzaW5nIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgYXMgdGhlIGJhc2UuXG4vLy8gIC0gSWYgYSByZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdW5pdCB3aWxsIGJlIGNoYW5nZWQgdG8gZW0uXG4vLy8gIC0gSWYgYW4gZW0gdmFsdWUgaXMgcGFzc2VkLCB0aGUgdmFsdWUgd2lsbCBiZSB1c2VkIGFzLWlzLlxuLy8vXG4vLy8gSWYgbXVsdGlwbGUgdmFsdWVzIGFyZSBwYXNzZWQsIHRoZSBtaXhpbiB3aWxsIGdlbmVyYXRlIGEgbWVkaWEgcXVlcnkgZm9yIGVhY2ggb2YgdGhlbSBhcyBkZXNjcmliZWQgYWJvdmUuXG4vLy8gU2luY2UgdGhlIGNvbnRlbnQgaXMgZHVwbGljYXRlZCBmb3IgZWFjaCBicmVha3BvaW50LCB0aGlzIG1peGluIHNob3VsZCBvbmx5IGJlIHVzZWQgd2l0aCBwcm9wZXJ0aWVzIHRoYXRcbi8vLyBjaGFuZ2UgYWNyb3NzIGJyZWFrcG9pbnRzLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHZhbHVlcy4uLiAtIEJyZWFrcG9pbnQgbmFtZSBvciBweC9yZW0vZW0gdmFsdWUgdG8gcHJvY2Vzcy5cbi8vL1xuLy8vIEBvdXRwdXQgSWYgdGhlIGJyZWFrcG9pbnQgaXMgXCIwcHggYW5kIGxhcmdlclwiLCBvdXRwdXRzIHRoZSBjb250ZW50IGFzLWlzLiBPdGhlcndpc2UsIG91dHB1dHMgdGhlIGNvbnRlbnQgd3JhcHBlZCBpbiBhIG1lZGlhIHF1ZXJ5LlxuQG1peGluIGJyZWFrcG9pbnQoJHZhbHVlcy4uLikge1xuICBAZm9yICRpIGZyb20gMSB0aHJvdWdoIGxlbmd0aCgkdmFsdWVzKSB7XG4gICAgJHZhbHVlOiBudGgoJHZhbHVlcywgJGkpO1xuICAgICRzdHI6IGJyZWFrcG9pbnQoJHZhbHVlKTtcbiAgICAkYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgbnRoKCR2YWx1ZSwgMSkpO1xuICAgICRwYnA6IGluZGV4KCQtemYtYnJlYWtwb2ludHMta2V5cywgJHByaW50LWJyZWFrcG9pbnQpO1xuICAgIC8vIERpcmVjdGlvbiBvZiBtZWRpYSBxdWVyeSAodXAsIGRvd24sIG9yIG9ubHkpXG4gICAgJGRpcjogaWYobGVuZ3RoKCR2YWx1ZSkgPiAxLCBudGgoJHZhbHVlLCAyKSwgdXApO1xuXG4gICAgJG9sZC16Zi1zaXplOiBudWxsO1xuXG4gICAgLy8gTWFrZSBicmVha3BvaW50IHNpemUgYXZhaWxhYmxlIGFzIGEgdmFyaWFibGVcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogbnRoKCR2YWx1ZSwgMSkgIWdsb2JhbDsgLy8gZ2V0IHRoZSBmaXJzdCB2YWx1ZSB0byBhY2NvdW50IGZvciBgb25seWAgYW5kIGBkb3duYCBrZXl3b3Jkc1xuXG4gICAgLy8gSWYgJHN0ciBpcyBzdGlsbCBhbiBlbXB0eSBzdHJpbmcsIG5vIG1lZGlhIHF1ZXJ5IGlzIG5lZWRlZFxuICAgIEBpZiAkc3RyID09ICcnIHtcbiAgICAgIEBjb250ZW50O1xuICAgIH1cblxuICAgIC8vIE90aGVyd2lzZSwgd3JhcCB0aGUgY29udGVudCBpbiBhIG1lZGlhIHF1ZXJ5XG4gICAgQGVsc2Uge1xuICAgICAgLy8gRm9yIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiBvciBlcXVhbCB0byAkcHJpbnQtYnJlYWtwb2ludCwgYWRkIHByaW50IHRvIHRoZSBtZWRpYSB0eXBlc1xuICAgICAgLy8gZ2VuZXJhdGUgcHJpbnQgaWYgdGhlIGJyZWFrcG9pbnQgYWZmZWN0cyB0aGUgcHJpbnQtYnJlYWtwb2ludCAob3Igc21hbGxlcikuXG4gICAgICAvLyBUaGlzIG1lYW5zIHRoZSBjdXJyZW50IGNvbmRpdGlvbiBvbmx5IG5lZWRzIHRvIGJlIGV4dGVuZGVkIHNvICdkb3duJyBhbHdheXMgZ2VuZXJhdGVzIHByaW50LlxuICAgICAgQGlmICRicCAhPSBudWxsIGFuZCAoJGJwIDw9ICRwYnAgb3IgJGRpciA9PSBkb3duKSB7XG4gICAgICAgIEBtZWRpYSBwcmludCwgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAjeyRzdHJ9IHtcbiAgICAgICAgICBAY29udGVudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICQtemYtc2l6ZTogJG9sZC16Zi1zaXplICFnbG9iYWw7XG4gIH1cbn1cblxuLy8vIENvbnZlcnRzIHRoZSBicmVha3BvaW50cyBtYXAgdG8gYSBVUkwtZW5jb2RlZCBzdHJpbmcsIGxpa2UgdGhpczogYGtleTE9dmFsdWUxJmtleTI9dmFsdWUyYC4gVGhlIHZhbHVlIGlzIHRoZW4gZHJvcHBlZCBpbnRvIHRoZSBDU1MgZm9yIGEgc3BlY2lhbCBgPG1ldGE+YCB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdC4gVGhpcyBpcyBob3cgd2UgdHJhbnNmZXIgdmFsdWVzIGZyb20gU2FzcyB0byBKYXZhU2NyaXB0LCBzbyB0aGV5IGNhbiBiZSBkZWZpbmVkIGluIG9uZSBwbGFjZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIGNvbnZlcnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBBIHN0cmluZyBjb250YWluaW5nIHRoZSBtYXAncyBjb250ZW50cy5cbkBmdW5jdGlvbiAtemYtYnAtc2VyaWFsaXplKCRtYXApIHtcbiAgJHN0cjogJyc7XG4gIEBlYWNoICRrZXksICR2YWx1ZSBpbiAkbWFwIHtcbiAgICAkc3RyOiAkc3RyICsgJGtleSArICc9JyArIC16Zi1icC10by1lbSgkdmFsdWUpICsgJyYnO1xuICB9XG4gICRzdHI6IHN0ci1zbGljZSgkc3RyLCAxLCAtMik7XG5cbiAgQHJldHVybiAkc3RyO1xufVxuXG4vLy8gRmluZCB0aGUgbmV4dCBrZXkgaW4gYSBtYXAuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge01hcH0gJG1hcCAtIE1hcCB0byB0cmF2ZXJzZS5cbi8vLyBAcGFyYW0ge01peGVkfSAka2V5IC0gS2V5IHRvIHVzZSBhcyBhIHN0YXJ0aW5nIHBvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge01peGVkfSBUaGUgdmFsdWUgZm9yIHRoZSBrZXkgYWZ0ZXIgYCRrZXlgLCBpZiBgJGtleWAgd2FzIGZvdW5kLiBJZiBgJGtleWAgd2FzIG5vdCBmb3VuZCwgb3IgYCRrZXlgIHdhcyB0aGUgbGFzdCB2YWx1ZSBpbiB0aGUgbWFwLCByZXR1cm5zIGBudWxsYC5cbkBmdW5jdGlvbiAtemYtbWFwLW5leHQoJG1hcCwgJGtleSkge1xuXG4gIC8vIFN0b3JlIHRoZSBrZXlzIG9mIHRoZSBtYXAgYXMgYSBsaXN0XG4gICR2YWx1ZXM6IG1hcC1rZXlzKCRtYXApO1xuXG4gICRpOiAwO1xuXG4gIC8vIElmIHRoZSBLZXkgRXhpc3RzLCBHZXQgdGhlIGluZGV4IG9mIHRoZSBrZXkgd2l0aGluIHRoZSBtYXAgYW5kIGFkZCAxIHRvIGl0IGZvciB0aGUgbmV4dCBicmVha3BvaW50IGluIHRoZSBtYXBcbiAgQGlmIChtYXAtaGFzLWtleSgkbWFwLCAka2V5KSkge1xuICAgICRpOiBpbmRleCgkdmFsdWVzLCAka2V5KSArIDE7XG4gIH1cblxuICAvLyBJZiB0aGUga2V5IGRvZXNuJ3QgZXhpc3QsIG9yIGl0J3MgdGhlIGxhc3Qga2V5IGluIHRoZSBtYXAsIHJldHVybiBudWxsXG4gIEBpZiAoJGkgPiBsZW5ndGgoJG1hcCkgb3IgJGkgPT0gMCkge1xuICAgIEByZXR1cm4gbnVsbDtcbiAgfVxuICAvLyBPdGhlcndpc2UsIHJldHVybiB0aGUgdmFsdWVcbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCBudGgoJHZhbHVlcywgJGkpKTtcbiAgfVxuXG59XG5cbi8vLyBGaW5kIHRoZSBuZXh0IG51bWJlciBpbiBhIG1hcC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TWFwfSAkbWFwIC0gTWFwIHRvIHRyYXZlcnNlLlxuLy8vIEBwYXJhbSB7TWl4ZWR9ICRudW1iZXIgLSBOdW1iZXIgdG8gdXNlIGFzIGEgc3RhcnRpbmcgcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TWl4ZWR9IFRoZSBudW1iZXIgZm9sbG93aW5nIGAkbnVtYmVyYCwgaWYgYCRudW1iZXJgIHdhcyBmb3VuZC4gSWYgYCRudW1iZXJgIHdhcyBub3QgZm91bmQsIG9yIGAkbnVtYmVyYCB3YXMgdGhlIGJpZ2dlc3QgbnVtYmVyIGluIHRoZSBtYXAsIHJldHVybnMgYG51bGxgLlxuQGZ1bmN0aW9uIC16Zi1tYXAtbmV4dC1udW1iZXIoJG1hcCwgJG51bWJlcikge1xuXG4gICRuZXh0X251bWJlcjogbnVsbDtcblxuICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgQGlmIHR5cGUtb2YoJHYpID09ICdudW1iZXInIGFuZCAkdiA+ICRudW1iZXIgYW5kICgkbmV4dF9udW1iZXIgPT0gbnVsbCBvciAkdiA8ICRuZXh0X251bWJlcikge1xuICAgICAgJG5leHRfbnVtYmVyOiAkdjtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICRuZXh0X251bWJlcjtcbn1cblxuLy8vIFJldHVybiBhIGxpc3Qgb2Ygb3VyIG5hbWVkIGJyZWFrcG9pbnRzIGxlc3MgdGhhbiAka2V5LiBVc2VmdWwgZm9yIGRlYWxpbmcgd2l0aFxuLy8vIHJlc3BvbnNpdmUgZ3V0dGVycyBmb3IgdGhlIGdyaWQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGtleSAtIEtleSB0byB1c2UgYXMgbGFzdCBicmVha3BvaW50LlxuLy8vXG4vLy8gQHJldHVybnMge0FycmF5fSBUaGUgbGlzdCBvZiBicmVha3BvaW50cyB1cCB0byBhbmQuIElmICRrZXkgaXMgYXV0bywgcmV0dXJucyBicmVha3BvaW50cyBhYm92ZSB0aGUgemVyb1xuQGZ1bmN0aW9uIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJGtleSkge1xuICAkbGlzdDogKCk7XG4gICRmb3VuZF9rZXk6IGZhbHNlO1xuXG4gIEBlYWNoICRuYW1lIGluICQtemYtYnJlYWtwb2ludHMta2V5cyB7XG4gICAgQGlmICgkbmFtZSA9PSAka2V5KSB7XG4gICAgICAkZm91bmRfa2V5OiB0cnVlO1xuICAgIH1cbiAgICBAaWYgbm90ICRmb3VuZF9rZXkge1xuICAgICAgJGxpc3Q6IGFwcGVuZCgkbGlzdCwgJG5hbWUpO1xuICAgIH1cbiAgfVxuICBAcmV0dXJuICRsaXN0O1xufVxuXG4vLy8gUmV0dXJuIGEgbGlzdCBvZiBvdXIgbmFtZWQgYnJlYWtwb2ludHMgbGVzcyB0aGFuICRrZXkuIFVzZWZ1bCBmb3IgZGVhbGluZyB3aXRoXG4vLy8gcmVzcG9uc2l2ZSBndXR0ZXJzIGZvciB0aGUgZ3JpZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCAtIGEgbmFtZWQgb3Igbm9uLW5hbWVkIGJyZWFrcG9pbnQuXG4vLy9cbi8vLyBAcmV0dXJucyB7QXJyYXl9IFRoZSBsaXN0IG9mIGJyZWFrcG9pbnRzIHVwIHRvIGFuZC4gSWYgJGtleSBpcyBhdXRvLCByZXR1cm5zIGJyZWFrcG9pbnRzIGFib3ZlIHRoZSB6ZXJvXG5AZnVuY3Rpb24gLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkYnJlYWtwb2ludCkge1xuICAkbGFzdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQ7XG4gICRmb3VuZDogZmFsc2U7XG5cbiAgJHZhbHVlOiB1bml0bGVzcy1jYWxjKCRicmVha3BvaW50LCAxcHgpO1xuICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgQGlmIG5vdCAkZm91bmQge1xuICAgICAgQGlmIHVuaXRsZXNzLWNhbGMoJHZhbCkgPiAkdmFsdWUge1xuICAgICAgICAkZm91bmQ6IHRydWU7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJGxhc3Q6ICRrZXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiAkbGFzdDtcbn1cblxuLy8vIEdldCBhIHZhbHVlIGZvciBhIGJyZWFrcG9pbnQgZnJvbSBhIHJlc3BvbnNpdmUgY29uZmlnIG1hcCBvciBzaW5nbGUgdmFsdWUuXG4vLy8gLSBJZiB0aGUgY29uZmlnIGlzIGEgc2luZ2xlIHZhbHVlLCByZXR1cm4gaXQgcmVnYXJkbGVzcyBvZiBgJHZhbHVlYC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGhhcyB0aGUga2V5IGAkdmFsdWVgLCB0aGUgZXhhY3QgYnJlYWtwb2ludCB2YWx1ZSBpcyByZXR1cm5lZC5cbi8vLyAtIElmIHRoZSBjb25maWcgaXMgYSBtYXAgYW5kIGRvZXMgKm5vdCogaGF2ZSB0aGUgYnJlYWtwb2ludCwgdGhlIHZhbHVlIG1hdGNoaW5nIHRoZSBuZXh0IGxvd2VzdCBicmVha3BvaW50IGluIHRoZSBjb25maWcgbWFwIGlzIHJldHVybmVkLlxuLy8vIEBhY2Nlc3MgcHJpdmF0ZVxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gUmVzcG9uc2l2ZSBjb25maWcgbWFwIG9yIHNpbmdsZSB2YWx1ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSAtIEJyZWFrcG9pbnQgbmFtZSB0byB1c2UuXG4vLy9cbi8vLyBAcmV0dXJuIHtNaXhlZH0gVGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZS5cbkBmdW5jdGlvbiAtemYtZ2V0LWJwLXZhbCgkbWFwLCAkdmFsdWUpIHtcbiAgLy8gSWYgdGhlIGdpdmVuIG1hcCBpcyBhIHNpbmdsZSB2YWx1ZSwgcmV0dXJuIGl0XG4gIEBpZiB0eXBlLW9mKCRtYXApID09ICdudW1iZXInIHtcbiAgICBAcmV0dXJuICRtYXA7XG4gIH1cblxuXG4gIC8vIENoZWNrIGlmIHRoZSBicmVha3BvaW50IG5hbWUgZXhpc3RzIGdsb2JhbGx5XG4gIEBpZiBub3QgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCAkdmFsdWUpIHtcbiAgICBAaWYgdHlwZS1vZigkdmFsdWUpID09ICdudW1iZXInIHtcbiAgICAgICR2YWx1ZTogLXpmLWNsb3Nlc3QtbmFtZWQtYnJlYWtwb2ludCgkdmFsdWUpO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuICAvLyBDaGVjayBpZiB0aGUgYnJlYWtwb2ludCBuYW1lIGV4aXN0cyBpbiB0aGUgbG9jYWwgY29uZmlnIG1hcFxuICBAZWxzZSBpZiBtYXAtaGFzLWtleSgkbWFwLCAkdmFsdWUpIHtcbiAgICAvLyBJZiBpdCBkb2VzLCBqdXN0IHJldHVybiB0aGUgdmFsdWVcbiAgICBAcmV0dXJuIG1hcC1nZXQoJG1hcCwgJHZhbHVlKTtcbiAgfVxuICAvLyBPdGhlcndpc2UsIGZpbmQgdGhlIG5leHQgbG93ZXN0IGJyZWFrcG9pbnQgYW5kIHJldHVybiB0aGF0IHZhbHVlXG4gIEBlbHNlIHtcbiAgICAkYW5jaG9yOiBudWxsO1xuICAgICRmb3VuZDogZmFsc2U7XG5cbiAgICBAZWFjaCAka2V5LCAkdmFsIGluICRicmVha3BvaW50cyB7XG4gICAgICBAaWYgbm90ICRmb3VuZCB7XG4gICAgICAgIEBpZiBtYXAtaGFzLWtleSgkbWFwLCAka2V5KSB7XG4gICAgICAgICAgJGFuY2hvcjogJGtleTtcbiAgICAgICAgfVxuICAgICAgICBAaWYgJGtleSA9PSAkdmFsdWUge1xuICAgICAgICAgICRmb3VuZDogdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEByZXR1cm4gbWFwLWdldCgkbWFwLCAkYW5jaG9yKTtcbiAgfVxufVxuXG4vLy8gUmV0dXJuIHRoZSBiZXN0IGJyZWFrcG9pbnQgdG8gdXNlIGFjY29yZGluZyB0byB0aGUgY2FsbGluZyBjb250ZXh0LiBJdCByZXR1cm5zIGluIG9yZGVyOlxuLy8vIDEuIHRoZSBnaXZlbiBgJHZhbHVlYCBhcmd1bWVudCBpZiBpdCBpcyBub3QgbnVsbC5cbi8vLyAyLiB0aGUgZ2xvYmFsIGJyZWFrcG9pbnQgY29udGV4dCBgJC16Zi1zaXplYCBpZiBpdCBpcyBub3QgbnVsbCAobGlrZSBpZiBjYWxsZWQgaW5zaWRlIHRoZW4gYGJyZWFrcG9pbnQoKWAgbWl4aW4pXG4vLy8gMy4gdGhlIGdpdmVuIGAkZGVmYXVsdGAgYXJndW1lbnQuXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICR2YWx1ZSBbbnVsbF0gLSBCcmVha3BvaW50IHRvIHVzZSBpbiBwcmlvcml0eSBpZiBub24tbnVsbC5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkZWZhdWx0IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGJ5IGRlZmF1bHQgaWYgbm8gb3RoZXIgdmFsdWUgY2FuIGJlIHVzZWQuXG4vLy9cbi8vLyBAcmV0dXJuIHtLZXl3b3JkfSBUaGUgcmVzb2x2ZWQgYnJlYWtwb2ludC5cbkBmdW5jdGlvbiAtemYtY3VycmVudC1icmVha3BvaW50KCR2YWx1ZTogbnVsbCwgJGRlZmF1bHQ6IG51bGwpIHtcbiAgQGlmICgkdmFsdWUgIT0gbnVsbCkge1xuICAgIEByZXR1cm4gJHZhbHVlO1xuICB9XG4gIEBlbHNlIGlmICh2YXJpYWJsZS1leGlzdHMoLXpmLXNpemUpIGFuZCB0eXBlLW9mKCQtemYtc2l6ZSkgIT0gJ251bWJlcicpIGFuZCAkLXpmLXNpemUgIT0gbnVsbCB7XG4gICAgQHJldHVybiAkLXpmLXNpemU7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gJGRlZmF1bHQ7XG4gIH1cbn1cblxuLy8vIFJldHVybiBtZWRpYSBxdWVyeSBzdHJpbmcgZnJvbSB0aGUgZ2l2ZW4gbWluIGFuZC9vciBtYXggbGltaXRzLlxuLy8vIElmIGEgbGltaXQgaXMgZXF1YWwgdG8gYG51bGxgIG9yIGAwYCwgaXQgaXMgaWdub3JlZC5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkbWluIFswXSAtIE1pbiBtZWRpYSBxdWVyeSBsaW1pdC5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heCBbMF0gLSBNYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRtaW4tbmFtZSBbJ21pbi13aWR0aCddIC0gTmFtZSBvZiB0aGUgbWluIG1lZGlhIHF1ZXJ5IGxpbWl0LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGVsaW1pdGVyIFsnbWF4LXdpZHRoJ10gLSBOYW1lIG9mIHRoZSBtYXggbWVkaWEgcXVlcnkgbGltaXQuXG4vLy9cbi8vLyBAcmV0dXJucyB7U3RyaW5nfSBNZWRpYSBRdWVyeSBzdHJpbmcuXG5AZnVuY3Rpb24gLXpmLWJwLWpvaW4oXG4gICRtaW46IDAsXG4gICRtYXg6IDAsXG4gICRtaW4tbmFtZTogJ21pbi13aWR0aCcsXG4gICRtYXgtbmFtZTogJ21heC13aWR0aCdcbikge1xuICBAcmV0dXJuIHpmLXN0ci1qb2luKFxuICAgIGlmKCRtaW4gYW5kICRtaW4gPiAwLCAnKCN7JG1pbi1uYW1lfTogI3skbWlufSknLCBudWxsKSxcbiAgICBpZigkbWF4IGFuZCAkbWF4ID4gMCwgJygjeyRtYXgtbmFtZX06ICN7JG1heH0pJywgbnVsbCksXG4gICAgJyBhbmQgJyk7XG59XG5cbiRzbWFsbC11cDogJyc7XG4kc21hbGwtb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHNtYWxsKSB7XG4gICRzbWFsbC11cDogc2NyZWVuO1xuICAkc21hbGwtb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQoc21hbGwgb25seSl9Jyk7XG59XG5cbiRtZWRpdW0tdXA6ICcnO1xuJG1lZGl1bS1vbmx5OiAnJztcblxuQGlmIG1hcC1oYXMta2V5KCRicmVha3BvaW50cywgbWVkaXVtKSB7XG4gICRtZWRpdW0tdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KG1lZGl1bSl9Jyk7XG4gICRtZWRpdW0tb25seTogdW5xdW90ZSgnc2NyZWVuIGFuZCAje2JyZWFrcG9pbnQobWVkaXVtIG9ubHkpfScpO1xufVxuXG4kbGFyZ2UtdXA6ICcnO1xuJGxhcmdlLW9ubHk6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCBsYXJnZSkge1xuICAkbGFyZ2UtdXA6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlKX0nKTtcbiAgJGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KGxhcmdlIG9ubHkpfScpO1xufVxuXG4keGxhcmdlLXVwOiAnJztcbiR4bGFyZ2Utb25seTogJyc7XG5cbkBpZiBtYXAtaGFzLWtleSgkYnJlYWtwb2ludHMsIHhsYXJnZSkge1xuICAkeGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4bGFyZ2UpfScpO1xuICAkeGxhcmdlLW9ubHk6IHVucXVvdGUoJ3NjcmVlbiBhbmQgI3ticmVha3BvaW50KHhsYXJnZSBvbmx5KX0nKTtcbn1cblxuJHh4bGFyZ2UtdXA6ICcnO1xuXG5AaWYgbWFwLWhhcy1rZXkoJGJyZWFrcG9pbnRzLCB4eGxhcmdlKSB7XG4gICR4eGxhcmdlLXVwOiB1bnF1b3RlKCdzY3JlZW4gYW5kICN7YnJlYWtwb2ludCh4eGxhcmdlKX0nKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXZlYWxcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvZiBhIG1vZGFsLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgd2lkdGggb2YgYSBtb2RhbCwgd2l0aCBubyBjbGFzcyBhcHBsaWVkLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC13aWR0aDogNjAwcHggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1heGltdW0gd2lkdGggb2YgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtbWF4LXdpZHRoOiAkZ2xvYmFsLXdpZHRoICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGluc2lkZSBhIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1wYWRkaW5nOiAkZ2xvYmFsLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBhcm91bmQgYSBtb2RhbC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXZlYWwtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCByYWRpdXMgZm9yIG1vZGFsLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gei1pbmRleCBmb3IgbW9kYWxzLiBUaGUgb3ZlcmxheSB1c2VzIHRoaXMgdmFsdWUsIHdoaWxlIHRoZSBtb2RhbCBpdHNlbGYgdXNlcyB0aGlzIHZhbHVlIHBsdXMgb25lLlxuLy8vIEB0eXBlIE51bWJlclxuJHJldmVhbC16aW5kZXg6IDEwMDUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIG92ZXJsYXlzLlxuLy8vIEB0eXBlIENvbG9yXG4kcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNDUpICFkZWZhdWx0O1xuXG5cbi8vIFBsYWNlaG9sZGVyIHNlbGVjdG9yIGZvciBtZWRpdW0tYW5kLXVwIG1vZGFsc1xuLy8gUHJldmVudHMgZHVwbGljYXRlIENTUyB3aGVuIGRlZmluaW5nIG11bHRpcGxlIFJldmVhbCBzaXplc1xuLy8gVGhpcyBzaG91bGQgYmUgaW4gdGhlIHNhbWUgYnJlYWtwb2ludCB0aGVuIGBAbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoYFxuQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgJXJldmVhbC1jZW50ZXJlZCB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgfVxufVxuXG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgYSBtb2RhbCBvdmVybGF5LlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBvdmVybGF5LlxuQG1peGluIHJldmVhbC1vdmVybGF5KCRiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmFja2dyb3VuZCkge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHJldmVhbC16aW5kZXg7XG5cbiAgZGlzcGxheTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vLyBBZGRzIGJhc2Ugc3R5bGVzIGZvciBhIG1vZGFsLlxuQG1peGluIHJldmVhbC1tb2RhbC1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICB6LWluZGV4OiAkcmV2ZWFsLXppbmRleCArIDE7XG4gIC8vIFdvcmthcm91bmQgYW5kcm9pZCBicm93c2VyIHotaW5kZXggYnVnXG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcblxuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcmV2ZWFsLXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkcmV2ZWFsLWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHJldmVhbC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRyZXZlYWwtYmFja2dyb3VuZDtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgcm93cyBkb24ndCBoYXZlIGEgbWluLXdpZHRoIG9uIHRoZW1cbiAgLmNvbHVtbiB7XG4gICAgbWluLXdpZHRoOiAwO1xuICB9XG5cbiAgLy8gU3RyaXAgbWFyZ2lucyBmcm9tIHRoZSBsYXN0IGl0ZW0gaW4gdGhlIG1vZGFsXG4gID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8vIEFkanVzdHMgdGhlIHdpZHRoIG9mIGEgbW9kYWwuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR3aWR0aCAtIFdpZHRoIG9mIHRoZSBtb2RhbC4gR2VuZXJhbGx5IGEgcGVyY2VudGFnZS5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG1heC13aWR0aCBbJHJldmVhbC1tYXgtd2lkdGhdIC0gTWF4aW11bSB3aWR0aCBvZiB0aGUgbW9kYWwuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLXdpZHRoKFxuICAkd2lkdGg6ICRyZXZlYWwtd2lkdGgsXG4gICRtYXgtd2lkdGg6ICRyZXZlYWwtbWF4LXdpZHRoXG4pIHtcbiAgLy8gRXh0ZW5kcyBtdXN0IGJlIG1hZGUgb3V0c2lkZSBvZiBicmVha3BvaW50cyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIG5ld2VyIFNhc3MgdmVyc2lvbnMgKGxpYnNhc3MgdjMuNSlcbiAgQGV4dGVuZCAlcmV2ZWFsLWNlbnRlcmVkO1xuICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAkbWF4LXdpZHRoO1xuICB9XG59XG5cbi8vLyBDcmVhdGVzIGEgZnVsbC1zY3JlZW4gbW9kYWwsIHdoaWNoIHN0cmV0Y2hlcyB0aGUgZnVsbCB3aWR0aCBhbmQgaGVpZ2h0IG9mIHRoZSB3aW5kb3cuXG5AbWl4aW4gcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW4ge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG5cbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogbm9uZTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBtaW4taGVpZ2h0OiAxMDAlO1xuICBtYXJnaW4tbGVmdDogMDtcblxuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXJldmVhbCB7XG5cbiAgLy8vIERpc2FibGVzIHRoZSBzY3JvbGwgd2hlbiBSZXZlYWwgaXMgc2hvd24gdG8gcHJldmVudCB0aGUgYmFja2dyb3VuZCBmcm9tIHNoaWZ0aW5nXG4gIGh0bWwuaXMtcmV2ZWFsLW9wZW4ge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG5cbiAgICAmLnpmLWhhcy1zY3JvbGwge1xuICAgICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIH1cblxuICAgIGJvZHkgeyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG4gIH1cblxuICAvLyBPdmVybGF5XG4gIC5yZXZlYWwtb3ZlcmxheSB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW92ZXJsYXk7XG4gIH1cblxuICAvLyBNb2RhbCBjb250YWluZXJcbiAgLnJldmVhbCB7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKCRyZXZlYWwtd2lkdGgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuXG4gICAgLy8gUmVtb3ZlIHBhZGRpbmdcbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLy8gU2l6aW5nIGNsYXNzZXNcbiAgICAmLnRpbnkgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDMwJSk7IH1cbiAgICAmLnNtYWxsIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDUwJSk7IH1cbiAgICAmLmxhcmdlIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXdpZHRoKDkwJSk7IH1cblxuICAgIC8vIEZ1bGwtc2NyZWVuIG1vZGVcbiAgICAmLmZ1bGwge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWZ1bGxzY3JlZW47XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkLXpmLXplcm8tYnJlYWtwb2ludCBvbmx5KSB7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtZnVsbHNjcmVlbjtcbiAgICB9XG5cbiAgICAmLndpdGhvdXQtb3ZlcmxheSB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgfVxuICB9XG59XG4iLCJAbWl4aW4gZm91bmRhdGlvbi1ub3JtYWxpemUoKSB7XG4gIC8qISBub3JtYWxpemUuY3NzIHY4LjAuMCB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuICAvLyBEb2N1bWVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGxpbmUgaGVpZ2h0IGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gUHJldmVudCBhZGp1c3RtZW50cyBvZiBmb250IHNpemUgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlcyBpbiBpT1MuXG5cbiAgaHRtbCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7IC8vIDJcbiAgfVxuXG4gIC8vIFNlY3Rpb25zXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBtYXJnaW4gaW4gYWxsIGJyb3dzZXJzLlxuXG4gIGJvZHkge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIC8vIENvcnJlY3QgdGhlIGZvbnQgc2l6ZSBhbmQgbWFyZ2luIG9uIGBoMWAgZWxlbWVudHMgd2l0aGluIGBzZWN0aW9uYCBhbmRcbiAgLy8gYGFydGljbGVgIGNvbnRleHRzIGluIENocm9tZSwgRmlyZWZveCwgYW5kIFNhZmFyaS5cblxuICBoMSB7XG4gICAgZm9udC1zaXplOiAyZW07XG4gICAgbWFyZ2luOiAwLjY3ZW0gMDtcbiAgfVxuXG4gIC8vIEdyb3VwaW5nIGNvbnRlbnRcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBGaXJlZm94LlxuICAvLyAyLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlIGFuZCBJRS5cblxuICBociB7XG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vIDFcbiAgICBoZWlnaHQ6IDA7IC8vIDFcbiAgICBvdmVyZmxvdzogdmlzaWJsZTsgLy8gMlxuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5oZXJpdGFuY2UgYW5kIHNjYWxpbmcgb2YgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb2RkIGBlbWAgZm9udCBzaXppbmcgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHByZSB7XG4gICAgZm9udC1mYW1pbHk6IG1vbm9zcGFjZSwgbW9ub3NwYWNlOyAvLyAxXG4gICAgZm9udC1zaXplOiAxZW07IC8vIDJcbiAgfVxuXG4gIC8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4gIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgLy8gUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgb24gYWN0aXZlIGxpbmtzIGluIElFIDEwLlxuXG4gIGEge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny1cbiAgLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cblxuICBhYmJyW3RpdGxlXSB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyAvLyAyXG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgZG90dGVkOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCB3ZWlnaHQgaW4gQ2hyb21lLCBFZGdlLCBhbmQgU2FmYXJpLlxuXG4gIGIsXG4gIHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGRlcjtcbiAgfVxuXG4gIC8vIDEuIENvcnJlY3QgdGhlIGluaGVyaXRhbmNlIGFuZCBzY2FsaW5nIG9mIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4gIC8vIDIuIENvcnJlY3QgdGhlIG9kZCBgZW1gIGZvbnQgc2l6aW5nIGluIGFsbCBicm93c2Vycy5cblxuICBjb2RlLFxuICBrYmQsXG4gIHNhbXAge1xuICAgIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIG1vbm9zcGFjZTsgLy8gMVxuICAgIGZvbnQtc2l6ZTogMWVtOyAvLyAyXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZm9udCBzaXplIGluIGFsbCBicm93c2Vycy5cblxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiA4MCU7XG4gIH1cblxuICAvLyBQcmV2ZW50IGBzdWJgIGFuZCBgc3VwYCBlbGVtZW50cyBmcm9tIGFmZmVjdGluZyB0aGUgbGluZSBoZWlnaHQgaW5cbiAgLy8gYWxsIGJyb3dzZXJzLlxuXG4gIHN1YixcbiAgc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICB9XG5cbiAgc3ViIHtcbiAgICBib3R0b206IC0wLjI1ZW07XG4gIH1cblxuICBzdXAge1xuICAgIHRvcDogLTAuNWVtO1xuICB9XG5cbiAgLy8gRW1iZWRkZWQgY29udGVudFxuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIFJlbW92ZSB0aGUgYm9yZGVyIG9uIGltYWdlcyBpbnNpZGUgbGlua3MgaW4gSUUgMTAuXG5cbiAgaW1nIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gIH1cblxuICAvLyBGb3Jtc1xuICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gIC8vIDEuIENoYW5nZSB0aGUgZm9udCBzdHlsZXMgaW4gYWxsIGJyb3dzZXJzLlxuICAvLyAyLiBSZW1vdmUgdGhlIG1hcmdpbiBpbiBGaXJlZm94IGFuZCBTYWZhcmkuXG5cbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0OyAvLyAxXG4gICAgZm9udC1zaXplOiAxMDAlOyAvLyAxXG4gICAgbGluZS1oZWlnaHQ6IDEuMTU7IC8vIDFcbiAgICBtYXJnaW46IDA7IC8vIDJcbiAgfVxuXG4gIC8vIFNob3cgdGhlIG92ZXJmbG93IGluIElFLlxuICAvLyAxLiBTaG93IHRoZSBvdmVyZmxvdyBpbiBFZGdlLlxuXG4gIGJ1dHRvbixcbiAgaW5wdXQgeyAvLyAxXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGluaGVyaXRhbmNlIG9mIHRleHQgdHJhbnNmb3JtIGluIEVkZ2UsIEZpcmVmb3gsIGFuZCBJRS5cbiAgLy8gMS4gUmVtb3ZlIHRoZSBpbmhlcml0YW5jZSBvZiB0ZXh0IHRyYW5zZm9ybSBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbixcbiAgc2VsZWN0IHsgLy8gMVxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cblxuICBidXR0b24sXG4gIFt0eXBlPVwiYnV0dG9uXCJdLFxuICBbdHlwZT1cInJlc2V0XCJdLFxuICBbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGlubmVyIGJvcmRlciBhbmQgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lcixcbiAgW3R5cGU9XCJidXR0b25cIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwicmVzZXRcIl06Oi1tb3otZm9jdXMtaW5uZXIsXG4gIFt0eXBlPVwic3VibWl0XCJdOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC8vIFJlc3RvcmUgdGhlIGZvY3VzIHN0eWxlcyB1bnNldCBieSB0aGUgcHJldmlvdXMgcnVsZS5cblxuICBidXR0b246LW1vei1mb2N1c3JpbmcsXG4gIFt0eXBlPVwiYnV0dG9uXCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInJlc2V0XCJdOi1tb3otZm9jdXNyaW5nLFxuICBbdHlwZT1cInN1Ym1pdFwiXTotbW96LWZvY3VzcmluZyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCBCdXR0b25UZXh0O1xuICB9XG5cbiAgLy8gQ29ycmVjdCB0aGUgcGFkZGluZyBpbiBGaXJlZm94LlxuXG4gIGZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwLjM1ZW0gMC43NWVtIDAuNjI1ZW07XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSB0ZXh0IHdyYXBwaW5nIGluIEVkZ2UgYW5kIElFLlxuICAvLyAyLiBDb3JyZWN0IHRoZSBjb2xvciBpbmhlcml0YW5jZSBmcm9tIGBmaWVsZHNldGAgZWxlbWVudHMgaW4gSUUuXG4gIC8vIDMuIFJlbW92ZSB0aGUgcGFkZGluZyBzbyBkZXZlbG9wZXJzIGFyZSBub3QgY2F1Z2h0IG91dCB3aGVuIHRoZXkgemVybyBvdXRcbiAgLy8gICAgYGZpZWxkc2V0YCBlbGVtZW50cyBpbiBhbGwgYnJvd3NlcnMuXG5cbiAgbGVnZW5kIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gICAgY29sb3I6IGluaGVyaXQ7IC8vIDJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMVxuICAgIG1heC13aWR0aDogMTAwJTsgLy8gMVxuICAgIHBhZGRpbmc6IDA7IC8vIDNcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsOyAvLyAxXG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgdmVydGljYWwgYWxpZ25tZW50IGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuXG4gIHByb2dyZXNzIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG4gIH1cblxuICAvLyBSZW1vdmUgdGhlIGRlZmF1bHQgdmVydGljYWwgc2Nyb2xsYmFyIGluIElFIDEwKy5cblxuICB0ZXh0YXJlYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cblxuICAvLyAxLiBBZGQgdGhlIGNvcnJlY3QgYm94IHNpemluZyBpbiBJRSAxMC5cbiAgLy8gMi4gUmVtb3ZlIHRoZSBwYWRkaW5nIGluIElFIDEwLlxuXG4gIFt0eXBlPVwiY2hlY2tib3hcIl0sXG4gIFt0eXBlPVwicmFkaW9cIl0ge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7IC8vIDFcbiAgICBwYWRkaW5nOiAwOyAvLyAyXG4gIH1cblxuICAvLyBDb3JyZWN0IHRoZSBjdXJzb3Igc3R5bGUgb2YgaW5jcmVtZW50IGFuZCBkZWNyZW1lbnQgYnV0dG9ucyBpbiBDaHJvbWUuXG5cbiAgW3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAvLyAxLiBDb3JyZWN0IHRoZSBvZGQgYXBwZWFyYW5jZSBpbiBDaHJvbWUgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ29ycmVjdCB0aGUgb3V0bGluZSBzdHlsZSBpbiBTYWZhcmkuXG5cbiAgW3R5cGU9XCJzZWFyY2hcIl0ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkOyAvLyAxXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7IC8vIDJcbiAgfVxuXG4gIC8vIFJlbW92ZSB0aGUgaW5uZXIgcGFkZGluZyBpbiBDaHJvbWUgYW5kIFNhZmFyaSBvbiBtYWNPUy5cblxuICBbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICB9XG5cbiAgLy8gMS4gQ29ycmVjdCB0aGUgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSB0eXBlcyBpbiBpT1MgYW5kIFNhZmFyaS5cbiAgLy8gMi4gQ2hhbmdlIGZvbnQgcHJvcGVydGllcyB0byBgaW5oZXJpdGAgaW4gU2FmYXJpLlxuXG4gIDo6LXdlYmtpdC1maWxlLXVwbG9hZC1idXR0b24ge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uOyAvLyAxXG4gICAgZm9udDogaW5oZXJpdDsgLy8gMlxuICB9XG5cbiAgLy8gSW50ZXJhY3RpdmVcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBFZGdlLCBJRSAxMCssIGFuZCBGaXJlZm94LlxuXG4gIGRldGFpbHMge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gQWRkIHRoZSBjb3JyZWN0IGRpc3BsYXkgaW4gYWxsIGJyb3dzZXJzLlxuXG4gIHN1bW1hcnkge1xuICAgIGRpc3BsYXk6IGxpc3QtaXRlbTtcbiAgfVxuXG4gIC8vIE1pc2NcbiAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMCsuXG5cbiAgdGVtcGxhdGUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBBZGQgdGhlIGNvcnJlY3QgZGlzcGxheSBpbiBJRSAxMC5cblxuICBbaGlkZGVuXSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLyBzYXNzLWxpbnQ6ZGlzYWJsZSBuby1jb2xvci1saXRlcmFscywgbm8tcXVhbGlmeWluZy1lbGVtZW50c1xuXG4vLy8vXG4vLy8gQGdyb3VwIGdsb2JhbFxuLy8vL1xuXG5AaW1wb3J0ICd1dGlsL3V0aWwnO1xuXG4vLy8gRm9udCBzaXplIGF0dHJpYnV0ZSBhcHBsaWVkIHRvIGA8aHRtbD5gIGFuZCBgPGJvZHk+YC4gV2UgdXNlIDEwMCUgYnkgZGVmYXVsdCBzbyB0aGUgdmFsdWUgaXMgaW5oZXJpdGVkIGZyb20gdGhlIHVzZXIncyBicm93c2VyIHNldHRpbmdzLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgd2lkdGggb2YgeW91ciBzaXRlLiBVc2VkIGJ5IHRoZSBncmlkIHRvIGRldGVybWluZSByb3cgd2lkdGguXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxMjAwKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGFsbCB0eXBlLiBgJGdsb2JhbC1saW5laGVpZ2h0YCBpcyAyNHB4IHdoaWxlIGAkZ2xvYmFsLWZvbnQtc2l6ZWAgaXMgMTZweFxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1saW5laGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvcnMgdXNlZCBmb3IgYnV0dG9ucywgY2FsbG91dHMsIGxpbmtzLCBldGMuIFRoZXJlIG11c3QgYWx3YXlzIGJlIGEgY29sb3IgY2FsbGVkIGBwcmltYXJ5YC5cbi8vLyBAdHlwZSBNYXBcbiRmb3VuZGF0aW9uLXBhbGV0dGU6IChcbiAgcHJpbWFyeTogIzE3NzliYSxcbiAgc2Vjb25kYXJ5OiAjNzY3Njc2LFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBsaWdodCBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbGlnaHQtZ3JheTogI2U2ZTZlNiAhZGVmYXVsdDtcblxuLy8vIENvbG9yIHVzZWQgZm9yIG1lZGl1bSBncmF5IFVJIGl0ZW1zLlxuLy8vIEB0eXBlIENvbG9yXG4kbWVkaXVtLWdyYXk6ICNjYWNhY2EgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBkYXJrIGdyYXkgVUkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiRkYXJrLWdyYXk6ICM4YThhOGEgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB1c2VkIGZvciBibGFjayB1aSBpdGVtcy5cbi8vLyBAdHlwZSBDb2xvclxuJGJsYWNrOiAjMGEwYTBhICFkZWZhdWx0O1xuXG4vLy8gQ29sb3IgdXNlZCBmb3Igd2hpdGUgdWkgaXRlbXMuXG4vLy8gQHR5cGUgQ29sb3JcbiR3aGl0ZTogI2ZlZmVmZSAhZGVmYXVsdDtcblxuLy8vIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRib2R5LWZvbnQtY29sb3I6ICRibGFjayAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3RhY2sgb2YgdGhlIGJvZHkuXG4vLy8gQHR5cGUgTGlzdFxuJGJvZHktZm9udC1mYW1pbHk6ICdIZWx2ZXRpY2EgTmV1ZScsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuLy8vIFNldCB0byBgdHJ1ZWAgdG8gZW5hYmxlIGFudGlhbGlhc2VkIHR5cGUsIHVzaW5nIHRoZSBgLXdlYmtpdC1mb250LXNtb290aGluZ2AgYW5kIGAtbW96LW9zeC1mb250LXNtb290aGluZ2AgQ1NTIHByb3BlcnRpZXMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJvZHktYW50aWFsaWFzZWQ6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgbWFyZ2luIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLW1hcmdpbjogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBwYWRkaW5nIG9uIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXBhZGRpbmc6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgcG9zaXRpb25pbmcgb24gY29tcG9uZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtcG9zaXRpb246IDFyZW0gIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3Igbm9ybWFsIHR5cGUuXG4vLy8gQHR5cGUgS2V5d29yZCB8IE51bWJlclxuJGdsb2JhbC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgZm9udCB3ZWlnaHQgdXNlZCBmb3IgYm9sZCB0eXBlLlxuLy8vIEB0eXBlIEtleXdvcmQgfCBOdW1iZXJcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQgIWRlZmF1bHQ7XG5cbi8vLyBHbG9iYWwgdmFsdWUgdXNlZCBmb3IgYWxsIGVsZW1lbnRzIHRoYXQgaGF2ZSBhIGJvcmRlciByYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZ2xvYmFsLXJhZGl1czogMCAhZGVmYXVsdDtcblxuLy8vIEdsb2JhbCB2YWx1ZSB1c2VkIGZvciBhbGwgbWVudSBzdHlsZXMuIENhbiBiZSBvdmVyd3JpdHRlbiBhdCBpbmRpdmlkdWFsIG1lbnUgY29tcG9uZW50IGxldmVsLlxuLy8vIEB0eXBlIE51bWJlclxuJGdsb2JhbC1tZW51LXBhZGRpbmc6IDAuN3JlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gR2xvYmFsIHZhbHVlIHVzZWQgZm9yIGFsbCBtZW51IHN0eWxlcy4gTmVzdGVkIG1hcmdpbiBmb3Igc3VibWVudS5cbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gU2V0cyB0aGUgdGV4dCBkaXJlY3Rpb24gb2YgdGhlIENTUy4gQ2FuIGJlIGVpdGhlciBgbHRyYCBvciBgcnRsYC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kZ2xvYmFsLXRleHQtZGlyZWN0aW9uOiBsdHIgIWRlZmF1bHQ7XG5cbi8vLyBFbmFibGVzIGZsZXhib3ggZm9yIGNvbXBvbmVudHMgdGhhdCBzdXBwb3J0IGl0LlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRnbG9iYWwtZmxleGJveDogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZWQgcmVzcG9uc2l2ZSBicmVha3BvaW50cyBmb3IgcHJvdG90eXBlcyBpZiBhcHBsaWNhYmxlXG4vLy8gQHR5cGUgQm9vbGVhblxuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlICFkZWZhdWx0O1xuXG4vLy8gQnV0dG9uIGN1cnNvcidzIHZhbHVlLCBgYXV0b2AgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIEtleXdvcmRcbiRnbG9iYWwtYnV0dG9uLWN1cnNvcjogYXV0byAhZGVmYXVsdDtcblxuQGlmIG5vdCBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCBwcmltYXJ5KSB7XG4gIEBlcnJvciAnSW4gJGZvdW5kYXRpb24tcGFsZXR0ZSwgeW91IG11c3QgaGF2ZSBhIGNvbG9yIG5hbWVkIFwicHJpbWFyeVwiLic7XG59XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciB0ZXh0IGRpcmVjdGlvblxuJGdsb2JhbC1sZWZ0OiBpZigkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09IHJ0bCwgcmlnaHQsIGxlZnQpO1xuJGdsb2JhbC1yaWdodDogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIGxlZnQsIHJpZ2h0KTtcblxuLy8gSW50ZXJuYWwgdmFyaWFibGUgdGhhdCBjb250YWlucyB0aGUgZmxleCBqdXN0aWZ5aW5nIG9wdGlvbnNcbiQtemYtZmxleC1qdXN0aWZ5OiAtemYtZmxleC1qdXN0aWZ5KCRnbG9iYWwtdGV4dC1kaXJlY3Rpb24pO1xuXG4vLy8gR2xvYmFsIHRvbGVyYW5jZSBmb3IgY29sb3IgcGljayBjb250cmFzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2U6IDAgIWRlZmF1bHQ7XG5cbi8vIEludGVybmFsIHZhcmlhYmxlcyB1c2VkIGZvciBjb2xvcnNcbkBpbmNsdWRlIGFkZC1mb3VuZGF0aW9uLWNvbG9ycztcblxuQG1peGluIGZvdW5kYXRpb24tZ2xvYmFsLXN0eWxlcyB7XG4gIEBpbmNsdWRlIGZvdW5kYXRpb24tbm9ybWFsaXplO1xuXG4gIC8vIFRoZXNlIHN0eWxlcyBhcmUgYXBwbGllZCB0byBhIDxtZXRhPiB0YWcsIHdoaWNoIGlzIHJlYWQgYnkgdGhlIEZvdW5kYXRpb24gSmF2YVNjcmlwdFxuICAuZm91bmRhdGlvbi1tcSB7XG4gICAgZm9udC1mYW1pbHk6ICcjey16Zi1icC1zZXJpYWxpemUoJGJyZWFrcG9pbnRzKX0nO1xuICB9XG5cbiAgaHRtbCB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gU2V0IGJveC1zaXppbmcgZ2xvYmFsbHkgdG8gaGFuZGxlIHBhZGRpbmcgYW5kIGJvcmRlciB3aWR0aHNcbiAgKixcbiAgKjo6YmVmb3JlLFxuICAqOjphZnRlciB7XG4gICAgYm94LXNpemluZzogaW5oZXJpdDtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgYm9keSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYm9keS1iYWNrZ3JvdW5kO1xuXG4gICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWw7XG4gICAgbGluZS1oZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblxuICAgIEBpZiAoJGJvZHktYW50aWFsaWFzZWQpIHtcbiAgICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICAgICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIC8vIEdldCByaWQgb2YgZ2FwIHVuZGVyIGltYWdlcyBieSBtYWtpbmcgdGhlbSBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGJ5IGRlZmF1bHRcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgIC8vIEdyaWQgZGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC1tcy1pbnRlcnBvbGF0aW9uLW1vZGU6IGJpY3ViaWM7XG4gIH1cblxuICAvLyBNYWtlIHN1cmUgdGV4dGFyZWEgdGFrZXMgb24gaGVpZ2h0IGF1dG9tYXRpY2FsbHlcbiAgdGV4dGFyZWEge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuICB9XG5cbiAgLy8gTWFrZSBzZWxlY3QgZWxlbWVudHMgYXJlIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICBzZWxlY3Qge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4gIH1cblxuICAvLyBTdHlsZXMgR29vZ2xlIE1hcHMgYW5kIE1hcFF1ZXN0IGVtYmVkcyBwcm9wZXJseVxuICAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLWlkc1xuICAubWFwX2NhbnZhcyxcbiAgLm1xYS1kaXNwbGF5IHtcbiAgICBpbWcsXG4gICAgZW1iZWQsXG4gICAgb2JqZWN0IHtcbiAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gIC8vIFJlc2V0IDxidXR0b24+IHN0eWxlcyBjcmVhdGVkIGJ5IG1vc3QgYnJvd3NlcnNcbiAgYnV0dG9uIHtcbiAgICBAaW5jbHVkZSBkaXNhYmxlLW1vdXNlLW91dGxpbmU7XG4gICAgcGFkZGluZzogMDtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjdXJzb3I6ICRnbG9iYWwtYnV0dG9uLWN1cnNvcjtcbiAgfVxuXG4gIC8vIFByZXZlbnQgdGV4dCBvdmVyZmxvdyBvbiBwcmVcbiAgcHJlIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuXG4gIC8vIE1ha2UgcmVzZXQgaW5oZXJpdCBmb250LWZhbWlseSBpbnN0ZWFkIG9mIHNldHRpbmdzIHNhbnMtc2VyaWZcbiAgYnV0dG9uLFxuICBpbnB1dCxcbiAgb3B0Z3JvdXAsXG4gIHNlbGVjdCxcbiAgdGV4dGFyZWEge1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSW50ZXJuYWwgY2xhc3NlcyB0byBzaG93L2hpZGUgZWxlbWVudHMgaW4gSmF2YVNjcmlwdFxuICAuaXMtdmlzaWJsZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5pcy1oaWRkZW4ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gIEZvdW5kYXRpb24gZm9yIFNpdGVzIFNldHRpbmdzXG4vLyAgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8vXG4vLyAgVGFibGUgb2YgQ29udGVudHM6XG4vL1xuLy8gICAxLiBHbG9iYWxcbi8vICAgMi4gQnJlYWtwb2ludHNcbi8vICAgMy4gVGhlIEdyaWRcbi8vICAgNC4gQmFzZSBUeXBvZ3JhcGh5XG4vLyAgIDUuIFR5cG9ncmFwaHkgSGVscGVyc1xuLy8gICA2LiBBYmlkZVxuLy8gICA3LiBBY2NvcmRpb25cbi8vICAgOC4gQWNjb3JkaW9uIE1lbnVcbi8vICAgOS4gQmFkZ2Vcbi8vICAxMC4gQnJlYWRjcnVtYnNcbi8vICAxMS4gQnV0dG9uXG4vLyAgMTIuIEJ1dHRvbiBHcm91cFxuLy8gIDEzLiBDYWxsb3V0XG4vLyAgMTQuIENhcmRcbi8vICAxNS4gQ2xvc2UgQnV0dG9uXG4vLyAgMTYuIERyaWxsZG93blxuLy8gIDE3LiBEcm9wZG93blxuLy8gIDE4LiBEcm9wZG93biBNZW51XG4vLyAgMTkuIEZsZXhib3ggVXRpbGl0aWVzXG4vLyAgMjAuIEZvcm1zXG4vLyAgMjEuIExhYmVsXG4vLyAgMjIuIE1lZGlhIE9iamVjdFxuLy8gIDIzLiBNZW51XG4vLyAgMjQuIE1ldGVyXG4vLyAgMjUuIE9mZi1jYW52YXNcbi8vICAyNi4gT3JiaXRcbi8vICAyNy4gUGFnaW5hdGlvblxuLy8gIDI4LiBQcm9ncmVzcyBCYXJcbi8vICAyOS4gUHJvdG90eXBlIEFycm93XG4vLyAgMzAuIFByb3RvdHlwZSBCb3JkZXItQm94XG4vLyAgMzEuIFByb3RvdHlwZSBCb3JkZXItTm9uZVxuLy8gIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vICAzMy4gUHJvdG90eXBlIERpc3BsYXlcbi8vICAzNC4gUHJvdG90eXBlIEZvbnQtU3R5bGluZ1xuLy8gIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAgMzYuIFByb3RvdHlwZSBPdmVyZmxvd1xuLy8gIDM3LiBQcm90b3R5cGUgUG9zaXRpb25cbi8vICAzOC4gUHJvdG90eXBlIFJvdW5kZWRcbi8vICAzOS4gUHJvdG90eXBlIFNlcGFyYXRvclxuLy8gIDQwLiBQcm90b3R5cGUgU2hhZG93XG4vLyAgNDEuIFByb3RvdHlwZSBTaXppbmdcbi8vICA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vICA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gIDQ1LiBQcm90b3R5cGUgVGV4dC1VdGlsaXRpZXNcbi8vICA0Ni4gUmVzcG9uc2l2ZSBFbWJlZFxuLy8gIDQ3LiBSZXZlYWxcbi8vICA0OC4gU2xpZGVyXG4vLyAgNDkuIFN3aXRjaFxuLy8gIDUwLiBUYWJsZVxuLy8gIDUxLiBUYWJzXG4vLyAgNTIuIFRodW1ibmFpbFxuLy8gIDUzLiBUaXRsZSBCYXJcbi8vICA1NC4gVG9vbHRpcFxuLy8gIDU1LiBUb3AgQmFyXG4vLyAgNTYuIFh5IEdyaWRcblxuQGltcG9ydCAndXRpbC91dGlsJztcblxuLy8gMS4gR2xvYmFsXG4vLyAtLS0tLS0tLS1cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCU7XG4kZ2xvYmFsLXdpZHRoOiByZW0tY2FsYygxNjIwKTtcbiRnbG9iYWwtbGluZWhlaWdodDogMS41O1xuJGZvdW5kYXRpb24tcGFsZXR0ZTogKFxuICBwcmltYXJ5OiAjRUI1RTk0LFxuICBzZWNvbmRhcnk6ICM0MUE0OTQsXG4gIGdyYXk6ICNmMGY0ZjUsXG4gIHdoaXRlOiAjZmZmZmZmLFxuICBzdWNjZXNzOiAjM2FkYjc2LFxuICB3YXJuaW5nOiAjZmZhZTAwLFxuICBhbGVydDogI2NjNGIzNyxcbik7XG5cbiRsaWdodC1ncmF5OiBnZXQtY29sb3IoZ3JheSk7XG4kbWVkaXVtLWdyYXk6ICM4YThhOGE7XG4kZGFyay1ncmF5OiAjMWExYTFhO1xuJGJsYWNrOiAjMDAwMDAwO1xuJHdoaXRlOiAjZmZmZmZmO1xuJHBpbms6ICNFQjVFOTQ7XG4kaG90cGluazogI0NCMDA2NDtcbiR5ZWxsb3c6ICNGREM0MDA7XG4kYmx1ZTogIzQxQTQ5NDtcbiRkYXJrLWJsdWU6ICMzNDgzNzg7XG4kbmF2eTogIzE1MUYzNTtcbiRwdXJwbGU6ICM0QzQzOTQ7XG4kcmVkOiAjRTY0NTUwO1xuJG9yYW5nZTogI0U2ODgxRTtcbiRsaWdodC1ibHVlOiAjRjBGNEY1O1xuJGJvcmRlci1jb2xvcjogI2I4Y2NkMTtcbiRib2R5LWJhY2tncm91bmQ6ICRkYXJrLWdyYXk7XG4kYm9keS1mb250LWNvbG9yOiAkbmF2eTtcbiRib2R5LWZvbnQtZmFtaWx5OiAnSW50ZXInLCBzYW5zLXNlcmlmO1xuJGhlYWRlci1mb250LWZhbWlseTogJ2RlZ3VsYXInO1xuJGJvZHktYW50aWFsaWFzZWQ6IHRydWU7XG4kZ2xvYmFsLW1hcmdpbjogMXJlbTtcbiRnbG9iYWwtcGFkZGluZzogMXJlbTtcbiRnbG9iYWwtcG9zaXRpb246IDFyZW07XG4kZ2xvYmFsLXdlaWdodC1ub3JtYWw6IG5vcm1hbDtcbiRnbG9iYWwtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG4kZ2xvYmFsLXJhZGl1czogMDtcbiRnbG9iYWwtbWVudS1wYWRkaW5nOiAwLjdyZW0gMXJlbTtcbiRnbG9iYWwtbWVudS1uZXN0ZWQtbWFyZ2luOiAxcmVtO1xuJGdsb2JhbC10ZXh0LWRpcmVjdGlvbjogbHRyO1xuJGdsb2JhbC1mbGV4Ym94OiB0cnVlO1xuJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM6IGZhbHNlO1xuJGdsb2JhbC1idXR0b24tY3Vyc29yOiBhdXRvO1xuJGdsb2JhbC1jb2xvci1waWNrLWNvbnRyYXN0LXRvbGVyYW5jZTogMDtcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZTtcbiRwcmludC1ocmVmczogdHJ1ZTtcblxuQGluY2x1ZGUgYWRkLWZvdW5kYXRpb24tY29sb3JzO1xuXG4vLyAyLiBCcmVha3BvaW50c1xuLy8gLS0tLS0tLS0tLS0tLS1cblxuJGJyZWFrcG9pbnRzOiAoXG4gIHNtYWxsOiAwLFxuICBtZWRpdW06IDY0MHB4LFxuICBsYXJnZTogMTAyNHB4LFxuICB4bGFyZ2U6IDEyMDBweCxcbiAgeHhsYXJnZTogMTQ0MHB4LFxuICB4eHhsYXJnZTogMTkyMHB4LFxuICB4eHh4bGFyZ2U6IDIzMDBweCxcbik7XG4kYnJlYWtwb2ludHMtaGlkcGk6IChcbiAgaGlkcGktMTogMSxcbiAgaGlkcGktMS01OiAxLjUsXG4gIGhpZHBpLTI6IDIsXG4gIHJldGluYTogMixcbiAgaGlkcGktMzogM1xuKTtcbiRwcmludC1icmVha3BvaW50OiBsYXJnZTtcbiRicmVha3BvaW50LWNsYXNzZXM6IChzbWFsbCBtZWRpdW0gbGFyZ2UgeGxhcmdlKTtcblxuLy8gMy4gVGhlIEdyaWRcbi8vIC0tLS0tLS0tLS0tXG5cbiRncmlkLXJvdy13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRncmlkLWNvbHVtbi1jb3VudDogMTI7XG4kZ3JpZC1jb2x1bW4tZ3V0dGVyOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDIwcHgsXG4gIGxhcmdlOiAyMHB4LFxuICB4bGFyZ2U6IDQwcHhcbik7XG4kZ3JpZC1jb2x1bW4tYWxpZ24tZWRnZTogdHJ1ZTtcbiRncmlkLWNvbHVtbi1hbGlhczogJ2NvbHVtbnMnO1xuJGJsb2NrLWdyaWQtbWF4OiA4O1xuXG4vLyA0LiBCYXNlIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kaGVhZGVyLWZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuJGhlYWRlci1mb250LXdlaWdodDogYm9sZDtcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsO1xuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2U7XG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0O1xuJGhlYWRlci1saW5laGVpZ2h0OiAxLjQ7XG4kaGVhZGVyLW1hcmdpbi1ib3R0b206IDAuNXJlbTtcbiRoZWFkZXItc3R5bGVzOiAoXG4gIHNtYWxsOiAoXG4gICAgJ2gxJzogKCdmcyc6IDUxLCAnbGgnOiA0OCwgJ21iJzogMCksXG4gICAgJ2gyJzogKCdmcyc6IDI0LCAnbGgnOiAzMSwgJ21iJzogMjApLFxuICAgICdoMyc6ICgnZnMnOiAyMCwgJ2xoJzogMjYsICdtYic6IDIwKSxcbiAgICAnaDQnOiAoJ2ZzJzogMTQsICdsaCc6IDE4LCAnbWInOiAyMCksXG4gICAgJ2g1JzogKCdmcyc6IDEyLCAnbGgnOiAxNiwgJ21iJzogMjApLFxuICAgICdoNic6ICgnZnMnOiAxMCwgJ2xoJzogMTQsICdtYic6IDIwKSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmcyc6IDkwKSxcbiAgKSxcbiAgeGxhcmdlOiAoXG4gICAgJ2gxJzogKCdmcyc6IDEwMCksXG4gICAgJ2gyJzogKCdmcyc6IDMwLCAnbWInOiAzMCksXG4gICAgJ2gzJzogKCdmcyc6IDI2LCAnbWInOiAzMCksXG4gICAgJ2g0JzogKCdmcyc6IDE4LCAnbWInOiAzMCksXG4gICAgJ2g1JzogKCdmcyc6IDE2LCAnbWInOiAzMCksXG4gICAgJ2g2JzogKCdmcyc6IDE0LCAnbWInOiAzMCksXG4gICksXG4gIHh4bGFyZ2U6IChcbiAgICAnaDEnOiAoJ2ZzJzogMTI2LCAnbGgnOiAxMTApLFxuICApLFxuICB4eHhsYXJnZTogKFxuICAgICdoMSc6ICgnZnMnOiAxNjApLFxuICApLFxuICB4eHh4bGFyZ2U6IChcbiAgICAnaDEnOiAoJ2ZzJzogMjAwKSxcbiAgKSxcbik7XG5cbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRzbWFsbC1mb250LXNpemU6IDgwJTtcbiRoZWFkZXItc21hbGwtZm9udC1jb2xvcjogJG1lZGl1bS1ncmF5O1xuJHBhcmFncmFwaC1saW5laGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQ7XG4kcGFyYWdyYXBoLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG4kYW5jaG9yLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhbmNob3ItY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRhbmNob3ItY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuJGFuY2hvci10ZXh0LWRlY29yYXRpb246IG5vbmU7XG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3Zlcjogbm9uZTtcbiRoci13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaHItbWFyZ2luOiByZW0tY2FsYygyMCkgYXV0bztcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbiRsaXN0LXN0eWxlLXR5cGU6IGRpc2M7XG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZTtcbiRsaXN0LXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGxpc3QtbmVzdGVkLXNpZGUtbWFyZ2luOiAxLjI1cmVtO1xuJGRlZm5saXN0LW1hcmdpbi1ib3R0b206IDFyZW07XG4kZGVmbmxpc3QtdGVybS13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG4kZGVmbmxpc3QtdGVybS1tYXJnaW4tYm90dG9tOiAwLjNyZW07XG4kYmxvY2txdW90ZS1jb2xvcjogJGRhcmstZ3JheTtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2U7XG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2s7XG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG4ka2V5c3Ryb2tlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kYWJici11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGJsYWNrO1xuXG4vLyA1LiBUeXBvZ3JhcGh5IEhlbHBlcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNTtcbiRsZWFkLWxpbmVoZWlnaHQ6ICRnbG9iYWwtbGluZWhlaWdodDtcbiRzdWJoZWFkZXItbGluZWhlaWdodDogMS40O1xuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheTtcbiRzdWJoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRzdWJoZWFkZXItbWFyZ2luLXRvcDogMC4ycmVtO1xuJHN1YmhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW07XG4kc3RhdC1mb250LXNpemU6IDIuNXJlbTtcbiRjaXRlLWNvbG9yOiAkZGFyay1ncmF5O1xuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnO1xuJGNvZGUtY29sb3I6ICRibGFjaztcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGNvZGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMiA1IDEpO1xuJGNvZGUtYmxvY2stcGFkZGluZzogMXJlbTtcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuLy8gNi4gQWJpZGVcbi8vIC0tLS0tLS0tXG5cbiRhYmlkZS1pbnB1dHM6IHRydWU7XG4kYWJpZGUtbGFiZWxzOiB0cnVlO1xuJGlucHV0LWJhY2tncm91bmQtaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KTtcbiRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCk7XG4kaW5wdXQtZXJyb3ItZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4kaW5wdXQtZXJyb3ItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDcuIEFjY29yZGlvblxuLy8gLS0tLS0tLS0tLS0tXG5cbiRhY2NvcmRpb24tYmFja2dyb3VuZDogJHdoaXRlO1xuJGFjY29yZGlvbi1wbHVzbWludXM6IHRydWU7XG4kYWNjb3JkaW9uLXBsdXMtY29udGVudDogJ1xcMDAyQic7XG4kYWNjb3JkaW9uLW1pbnVzLWNvbnRlbnQ6ICdcXDIwMTMnO1xuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKTtcbiRhY2NvcmRpb24taXRlbS1jb2xvcjogJGJsYWNrO1xuJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6IHRyYW5zcGFyZW50O1xuJGFjY29yZGlvbi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMXJlbTtcbiRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA4LiBBY2NvcmRpb24gTWVudVxuLy8gLS0tLS0tLS0tLS0tLS0tLS1cblxuJGFjY29yZGlvbm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kYWNjb3JkaW9ubWVudS1uZXN0ZWQtbWFyZ2luOiAkZ2xvYmFsLW1lbnUtbmVzdGVkLW1hcmdpbjtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGFjY29yZGlvbm1lbnUtcGFkZGluZztcbiRhY2NvcmRpb25tZW51LWFycm93czogdHJ1ZTtcbiRhY2NvcmRpb25tZW51LWFycm93LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiRhY2NvcmRpb25tZW51LWl0ZW0tYmFja2dyb3VuZDogbnVsbDtcbiRhY2NvcmRpb25tZW51LWJvcmRlcjogbnVsbDtcbiRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLWJhY2tncm91bmQ6IG51bGw7XG4kYWNjb3JkaW9uLXN1Ym1lbnUtdG9nZ2xlLWJvcmRlcjogJGFjY29yZGlvbm1lbnUtYm9yZGVyO1xuJGFjY29yZGlvbm1lbnUtc3VibWVudS10b2dnbGUtd2lkdGg6IDQwcHg7XG4kYWNjb3JkaW9ubWVudS1zdWJtZW51LXRvZ2dsZS1oZWlnaHQ6ICRhY2NvcmRpb25tZW51LXN1Ym1lbnUtdG9nZ2xlLXdpZHRoO1xuJGFjY29yZGlvbm1lbnUtYXJyb3ctc2l6ZTogNnB4O1xuXG4vLyA5LiBCYWRnZVxuLy8gLS0tLS0tLS1cblxuJGJhZGdlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJhZGdlLWNvbG9yOiAkd2hpdGU7XG4kYmFkZ2UtY29sb3ItYWx0OiAkYmxhY2s7XG4kYmFkZ2UtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRiYWRnZS1wYWRkaW5nOiAwLjNlbTtcbiRiYWRnZS1taW53aWR0aDogMi4xZW07XG4kYmFkZ2UtZm9udC1zaXplOiAwLjZyZW07XG5cbi8vIDEwLiBCcmVhZGNydW1ic1xuLy8gLS0tLS0tLS0tLS0tLS0tXG5cbiRicmVhZGNydW1icy1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAwO1xuJGJyZWFkY3J1bWJzLWl0ZW0tZm9udC1zaXplOiByZW0tY2FsYygxMSk7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1jdXJyZW50OiAkYmxhY2s7XG4kYnJlYWRjcnVtYnMtaXRlbS1jb2xvci1kaXNhYmxlZDogJG1lZGl1bS1ncmF5O1xuJGJyZWFkY3J1bWJzLWl0ZW0tbWFyZ2luOiAwLjc1cmVtO1xuJGJyZWFkY3J1bWJzLWl0ZW0tdXBwZXJjYXNlOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yOiB0cnVlO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWl0ZW06ICcvJztcbiRicmVhZGNydW1icy1pdGVtLXNlcGFyYXRvci1pdGVtLXJ0bDogJ1xcXFwnO1xuJGJyZWFkY3J1bWJzLWl0ZW0tc2VwYXJhdG9yLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDExLiBCdXR0b25cbi8vIC0tLS0tLS0tLS1cblxuJGJ1dHRvbi1mb250LWZhbWlseTogaW5oZXJpdDtcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGw7XG4kYnV0dG9uLXBhZGRpbmc6IDAuODc1cmVtIDIuNXJlbTtcbiRidXR0b24tbWFyZ2luOiAwIDAgJGdsb2JhbC1tYXJnaW4gMDtcbiRidXR0b24tZmlsbDogc29saWQ7XG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpO1xuJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuJGJ1dHRvbi1jb2xvci1hbHQ6ICRibGFjaztcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRidXR0b24tYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG4kYnV0dG9uLWhvbGxvdy1ib3JkZXItd2lkdGg6IDFweDtcbiRidXR0b24tc2l6ZXM6IChcbiAgdGlueTogMC42cmVtLFxuICBzbWFsbDogMC43NXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pO1xuJGJ1dHRvbi1wYWxldHRlOiAkZm91bmRhdGlvbi1wYWxldHRlO1xuJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLWxpZ2h0bmVzczogLTIwJTtcbiRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzczogLTUwJTtcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQ7XG4kYnV0dG9uLXJlc3BvbnNpdmUtZXhwYW5kZWQ6IGZhbHNlO1xuXG4vLyAxMi4gQnV0dG9uIEdyb3VwXG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRidXR0b25ncm91cC1tYXJnaW46IDFyZW07XG4kYnV0dG9uZ3JvdXAtc3BhY2luZzogMXB4O1xuJGJ1dHRvbmdyb3VwLWNoaWxkLXNlbGVjdG9yOiAnLmJ1dHRvbic7XG4kYnV0dG9uZ3JvdXAtZXhwYW5kLW1heDogNjtcbiRidXR0b25ncm91cC1yYWRpdXMtb24tZWFjaDogdHJ1ZTtcblxuLy8gMTMuIENhbGxvdXRcbi8vIC0tLS0tLS0tLS0tXG5cbiRjYWxsb3V0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRjYWxsb3V0LWJhY2tncm91bmQtZmFkZTogODUlO1xuJGNhbGxvdXQtYm9yZGVyOiAwO1xuJGNhbGxvdXQtbWFyZ2luOiAwIDAgMXJlbSAwO1xuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pO1xuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYWxsb3V0LWZvbnQtY29sb3ItYWx0OiAkYm9keS1iYWNrZ3JvdW5kO1xuJGNhbGxvdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRjYWxsb3V0LWxpbmstdGludDogMzAlO1xuXG4vLyAxNC4gQ2FyZFxuLy8gLS0tLS0tLS1cblxuJGNhcmQtYmFja2dyb3VuZDogJHdoaXRlO1xuJGNhcmQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiRjYXJkLWRpdmlkZXItYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kY2FyZC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheTtcbiRjYXJkLXNoYWRvdzogbm9uZTtcbiRjYXJkLWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGNhcmQtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJGNhcmQtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG5cbi8vIDE1LiBDbG9zZSBCdXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJGNsb3NlYnV0dG9uLXBvc2l0aW9uOiByaWdodCB0b3A7XG4kY2xvc2VidXR0b24tei1pbmRleDogMTA7XG4kY2xvc2VidXR0b24tZGVmYXVsdC1zaXplOiBtZWRpdW07XG4kY2xvc2VidXR0b24tb2Zmc2V0LWhvcml6b250YWw6IChcbiAgc21hbGw6IDAuNjZyZW0sXG4gIG1lZGl1bTogMXJlbSxcbik7XG4kY2xvc2VidXR0b24tb2Zmc2V0LXZlcnRpY2FsOiAoXG4gIHNtYWxsOiAwLjMzZW0sXG4gIG1lZGl1bTogMC41cmVtLFxuKTtcbiRjbG9zZWJ1dHRvbi1zaXplOiAoXG4gIHNtYWxsOiAxLjVlbSxcbiAgbWVkaXVtOiAyZW0sXG4pO1xuJGNsb3NlYnV0dG9uLWxpbmVoZWlnaHQ6IDE7XG4kY2xvc2VidXR0b24tY29sb3I6ICRkYXJrLWdyYXk7XG4kY2xvc2VidXR0b24tY29sb3ItaG92ZXI6ICRibGFjaztcblxuLy8gMTYuIERyaWxsZG93blxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kZHJpbGxkb3duLXRyYW5zaXRpb246IHRyYW5zZm9ybSAwLjE1cyBsaW5lYXI7XG4kZHJpbGxkb3duLWFycm93czogdHJ1ZTtcbiRkcmlsbGRvd24tcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJpbGxkb3duLW5lc3RlZC1tYXJnaW46IDA7XG4kZHJpbGxkb3duLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcmlsbGRvd24tc3VibWVudS1wYWRkaW5nOiAkZHJpbGxkb3duLXBhZGRpbmc7XG4kZHJpbGxkb3duLXN1Ym1lbnUtYmFja2dyb3VuZDogJHdoaXRlO1xuJGRyaWxsZG93bi1hcnJvdy1jb2xvcjogJHByaW1hcnktY29sb3I7XG4kZHJpbGxkb3duLWFycm93LXNpemU6IDZweDtcblxuLy8gMTcuIERyb3Bkb3duXG4vLyAtLS0tLS0tLS0tLS1cblxuJGRyb3Bkb3duLXBhZGRpbmc6IDFyZW07XG4kZHJvcGRvd24tYmFja2dyb3VuZDogJGJvZHktYmFja2dyb3VuZDtcbiRkcm9wZG93bi1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tZm9udC1zaXplOiAxcmVtO1xuJGRyb3Bkb3duLXdpZHRoOiAzMDBweDtcbiRkcm9wZG93bi1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuJGRyb3Bkb3duLXNpemVzOiAoXG4gIHRpbnk6IDEwMHB4LFxuICBzbWFsbDogMjAwcHgsXG4gIGxhcmdlOiA0MDBweCxcbik7XG5cbi8vIDE4LiBEcm9wZG93biBNZW51XG4vLyAtLS0tLS0tLS0tLS0tLS0tLVxuXG4kZHJvcGRvd25tZW51LWFycm93czogdHJ1ZTtcbiRkcm9wZG93bm1lbnUtYXJyb3ctY29sb3I6ICRhbmNob3ItY29sb3I7XG4kZHJvcGRvd25tZW51LWFycm93LXNpemU6IDZweDtcbiRkcm9wZG93bm1lbnUtYXJyb3ctcGFkZGluZzogMS41cmVtO1xuJGRyb3Bkb3dubWVudS1taW4td2lkdGg6IDIwMHB4O1xuJGRyb3Bkb3dubWVudS1iYWNrZ3JvdW5kOiBudWxsO1xuJGRyb3Bkb3dubWVudS1zdWJtZW51LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRkcm9wZG93bm1lbnUtcGFkZGluZzogJGdsb2JhbC1tZW51LXBhZGRpbmc7XG4kZHJvcGRvd25tZW51LW5lc3RlZC1tYXJnaW46IDA7XG4kZHJvcGRvd25tZW51LXN1Ym1lbnUtcGFkZGluZzogJGRyb3Bkb3dubWVudS1wYWRkaW5nO1xuJGRyb3Bkb3dubWVudS1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZHJvcGRvd24tbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogZ2V0LWNvbG9yKHByaW1hcnkpO1xuJGRyb3Bkb3duLW1lbnUtaXRlbS1iYWNrZ3JvdW5kLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIDE5LiBGbGV4Ym94IFV0aWxpdGllc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRmbGV4LXNvdXJjZS1vcmRlcmluZy1jb3VudDogNjtcbiRmbGV4Ym94LXJlc3BvbnNpdmUtYnJlYWtwb2ludHM6IHRydWU7XG5cbi8vIDIwLiBGb3Jtc1xuLy8gLS0tLS0tLS0tXG5cbiRmaWVsZHNldC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kZmllbGRzZXQtcGFkZGluZzogcmVtLWNhbGMoMjApO1xuJGZpZWxkc2V0LW1hcmdpbjogcmVtLWNhbGMoMTggMCk7XG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMyk7XG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNik7XG4kaGVscHRleHQtY29sb3I6ICRibGFjaztcbiRoZWxwdGV4dC1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiRoZWxwdGV4dC1mb250LXN0eWxlOiBpdGFsaWM7XG4kaW5wdXQtcHJlZml4LWNvbG9yOiAkYmxhY2s7XG4kaW5wdXQtcHJlZml4LWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJGlucHV0LXByZWZpeC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtcHJlZml4LXBhZGRpbmc6IDFyZW07XG4kZm9ybS1sYWJlbC1jb2xvcjogJGJsYWNrO1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuODtcbiRzZWxlY3QtYmFja2dyb3VuZDogJHdoaXRlO1xuJHNlbGVjdC10cmlhbmdsZS1jb2xvcjogJGRhcmstZ3JheTtcbiRzZWxlY3QtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRpbnB1dC1jb2xvcjogJGJsYWNrO1xuJGlucHV0LXBsYWNlaG9sZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG4kaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaW5wdXQtZm9udC1zaXplOiByZW0tY2FsYygxNik7XG4kaW5wdXQtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbDtcbiRpbnB1dC1saW5lLWhlaWdodDogJGdsb2JhbC1saW5laGVpZ2h0O1xuJGlucHV0LWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzOiAkd2hpdGU7XG4kaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDogJGxpZ2h0LWdyYXk7XG4kaW5wdXQtYm9yZGVyOiAzcHggc29saWQgJG1lZGl1bS1ncmF5O1xuJGlucHV0LWJvcmRlci1mb2N1czogM3B4IHNvbGlkICRkYXJrLWdyYXk7XG4kaW5wdXQtcGFkZGluZzogcmVtLWNhbGMoMTkgMjIpO1xuJGlucHV0LXNoYWRvdzogbm9uZTtcbiRpbnB1dC1zaGFkb3ctZm9jdXM6IDAgMCA1cHggJG1lZGl1bS1ncmF5O1xuJGlucHV0LWN1cnNvci1kaXNhYmxlZDogbm90LWFsbG93ZWQ7XG4kaW5wdXQtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAwLjVzLCBib3JkZXItY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuJGlucHV0LXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjEuIExhYmVsXG4vLyAtLS0tLS0tLS1cblxuJGxhYmVsLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJGxhYmVsLWNvbG9yOiAkd2hpdGU7XG4kbGFiZWwtY29sb3ItYWx0OiAkYmxhY2s7XG4kbGFiZWwtcGFsZXR0ZTogJGZvdW5kYXRpb24tcGFsZXR0ZTtcbiRsYWJlbC1mb250LXNpemU6IDAuOHJlbTtcbiRsYWJlbC1wYWRkaW5nOiAwLjMzMzMzcmVtIDAuNXJlbTtcbiRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAyMi4gTWVkaWEgT2JqZWN0XG4vLyAtLS0tLS0tLS0tLS0tLS0tXG5cbiRtZWRpYW9iamVjdC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiRtZWRpYW9iamVjdC1zZWN0aW9uLXBhZGRpbmc6ICRnbG9iYWwtcGFkZGluZztcbiRtZWRpYW9iamVjdC1pbWFnZS13aWR0aC1zdGFja2VkOiAxMDAlO1xuXG4vLyAyMy4gTWVudVxuLy8gLS0tLS0tLS1cblxuJG1lbnUtbWFyZ2luOiAwO1xuJG1lbnUtbmVzdGVkLW1hcmdpbjogJGdsb2JhbC1tZW51LW5lc3RlZC1tYXJnaW47XG4kbWVudS1pdGVtcy1wYWRkaW5nOiAkZ2xvYmFsLW1lbnUtcGFkZGluZztcbiRtZW51LXNpbXBsZS1tYXJnaW46IDFyZW07XG4kbWVudS1pdGVtLWNvbG9yLWFjdGl2ZTogJHdoaXRlO1xuJG1lbnUtaXRlbS1jb2xvci1hbHQtYWN0aXZlOiAkYmxhY2s7XG4kbWVudS1pdGVtLWJhY2tncm91bmQtYWN0aXZlOiBnZXQtY29sb3IocHJpbWFyeSk7XG4kbWVudS1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG4kbWVudS1zdGF0ZS1iYWNrLWNvbXBhdDogdHJ1ZTtcbiRtZW51LWNlbnRlcmVkLWJhY2stY29tcGF0OiB0cnVlO1xuJG1lbnUtaWNvbnMtYmFjay1jb21wYXQ6IHRydWU7XG5cbi8vIDI0LiBNZXRlclxuLy8gLS0tLS0tLS0tXG5cbiRtZXRlci1oZWlnaHQ6IDFyZW07XG4kbWV0ZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRtZXRlci1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kbWV0ZXItZmlsbC1nb29kOiAkc3VjY2Vzcy1jb2xvcjtcbiRtZXRlci1maWxsLW1lZGl1bTogJHdhcm5pbmctY29sb3I7XG4kbWV0ZXItZmlsbC1iYWQ6ICRhbGVydC1jb2xvcjtcblxuLy8gMjUuIE9mZi1jYW52YXNcbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRvZmZjYW52YXMtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtdmVydGljYWwtc2l6ZXM6IChcbiAgc21hbGw6IDI1MHB4LFxuKTtcbiRvZmZjYW52YXMtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXk7XG4kb2ZmY2FudmFzLXNoYWRvdzogMCAwIDEwcHggcmdiYSgkYmxhY2ssIDAuNyk7XG4kb2ZmY2FudmFzLWlubmVyLXNoYWRvdy1zaXplOiAyMHB4O1xuJG9mZmNhbnZhcy1pbm5lci1zaGFkb3ctY29sb3I6IHJnYmEoJGJsYWNrLCAwLjI1KTtcbiRvZmZjYW52YXMtb3ZlcmxheS16aW5kZXg6IDExO1xuJG9mZmNhbnZhcy1wdXNoLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLW92ZXJsYXAtemluZGV4OiAxMztcbiRvZmZjYW52YXMtcmV2ZWFsLXppbmRleDogMTI7XG4kb2ZmY2FudmFzLXRyYW5zaXRpb24tbGVuZ3RoOiAwLjVzO1xuJG9mZmNhbnZhcy10cmFuc2l0aW9uLXRpbWluZzogZWFzZTtcbiRvZmZjYW52YXMtZml4ZWQtcmV2ZWFsOiB0cnVlO1xuJG9mZmNhbnZhcy1leGl0LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjI1KTtcbiRtYWluY29udGVudC1jbGFzczogJ29mZi1jYW52YXMtY29udGVudCc7XG5cbi8vIDI2LiBPcmJpdFxuLy8gLS0tLS0tLS0tXG5cbiRvcmJpdC1idWxsZXQtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJG9yYml0LWJ1bGxldC1iYWNrZ3JvdW5kLWFjdGl2ZTogJGRhcmstZ3JheTtcbiRvcmJpdC1idWxsZXQtZGlhbWV0ZXI6IDEuMnJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luOiAwLjFyZW07XG4kb3JiaXQtYnVsbGV0LW1hcmdpbi10b3A6IDAuOHJlbTtcbiRvcmJpdC1idWxsZXQtbWFyZ2luLWJvdHRvbTogMC44cmVtO1xuJG9yYml0LWNhcHRpb24tYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY2FwdGlvbi1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtYmFja2dyb3VuZC1ob3ZlcjogcmdiYSgkYmxhY2ssIDAuNSk7XG4kb3JiaXQtY29udHJvbC1wYWRkaW5nOiAxcmVtO1xuJG9yYml0LWNvbnRyb2wtemluZGV4OiAxMDtcblxuLy8gMjcuIFBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tXG5cbiRwYWdpbmF0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuJHBhZ2luYXRpb24tbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yOiAkYmxhY2s7XG4kcGFnaW5hdGlvbi1pdGVtLXBhZGRpbmc6IHJlbS1jYWxjKDMgMTApO1xuJHBhZ2luYXRpb24taXRlbS1zcGFjaW5nOiByZW0tY2FsYygxKTtcbiRwYWdpbmF0aW9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcGFnaW5hdGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICRsaWdodC1ncmF5O1xuJHBhZ2luYXRpb24taXRlbS1iYWNrZ3JvdW5kLWN1cnJlbnQ6ICRwcmltYXJ5LWNvbG9yO1xuJHBhZ2luYXRpb24taXRlbS1jb2xvci1jdXJyZW50OiAkd2hpdGU7XG4kcGFnaW5hdGlvbi1pdGVtLWNvbG9yLWRpc2FibGVkOiAkbWVkaXVtLWdyYXk7XG4kcGFnaW5hdGlvbi1lbGxpcHNpcy1jb2xvcjogJGJsYWNrO1xuJHBhZ2luYXRpb24tbW9iaWxlLWl0ZW1zOiBmYWxzZTtcbiRwYWdpbmF0aW9uLW1vYmlsZS1jdXJyZW50LWl0ZW06IGZhbHNlO1xuJHBhZ2luYXRpb24tYXJyb3dzOiB0cnVlO1xuJHBhZ2luYXRpb24tYXJyb3ctcHJldmlvdXM6ICdcXDAwQUInO1xuJHBhZ2luYXRpb24tYXJyb3ctbmV4dDogJ1xcMDBCQic7XG5cbi8vIDI4LiBQcm9ncmVzcyBCYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS1cblxuJHByb2dyZXNzLWhlaWdodDogMXJlbTtcbiRwcm9ncmVzcy1iYWNrZ3JvdW5kOiAkbWVkaXVtLWdyYXk7XG4kcHJvZ3Jlc3MtbWFyZ2luLWJvdHRvbTogJGdsb2JhbC1tYXJnaW47XG4kcHJvZ3Jlc3MtbWV0ZXItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvZ3Jlc3MtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gMjkuIFByb3RvdHlwZSBBcnJvd1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWFycm93LWRpcmVjdGlvbnM6IChcbiAgZG93bixcbiAgdXAsXG4gIHJpZ2h0LFxuICBsZWZ0XG4pO1xuJHByb3RvdHlwZS1hcnJvdy1zaXplOiAwLjQzNzVyZW07XG4kcHJvdG90eXBlLWFycm93LWNvbG9yOiAkYmxhY2s7XG5cbi8vIDMwLiBQcm90b3R5cGUgQm9yZGVyLUJveFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtYm9yZGVyLWJveC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMxLiBQcm90b3R5cGUgQm9yZGVyLU5vbmVcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXItbm9uZS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG5cbi8vIDMyLiBQcm90b3R5cGUgQm9yZGVyZWRcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1ib3JkZXJlZC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWJvcmRlci13aWR0aDogcmVtLWNhbGMoMSk7XG4kcHJvdG90eXBlLWJvcmRlci10eXBlOiBzb2xpZDtcbiRwcm90b3R5cGUtYm9yZGVyLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cbi8vIDMzLiBQcm90b3R5cGUgRGlzcGxheVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZGlzcGxheS1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLWRpc3BsYXk6IChcbiAgaW5saW5lLFxuICBpbmxpbmUtYmxvY2ssXG4gIGJsb2NrLFxuICB0YWJsZSxcbiAgdGFibGUtY2VsbFxuKTtcblxuLy8gMzQuIFByb3RvdHlwZSBGb250LVN0eWxpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtZm9udC1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXdpZGUtbGV0dGVyLXNwYWNpbmc6IHJlbS1jYWxjKDQpO1xuJHByb3RvdHlwZS1mb250LW5vcm1hbDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsO1xuJHByb3RvdHlwZS1mb250LWJvbGQ6ICRnbG9iYWwtd2VpZ2h0LWJvbGQ7XG5cbi8vIDM1LiBQcm90b3R5cGUgTGlzdC1TdHlsZS1UeXBlXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLWxpc3QtYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zdHlsZS10eXBlLXVub3JkZXJlZDogKFxuICBkaXNjLFxuICBjaXJjbGUsXG4gIHNxdWFyZVxuKTtcbiRwcm90b3R5cGUtc3R5bGUtdHlwZS1vcmRlcmVkOiAoXG4gIGRlY2ltYWwsXG4gIGxvd2VyLWFscGhhLFxuICBsb3dlci1sYXRpbixcbiAgbG93ZXItcm9tYW4sXG4gIHVwcGVyLWFscGhhLFxuICB1cHBlci1sYXRpbixcbiAgdXBwZXItcm9tYW5cbik7XG5cbi8vIDM2LiBQcm90b3R5cGUgT3ZlcmZsb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1vdmVyZmxvdy1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLW92ZXJmbG93OiAoXG4gIHZpc2libGUsXG4gIGhpZGRlbixcbiAgc2Nyb2xsXG4pO1xuXG4vLyAzNy4gUHJvdG90eXBlIFBvc2l0aW9uXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtcG9zaXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1wb3NpdGlvbjogKFxuICBzdGF0aWMsXG4gIHJlbGF0aXZlLFxuICBhYnNvbHV0ZSxcbiAgZml4ZWRcbik7XG4kcHJvdG90eXBlLXBvc2l0aW9uLXotaW5kZXg6IDk3NTtcblxuLy8gMzguIFByb3RvdHlwZSBSb3VuZGVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1yb3VuZGVkLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm9yZGVyLXJhZGl1czogcmVtLWNhbGMoMyk7XG5cbi8vIDM5LiBQcm90b3R5cGUgU2VwYXJhdG9yXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNlcGFyYXRvci1icmVha3BvaW50czogJGdsb2JhbC1wcm90b3R5cGUtYnJlYWtwb2ludHM7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1hbGlnbjogY2VudGVyO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItaGVpZ2h0OiByZW0tY2FsYygyKTtcbiRwcm90b3R5cGUtc2VwYXJhdG9yLXdpZHRoOiAzcmVtO1xuJHByb3RvdHlwZS1zZXBhcmF0b3ItYmFja2dyb3VuZDogJHByaW1hcnktY29sb3I7XG4kcHJvdG90eXBlLXNlcGFyYXRvci1tYXJnaW4tdG9wOiAkZ2xvYmFsLW1hcmdpbjtcblxuLy8gNDAuIFByb3RvdHlwZSBTaGFkb3dcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtc2hhZG93LWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtYm94LXNoYWRvdzogMCAycHggNXB4IDAgcmdiYSgwLDAsMCwuMTYpLFxuICAgICAgICAgICAgICAgICAgICAgICAwIDJweCAxMHB4IDAgcmdiYSgwLDAsMCwuMTIpO1xuXG4vLyA0MS4gUHJvdG90eXBlIFNpemluZ1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1zaXppbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zaXppbmc6IChcbiAgd2lkdGgsXG4gIGhlaWdodFxuKTtcbiRwcm90b3R5cGUtc2l6ZXM6IChcbiAgMjU6IDI1JSxcbiAgNTA6IDUwJSxcbiAgNzU6IDc1JSxcbiAgMTAwOiAxMDAlXG4pO1xuXG4vLyA0Mi4gUHJvdG90eXBlIFNwYWNpbmdcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcHJvdG90eXBlLXNwYWNpbmctYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS1zcGFjZXJzLWNvdW50OiAzO1xuXG4vLyA0My4gUHJvdG90eXBlIFRleHQtRGVjb3JhdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJHByb3RvdHlwZS1kZWNvcmF0aW9uLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1kZWNvcmF0aW9uOiAoXG4gIG92ZXJsaW5lLFxuICB1bmRlcmxpbmUsXG4gIGxpbmUtdGhyb3VnaCxcbik7XG5cbi8vIDQ0LiBQcm90b3R5cGUgVGV4dC1UcmFuc2Zvcm1hdGlvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdHJhbnNmb3JtYXRpb24tYnJlYWtwb2ludHM6ICRnbG9iYWwtcHJvdG90eXBlLWJyZWFrcG9pbnRzO1xuJHByb3RvdHlwZS10ZXh0LXRyYW5zZm9ybWF0aW9uOiAoXG4gIGxvd2VyY2FzZSxcbiAgdXBwZXJjYXNlLFxuICBjYXBpdGFsaXplXG4pO1xuXG4vLyA0NS4gUHJvdG90eXBlIFRleHQtVXRpbGl0aWVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiRwcm90b3R5cGUtdXRpbGl0aWVzLWJyZWFrcG9pbnRzOiAkZ2xvYmFsLXByb3RvdHlwZS1icmVha3BvaW50cztcbiRwcm90b3R5cGUtdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG5cbi8vIDQ2LiBSZXNwb25zaXZlIEVtYmVkXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4kcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNik7XG4kcmVzcG9uc2l2ZS1lbWJlZC1yYXRpb3M6IChcbiAgZGVmYXVsdDogNCBieSAzLFxuICB3aWRlc2NyZWVuOiAxNiBieSA5LFxuKTtcblxuLy8gNDcuIFJldmVhbFxuLy8gLS0tLS0tLS0tLVxuXG4kcmV2ZWFsLWJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuJHJldmVhbC13aWR0aDogNjAwcHg7XG4kcmV2ZWFsLW1heC13aWR0aDogJGdsb2JhbC13aWR0aDtcbiRyZXZlYWwtcGFkZGluZzogJGdsb2JhbC1wYWRkaW5nO1xuJHJldmVhbC1ib3JkZXI6IG5vbmU7XG4kcmV2ZWFsLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kcmV2ZWFsLXppbmRleDogMTAwNTtcbiRyZXZlYWwtb3ZlcmxheS1iYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC44NSk7XG5cbi8vIDQ4LiBTbGlkZXJcbi8vIC0tLS0tLS0tLS1cblxuJHNsaWRlci13aWR0aC12ZXJ0aWNhbDogMC41cmVtO1xuJHNsaWRlci10cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlLWluLW91dDtcbiRzbGlkZXItaGVpZ2h0OiAwLjVyZW07XG4kc2xpZGVyLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5O1xuJHNsaWRlci1maWxsLWJhY2tncm91bmQ6ICRtZWRpdW0tZ3JheTtcbiRzbGlkZXItaGFuZGxlLWhlaWdodDogMS40cmVtO1xuJHNsaWRlci1oYW5kbGUtd2lkdGg6IDEuNHJlbTtcbiRzbGlkZXItaGFuZGxlLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuJHNsaWRlci1vcGFjaXR5LWRpc2FibGVkOiAwLjI1O1xuJHNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyA0OS4gU3dpdGNoXG4vLyAtLS0tLS0tLS0tXG5cbiRzd2l0Y2gtYmFja2dyb3VuZDogJG1lZGl1bS1ncmF5O1xuJHN3aXRjaC1iYWNrZ3JvdW5kLWFjdGl2ZTogJHByaW1hcnktY29sb3I7XG4kc3dpdGNoLWhlaWdodDogMnJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXRpbnk6IDEuNXJlbTtcbiRzd2l0Y2gtaGVpZ2h0LXNtYWxsOiAxLjc1cmVtO1xuJHN3aXRjaC1oZWlnaHQtbGFyZ2U6IDIuNXJlbTtcbiRzd2l0Y2gtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbiRzd2l0Y2gtbWFyZ2luOiAkZ2xvYmFsLW1hcmdpbjtcbiRzd2l0Y2gtcGFkZGxlLWJhY2tncm91bmQ6ICR3aGl0ZTtcbiRzd2l0Y2gtcGFkZGxlLW9mZnNldDogMC4yNXJlbTtcbiRzd2l0Y2gtcGFkZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4kc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uOiBhbGwgMC4yNXMgZWFzZS1vdXQ7XG4kc3dpdGNoLW9wYWNpdHktZGlzYWJsZWQ6IC41O1xuJHN3aXRjaC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkO1xuXG4vLyA1MC4gVGFibGVcbi8vIC0tLS0tLS0tLVxuXG4kdGFibGUtYmFja2dyb3VuZDogJHdoaXRlO1xuJHRhYmxlLWNvbG9yLXNjYWxlOiA1JTtcbiR0YWJsZS1ib3JkZXI6IDFweCBzb2xpZCBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKTtcbiR0YWJsZS1ob3Zlci1zY2FsZTogMiU7XG4kdGFibGUtcm93LWhvdmVyOiBkYXJrZW4oJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1ob3Zlci1zY2FsZSk7XG4kdGFibGUtcm93LXN0cmlwZS1ob3ZlcjogZGFya2VuKCR0YWJsZS1iYWNrZ3JvdW5kLCAkdGFibGUtY29sb3Itc2NhbGUgKyAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWlzLXN0cmlwZWQ6IHRydWU7XG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlKTtcbiR0YWJsZS1zdHJpcGU6IGV2ZW47XG4kdGFibGUtaGVhZC1iYWNrZ3JvdW5kOiBzbWFydC1zY2FsZSgkdGFibGUtYmFja2dyb3VuZCwgJHRhYmxlLWNvbG9yLXNjYWxlIC8gMik7XG4kdGFibGUtaGVhZC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtaGVhZC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWZvb3QtYmFja2dyb3VuZDogc21hcnQtc2NhbGUoJHRhYmxlLWJhY2tncm91bmQsICR0YWJsZS1jb2xvci1zY2FsZSk7XG4kdGFibGUtZm9vdC1yb3ctaG92ZXI6IGRhcmtlbigkdGFibGUtZm9vdC1iYWNrZ3JvdW5kLCAkdGFibGUtaG92ZXItc2NhbGUpO1xuJHRhYmxlLWhlYWQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWJsZS1mb290LWZvbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4kc2hvdy1oZWFkZXItZm9yLXN0YWNrZWQ6IGZhbHNlO1xuJHRhYmxlLXN0YWNrLWJyZWFrcG9pbnQ6IG1lZGl1bTtcblxuLy8gNTEuIFRhYnNcbi8vIC0tLS0tLS0tXG5cbiR0YWItbWFyZ2luOiAwO1xuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiR0YWItYmFja2dyb3VuZC1hY3RpdmU6ICRsaWdodC1ncmF5O1xuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuJHRhYi1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZTtcbiR0YWItaXRlbS1wYWRkaW5nOiAxLjI1cmVtIDEuNXJlbTtcbiR0YWItY29udGVudC1iYWNrZ3JvdW5kOiAkd2hpdGU7XG4kdGFiLWNvbnRlbnQtYm9yZGVyOiAkbGlnaHQtZ3JheTtcbiR0YWItY29udGVudC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtO1xuXG4vLyA1Mi4gVGh1bWJuYWlsXG4vLyAtLS0tLS0tLS0tLS0tXG5cbiR0aHVtYm5haWwtYm9yZGVyOiA0cHggc29saWQgJHdoaXRlO1xuJHRodW1ibmFpbC1tYXJnaW4tYm90dG9tOiAkZ2xvYmFsLW1hcmdpbjtcbiR0aHVtYm5haWwtc2hhZG93OiAwIDAgMCAxcHggcmdiYSgkYmxhY2ssIDAuMik7XG4kdGh1bWJuYWlsLXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwgMC41KTtcbiR0aHVtYm5haWwtdHJhbnNpdGlvbjogYm94LXNoYWRvdyAyMDBtcyBlYXNlLW91dDtcbiR0aHVtYm5haWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTMuIFRpdGxlIEJhclxuLy8gLS0tLS0tLS0tLS0tLVxuXG4kdGl0bGViYXItYmFja2dyb3VuZDogJGJsYWNrO1xuJHRpdGxlYmFyLWNvbG9yOiAkd2hpdGU7XG4kdGl0bGViYXItcGFkZGluZzogMC41cmVtO1xuJHRpdGxlYmFyLXRleHQtZm9udC13ZWlnaHQ6IGJvbGQ7XG4kdGl0bGViYXItaWNvbi1jb2xvcjogJHdoaXRlO1xuJHRpdGxlYmFyLWljb24tY29sb3ItaG92ZXI6ICRtZWRpdW0tZ3JheTtcbiR0aXRsZWJhci1pY29uLXNwYWNpbmc6IDAuMjVyZW07XG5cbi8vIDU0LiBUb29sdGlwXG4vLyAtLS0tLS0tLS0tLVxuXG4kaGFzLXRpcC1jdXJzb3I6IGhlbHA7XG4kaGFzLXRpcC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGRhcmstZ3JheTtcbiR0b29sdGlwLWJhY2tncm91bmQtY29sb3I6ICRibGFjaztcbiR0b29sdGlwLWNvbG9yOiAkd2hpdGU7XG4kdG9vbHRpcC1wYWRkaW5nOiAwLjc1cmVtO1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAxMHJlbTtcbiR0b29sdGlwLWZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiR0b29sdGlwLXBpcC13aWR0aDogMC43NXJlbTtcbiR0b29sdGlwLXBpcC1oZWlnaHQ6ICR0b29sdGlwLXBpcC13aWR0aCAqIDAuODY2O1xuJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gNTUuIFRvcCBCYXJcbi8vIC0tLS0tLS0tLS0tXG5cbiR0b3BiYXItcGFkZGluZzogMC41cmVtO1xuJHRvcGJhci1iYWNrZ3JvdW5kOiAkbGlnaHQtZ3JheTtcbiR0b3BiYXItc3VibWVudS1iYWNrZ3JvdW5kOiAkdG9wYmFyLWJhY2tncm91bmQ7XG4kdG9wYmFyLXRpdGxlLXNwYWNpbmc6IDAuNXJlbSAxcmVtIDAuNXJlbSAwO1xuJHRvcGJhci1pbnB1dC13aWR0aDogMjAwcHg7XG4kdG9wYmFyLXVuc3RhY2stYnJlYWtwb2ludDogbWVkaXVtO1xuXG4vLyA1Ni4gWHkgR3JpZFxuLy8gLS0tLS0tLS0tLS1cblxuJHh5LWdyaWQ6IHRydWU7XG4kZ3JpZC1jb250YWluZXI6ICRnbG9iYWwtd2lkdGg7XG4kZ3JpZC1jb2x1bW5zOiAxMjtcbiRncmlkLW1hcmdpbi1ndXR0ZXJzOiAoXG4gIHNtYWxsOiAyMHB4LFxuICBtZWRpdW06IDIwcHgsXG4gIGxhcmdlOiAyMHB4LFxuICB4bGFyZ2U6IDM5LjlweFxuKTtcbiRncmlkLXBhZGRpbmctZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnM7XG4kZ3JpZC1jb250YWluZXItcGFkZGluZzogJGdyaWQtcGFkZGluZy1ndXR0ZXJzO1xuJGdyaWQtY29udGFpbmVyLW1heDogJGdsb2JhbC13aWR0aDtcbiR4eS1ibG9jay1ncmlkLW1heDogODtcblxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gQ3JlYXRlcyBhbiBpbm5lciBib3gtc2hhZG93IGZvciBvbmx5IG9uZSBzaWRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaWRlIC0gU2lkZSB0aGUgc2hhZG93IGlzIHN1cHBvc2VkIHRvIGFwcGVhci4gQ2FuIGJlIGB0b3BgLCBgbGVmdGAsIGByaWdodGAgb3IgYGJvdHRvbWAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRzaXplIC0gV2lkdGggZm9yIHRoZSB0YXJnZXQgc2lkZS5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgLSBDb2xvciBvZiB0aGUgc2hhZG93LlxuQG1peGluIGlubmVyLXNpZGUtc2hhZG93KFxuICAkc2lkZTogYm90dG9tLFxuICAkc2l6ZTogMjBweCxcbiAgJGNvbG9yOiByZ2JhKCRibGFjaywgMC4yNSlcbikge1xuXG4gICRoZWxwZXI6IHJvdW5kKCRzaXplICogMC42NSk7XG5cbiAgQGlmICgkc2lkZSA9PSB0b3ApIHtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwICRoZWxwZXIgJHNpemUgKC0xKSokaGVscGVyICRjb2xvcjtcbiAgfSBAZWxzZSBpZiAoJHNpZGUgPT0gbGVmdCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICRoZWxwZXIgMCAkc2l6ZSAoLTEpKiRoZWxwZXIgJGNvbG9yO1xuICB9IEBlbHNlIGlmICgkc2lkZSA9PSByaWdodCkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0ICgtMSkqJGhlbHBlciAwICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH0gQGVsc2UgaWYgKCRzaWRlID09IGJvdHRvbSkge1xuICAgIGJveC1zaGFkb3c6IGluc2V0IDAgKC0xKSokaGVscGVyICRzaXplICgtMSkqJGhlbHBlciAkY29sb3I7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBDU1MgdHJpYW5nbGUsIHdoaWNoIGNhbiBiZSB1c2VkIGZvciBkcm9wZG93biBhcnJvd3MsIGRyb3Bkb3duIHBpcHMsIGFuZCBtb3JlLiBVc2UgdGhpcyBtaXhpbiBpbnNpZGUgYSBgJjo6YmVmb3JlYCBvciBgJjo6YWZ0ZXJgIHNlbGVjdG9yLCB0byBhdHRhY2ggdGhlIHRyaWFuZ2xlIHRvIGFuIGV4aXN0aW5nIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJHRyaWFuZ2xlLXNpemUgLSBXaWR0aCBvZiB0aGUgdHJpYW5nbGUuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJHRyaWFuZ2xlLWNvbG9yIC0gQ29sb3Igb2YgdGhlIHRyaWFuZ2xlLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIERpcmVjdGlvbiB0aGUgdHJpYW5nbGUgcG9pbnRzLiBDYW4gYmUgYHVwYCwgYHJpZ2h0YCwgYGRvd25gLCBvciBgbGVmdGAuXG5AbWl4aW4gY3NzLXRyaWFuZ2xlKFxuICAkdHJpYW5nbGUtc2l6ZSxcbiAgJHRyaWFuZ2xlLWNvbG9yLFxuICAkdHJpYW5nbGUtZGlyZWN0aW9uXG4pIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG5cbiAgYm9yZGVyOiBpbnNldCAkdHJpYW5nbGUtc2l6ZTtcblxuICBjb250ZW50OiAnJztcblxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gZG93bikge1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IHVwKSB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICBib3JkZXItYm90dG9tLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvcjtcbiAgfVxuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gcmlnaHQpIHtcbiAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgYm9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0cmlhbmdsZS1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIG1lbnUgaWNvbiB3aXRoIGEgc2V0IHdpZHRoLCBoZWlnaHQsIG51bWJlciBvZiBiYXJzLCBhbmQgY29sb3JzLiBUaGUgbWl4aW4gdXNlcyB0aGUgaGVpZ2h0IG9mIHRoZSBpY29uIGFuZCB0aGUgd2VpZ2h0IG9mIHRoZSBiYXJzIHRvIGRldGVybWluZSBzcGFjaW5nLiA8ZGl2IGNsYXNzPVwiZG9jcy1leGFtcGxlLWJ1cmdlclwiPjwvZGl2PlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3ItaG92ZXIgWyRkYXJrLWdyYXldIC0gQ29sb3IgdG8gdXNlIHdoZW4gdGhlIGljb24gaXMgaG92ZXJlZCBvdmVyLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWzIwcHhdIC0gV2lkdGggb2YgdGhlIGljb24uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRoZWlnaHQgWzE2cHhdIC0gSGVpZ2h0IG9mIHRoZSBpY29uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2VpZ2h0IFsycHhdIC0gSGVpZ2h0IG9mIGluZGl2aWR1YWwgYmFycyBpbiB0aGUgaWNvbi5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhcnMgWzNdIC0gTnVtYmVyIG9mIGJhcnMgaW4gdGhlIGljb24uXG5AbWl4aW4gaGFtYnVyZ2VyKFxuICAkY29sb3I6ICRibGFjayxcbiAgJGNvbG9yLWhvdmVyOiAkZGFyay1ncmF5LFxuICAkd2lkdGg6IDIwcHgsXG4gICRoZWlnaHQ6IDE2cHgsXG4gICR3ZWlnaHQ6IDJweCxcbiAgJGJhcnM6IDNcbikge1xuICAvLyBib3gtc2hhZG93IENTUyBvdXRwdXRcbiAgJHNoYWRvdzogKCk7XG4gICRob3Zlci1zaGFkb3c6ICgpO1xuXG4gIC8vIFNwYWNpbmcgYmV0d2VlbiBiYXJzIGlzIGNhbGN1bGF0ZWQgYmFzZWQgb24gdGhlIHRvdGFsIGhlaWdodCBvZiB0aGUgaWNvbiBhbmQgdGhlIHdlaWdodCBvZiBlYWNoIGJhclxuICAkc3BhY2luZzogKCRoZWlnaHQgLSAoJHdlaWdodCAqICRiYXJzKSkgLyAoJGJhcnMgLSAxKTtcblxuICBAaWYgdW5pdCgkc3BhY2luZykgPT0gJ3B4JyB7XG4gICAgJHNwYWNpbmc6IGZsb29yKCRzcGFjaW5nKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICRvZmZzZXQ6ICgkd2VpZ2h0ICsgJHNwYWNpbmcpICogKCRpIC0gMSk7XG4gICAgJHNoYWRvdzogYXBwZW5kKCRzaGFkb3csIDAgJG9mZnNldCAwICRjb2xvciwgY29tbWEpO1xuICB9XG5cbiAgLy8gSWNvbiBjb250YWluZXJcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuXG4gIC8vIEljb24gYmFyc1xuICAmOjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAkd2VpZ2h0O1xuXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xuICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG5cbiAgICBjb250ZW50OiAnJztcbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlXG4gIEBpZiAkY29sb3ItaG92ZXIge1xuICAgIC8vIEdlbmVyYXRlIENTU1xuICAgIEBmb3IgJGkgZnJvbSAyIHRocm91Z2ggJGJhcnMge1xuICAgICAgJG9mZnNldDogKCR3ZWlnaHQgKyAkc3BhY2luZykgKiAoJGkgLSAxKTtcbiAgICAgICRob3Zlci1zaGFkb3c6IGFwcGVuZCgkaG92ZXItc2hhZG93LCAwICRvZmZzZXQgMCAkY29sb3ItaG92ZXIsIGNvbW1hKTtcbiAgICB9XG5cbiAgICAmOmhvdmVyOjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XG4gICAgICBib3gtc2hhZG93OiAkaG92ZXItc2hhZG93O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBhIGRvd253YXJkLWZhY2luZyB0cmlhbmdsZSBhcyBhIGJhY2tncm91bmQgaW1hZ2UgdG8gYW4gZWxlbWVudC4gVGhlIGltYWdlIGlzIGZvcm1hdHRlZCBhcyBhbiBTVkcsIG1ha2luZyBpdCBlYXN5IHRvIGNoYW5nZSB0aGUgY29sb3IuIEJlY2F1c2UgSW50ZXJuZXQgRXhwbG9yZXIgZG9lc24ndCBzdXBwb3J0IGVuY29kZWQgU1ZHcyBhcyBiYWNrZ3JvdW5kIGltYWdlcywgYSBQTkcgZmFsbGJhY2sgaXMgYWxzbyBpbmNsdWRlZC5cbi8vLyBUaGVyZSBhcmUgdHdvIFBORyBmYWxsYmFja3M6IGEgYmxhY2sgdHJpYW5nbGUgYW5kIGEgd2hpdGUgdHJpYW5nbGUuIFRoZSBvbmUgdXNlZCBkZXBlbmRzIG9uIHRoZSBsaWdodG5lc3Mgb2YgdGhlIGlucHV0IGNvbG9yLlxuLy8vXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGNvbG9yIFskYmxhY2tdIC0gQ29sb3IgdG8gdXNlIGZvciB0aGUgdHJpYW5nbGUuXG5AbWl4aW4gYmFja2dyb3VuZC10cmlhbmdsZSgkY29sb3I6ICRibGFjaykge1xuICAkcmdiOiAncmdiJTI4I3tyb3VuZChyZWQoJGNvbG9yKSl9LCAje3JvdW5kKGdyZWVuKCRjb2xvcikpfSwgI3tyb3VuZChibHVlKCRjb2xvcikpfSUyOSc7XG5cbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO3V0ZjgsPHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZlcnNpb249JzEuMScgd2lkdGg9JzMyJyBoZWlnaHQ9JzI0JyB2aWV3Qm94PScwIDAgMzIgMjQnPjxwb2x5Z29uIHBvaW50cz0nMCwwIDMyLDAgMTYsMjQnIHN0eWxlPSdmaWxsOiAjeyRyZ2J9Jz48L3BvbHlnb24+PC9zdmc+XCIpO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6MFxcMCkge1xuICAgIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA8IDYwJSB7XG4gICAgICAvLyBXaGl0ZSB0cmlhbmdsZVxuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUNBQUFBQVlDQVlBQUFDYlUvODBBQUFBR1hSRldIUlRiMlowZDJGeVpRQkJaRzlpWlNCSmJXRm5aVkpsWVdSNWNjbGxQQUFBQUlwSlJFRlVlTnJFa2NrTmdEQU1CQmZSa0V0ME9iUkJCZHNHWFVEZ21RZks0WGhIMm04Y3pRQUF5MjdSM3RzdzRRZmUyeDh1T082b1lMYjZHbE9vcjNHRitzd1VSQU9tVUorUnd0RUpzOVd2VEdFWXhCWHFJMU1RQVpoQ2ZVUUtSekRNVmorVHdyQUlWNmp2U1VFa1lBcjFMU2tjeVRCYi9WK0tZZlg3eEFldXNxM3NMRHRHSDNrRUdBQ1BXSWZsTlpmaFJRQUFBQUJKUlU1RXJrSmdnZz09Jyk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIC8vIEJsYWNrIHRyaWFuZ2xlXG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQ0FBQUFBWUNBWUFBQUNiVS84MEFBQUFHWFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JKYldGblpWSmxZV1I1Y2NsbFBBQUFBTUJKUkVGVWVOckVsbHNPaENBTVJWc3pDOUlselU3S0NtVkhUSnNvTVdZTVV0cHl2OUJnYnVYUUI1WlNkZ0JZWVk0eWNnQml2azhLWUZzUU1mTWlUVEJQNG8zblV6Q0t6T2FiTEpiTHkyL2czMWV2R2tBZ2luUjQvWmVnS0g1cVgzYkpDc2NBM3QweDNrZ081dFFGeWhoRmY1MHhScUZMYnlNVU5KUXpneWpHUy93Z0Nwdktxa1JCcHVXckU0VjlkKzFFNGRQVVhxSWcxMDdTUU9FLzJEUlF4TXdURHlnSUluVkRFVDlUM2xDb2ovNmovVkNtR2paT2wybEtwWjhBQXdEUVA3eklpbURHRlFBQUFBQkpSVTVFcmtKZ2dnPT0nKTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIEFwcGxpZXMgdGhlIG1pY3JvIGNsZWFyZml4IGhhY2sgcG9wdWxhcml6ZWQgYnkgTmljb2xhcyBHYWxsYWdoZXIuIEluY2x1ZGUgdGhpcyBtaXhpbiBvbiBhIGNvbnRhaW5lciBpZiBpdHMgY2hpbGRyZW4gYXJlIGFsbCBmbG9hdGVkLCB0byBnaXZlIHRoZSBjb250YWluZXIgYSBwcm9wZXIgaGVpZ2h0LlxuLy8vIFRoZSBjbGVhcmZpeCBpcyBhdWdtZW50ZWQgd2l0aCBzcGVjaWZpYyBzdHlsZXMgdG8gcHJldmVudCBib3JkZXJzIGluIGZsZXhib3ggZW52aXJvbm1lbnRzXG4vLy8gQGxpbmsgaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svIE1pY3JvIENsZWFyZml4IEhhY2tcbi8vLyBAbGluayBodHRwOi8vZGFuaXNhZGVzaWduZXIuY29tL2Jsb2cvZmxleGJveC1jbGVhci1maXgtcHNldWRvLWVsZW1lbnRzLyBGbGV4Ym94IGZpeFxuQG1peGluIGNsZWFyZml4IHtcbiAgJjo6YmVmb3JlLFxuICAmOjphZnRlciB7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgY29udGVudDogJyAnO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4LWJhc2lzOiAwO1xuICAgICAgb3JkZXI6IDE7XG4gICAgfVxuICB9XG5cbiAgJjo6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG5cbi8vLyBBZGRzIENTUyBmb3IgYSBcInF1YW50aXR5IHF1ZXJ5XCIgc2VsZWN0b3IgdGhhdCBhdXRvbWF0aWNhbGx5IHNpemVzIGVsZW1lbnRzIGJhc2VkIG9uIGhvdyBtYW55IHRoZXJlIGFyZSBpbnNpZGUgYSBjb250YWluZXIuXG4vLy8gQGxpbmsgaHR0cDovL2FsaXN0YXBhcnQuY29tL2FydGljbGUvcXVhbnRpdHktcXVlcmllcy1mb3ItY3NzIFF1YW50aXR5IFF1ZXJpZXMgZm9yIENTU1xuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRtYXggLSBNYXhpbXVtIG51bWJlciBvZiBpdGVtcyB0byBkZXRlY3QuIFRoZSBoaWdoZXIgdGhpcyBudW1iZXIgaXMsIHRoZSBtb3JlIENTUyB0aGF0J3MgcmVxdWlyZWQgdG8gY292ZXIgZWFjaCBudW1iZXIgb2YgaXRlbXMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZWxlbSBbbGldIC0gVGFnIHRvIHVzZSBmb3Igc2libGluZyBzZWxlY3RvcnMuXG5AbWl4aW4gYXV0by13aWR0aCgkbWF4LCAkZWxlbTogbGkpIHtcbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCAkbWF4IHtcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCxcbiAgICAmOm50aC1sYXN0LWNoaWxkKCN7JGl9KTpmaXJzdC1jaGlsZCB+ICN7JGVsZW19IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKDEgLyAkaSk7XG4gICAgfVxuICB9XG59XG5cbi8vLyBSZW1vdmVzIHRoZSBmb2N1cyByaW5nIGFyb3VuZCBhbiBlbGVtZW50IHdoZW4gYSBtb3VzZSBpbnB1dCBpcyBkZXRlY3RlZC5cbkBtaXhpbiBkaXNhYmxlLW1vdXNlLW91dGxpbmUge1xuICBbZGF0YS13aGF0aW5wdXQ9J21vdXNlJ10gJiB7XG4gICAgb3V0bGluZTogMDtcbiAgfVxufVxuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCB2aXN1YWxseSBoaWRkZW4sIGJ1dCBzdGlsbCBhY2Nlc3NpYmxlIHRvIGtleWJvYXJkcyBhbmQgYXNzaXN0aXZlIGRldmljZXMuXG4vLy8gQGxpbmsgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eSBIaWRpbmcgQ29udGVudCBmb3IgQWNjZXNzaWJpbGl0eVxuLy8vIEBsaW5rIGh0dHA6Ly9odWdvZ2lyYXVkZWwuY29tLzIwMTYvMTAvMTMvY3NzLWhpZGUtYW5kLXNlZWsvXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRlbmZvcmNlIC0gSWYgYHRydWVgLCB1c2UgYCFpbXBvcnRhbnRgIG9uIGFwcGxpZWQgcHJvcGVydGllc1xuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlKFxuICAkZW5mb3JjZTogdHJ1ZVxuKSB7XG4gICRpbXBvcnRhbnQ6IGlmKCRlbmZvcmNlLCAnIWltcG9ydGFudCcsIG51bGwpO1xuXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZSAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogMXB4ICN7JGltcG9ydGFudH07XG4gIGhlaWdodDogMXB4ICN7JGltcG9ydGFudH07XG4gIHBhZGRpbmc6IDAgI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAjeyRpbXBvcnRhbnR9O1xuICBjbGlwOiByZWN0KDAsMCwwLDApICN7JGltcG9ydGFudH07XG4gIHdoaXRlLXNwYWNlOiBub3dyYXAgI3skaW1wb3J0YW50fTtcbiAgYm9yZGVyOiAwICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBSZXZlcnNlcyB0aGUgQ1NTIG91dHB1dCBjcmVhdGVkIGJ5IHRoZSBgZWxlbWVudC1pbnZpc2libGUoKWAgbWl4aW4uXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkZW5mb3JjZSAtIElmIGB0cnVlYCwgdXNlIGAhaW1wb3J0YW50YCBvbiBhcHBsaWVkIHByb3BlcnRpZXNcbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYoXG4gICRlbmZvcmNlOiB0cnVlXG4pIHtcbiAgJGltcG9ydGFudDogaWYoJGVuZm9yY2UsICchaW1wb3J0YW50JywgbnVsbCk7XG5cbiAgcG9zaXRpb246IHN0YXRpYyAjeyRpbXBvcnRhbnR9O1xuICB3aWR0aDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICBoZWlnaHQ6IGF1dG8gI3skaW1wb3J0YW50fTtcbiAgb3ZlcmZsb3c6IHZpc2libGUgI3skaW1wb3J0YW50fTtcbiAgY2xpcDogYXV0byAjeyRpbXBvcnRhbnR9O1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsICN7JGltcG9ydGFudH07XG59XG5cbi8vLyBWZXJ0aWNhbGx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIHZlcnRpY2FsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbn1cblxuLy8vIEhvcml6b250YWxseSBjZW50ZXJzIHRoZSBlbGVtZW50IGluc2lkZSBvZiBpdHMgZmlyc3Qgbm9uLXN0YXRpYyBwYXJlbnQsXG4vLy8gQGxpbmsgaHR0cDovL3d3dy5zaXRlcG9pbnQuY29tL2NlbnRlcmluZy13aXRoLXNhc3MvIENlbnRlcmluZyBXaXRoIFNhc3NcbkBtaXhpbiBob3Jpem9udGFsLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG59XG5cbi8vLyBBYnNvbHV0ZWx5IGNlbnRlcnMgdGhlIGVsZW1lbnQgaW5zaWRlIG9mIGl0cyBmaXJzdCBub24tc3RhdGljIHBhcmVudCxcbi8vLyBAbGluayBodHRwOi8vd3d3LnNpdGVwb2ludC5jb20vY2VudGVyaW5nLXdpdGgtc2Fzcy8gQ2VudGVyaW5nIFdpdGggU2Fzc1xuQG1peGluIGFic29sdXRlLWNlbnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiA1MCU7XG4gIGxlZnQ6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG59XG5cbi8vLyBJdGVyYXRlcyB0aHJvdWdoIGJyZWFrcG9pbnRzIGRlZmluZWQgaW4gYCRicmVha3BvaW50LWNsYXNzZXNgIGFuZCBwcmludHMgdGhlIENTUyBpbnNpZGUgdGhlIG1peGluIGF0IGVhY2ggYnJlYWtwb2ludCdzIG1lZGlhIHF1ZXJ5LiBVc2UgdGhpcyB3aXRoIHRoZSBncmlkLCBvciBhbnkgb3RoZXIgY29tcG9uZW50IHRoYXQgaGFzIHJlc3BvbnNpdmUgY2xhc3Nlcy5cbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHNtYWxsIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIHNraXAgdGhlIGBzbWFsbGAgYnJlYWtwb2ludC4gVXNlIHRoaXMgd2l0aCBjb21wb25lbnRzIHRoYXQgZG9uJ3QgcHJlZml4IGNsYXNzZXMgd2l0aCBgc21hbGwtYCwgb25seSBgbWVkaXVtLWAgYW5kIHVwLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzIFt0cnVlXSAtIElmIGBmYWxzZWAsIHRoZSBtaXhpbiB3aWxsIGl0ZXJhdGUgb3ZlciBicmVha3BvaW50cyB3aXRob3V0IGRvaW5nIHRoZSBtZWRpYSBxdWVyeSBpdHNlbGYuIFVzZWZ1bCBmb3IgbW9yZSBjb21wbGV4IG1lZGlhIHF1ZXJ5IGdlbmVyYXRpb24gYXMgaW4gdGhlIG1hcmdpbiBncmlkLlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQoXG4gICRzbWFsbDogdHJ1ZSxcbiAgJGF1dG8taW5zZXJ0LWJyZWFrcG9pbnRzOiB0cnVlXG4pIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbihhdXRvLCAtemYtYm9vbCgkc21hbGwpLCAtemYtYm9vbCgkYXV0by1pbnNlcnQtYnJlYWtwb2ludHMpKSB7XG4gICAgQGNvbnRlbnRcbiAgfTtcbn1cblxuLy8vIEl0ZXJhdGVzIHdpdGggYEBjb250ZW50YCB0aHJvdWdoIHRoZSBnaXZlbiBsaXN0IG9mIGJyZWFrcG9pbnRzIGAkYnJlYWtwb2ludHNgLlxuLy8vXG4vLy8gQGFjY2VzcyBwcml2YXRlXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TGlzdH0gJGJyZWFrcG9pbnRzIFthdXRvXSAtIEJyZWFrcG9pbnRzIHRvIGl0ZXJhdGVzIG9uLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuXG4vLy8gQHBhcmFtIHtCb29sZWFufE51bGx9ICR6ZXJvLWJyZWFrcG9pbnQgW251bGxdIC0gV2hldGhlciB0aGUgemVyby1icmVha3BvaW50IChvZnRlbiBgc21hbGxgKSBtdXN0IGJlIGluY2x1ZGVkLiBJZiBgdHJ1ZWAsIGl0IHdpbGwgYWx3YXlzIGJlIGFkZGVkIHRvIHRoZSBsaXN0IGlmIG5vdCBhbHJlYWR5IHRoZXJlLiBJZiBgZmFsc2VgLCBpdCB3aWxsIGFsd2F5cyBiZSByZW1vdmVkLiBEb2VzIG5vdGhpbmcgYnkgZGVmYXVsdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW58S2V5d29yZH0gJG1lZGlhLXF1ZXJpZXMgW3RydWVdIC0gV2hldGhlciBtZWRpYS1xdWVyaWVzIG11c3QgYmUgZ2VuZXJhdGVkLiBJZiBgZm9yLWxpc3RzYCwgb25seSBnZW5lcmF0ZSBtZWRpYS1xdWVyaWVzIHdoZW4gYCRicmVha3BvaW50c2AgaXMgYSBsaXN0LlxuQG1peGluIC16Zi1lYWNoLWJyZWFrcG9pbnQtaW4oXG4gICRicmVha3BvaW50czogYXV0byxcbiAgJHplcm8tYnJlYWtwb2ludDogbnVsbCxcbiAgJG1lZGlhLXF1ZXJpZXM6IHRydWVcbikge1xuICAkLWxpc3Q6ICgpO1xuICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogdHJ1ZTtcblxuICAvLyBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBicmVha3BvaW50KHMpIHRvIGl0ZXJhdGUgb24uXG4gIEBpZiAkYnJlYWtwb2ludHMgPT0gYXV0byB7XG4gICAgJC1saXN0OiAkYnJlYWtwb2ludC1jbGFzc2VzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnbGlzdCcge1xuICAgICQtbGlzdDogJGJyZWFrcG9pbnRzO1xuICB9XG4gIEBlbHNlIGlmIHR5cGUtb2YoJGJyZWFrcG9pbnRzKSA9PSAnc3RyaW5nJyB7XG4gICAgJC1saXN0OiAoJGJyZWFrcG9pbnRzKTtcbiAgICAkLWJyZWFrcG9pbnRzLWlzLWEtbGlzdDogZmFsc2U7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcIiRicmVha3BvaW50c1wiIGluIFwiLXpmLWVhY2gtYnJlYWtwb2ludC1pbigpXCIuIEdvdCBcIiN7JGJyZWFrcG9pbnRzfVwiICgje3R5cGUtb2YoJGJyZWFrcG9pbnRzKX0pLiBFeHBlY3RlZCBhIGJyZWFrcG9pbnQgbmFtZSwgYSBsaXN0IG9mIGJyZWFrcG9pbnRzIG9yIFwiYXV0b1wiJztcbiAgfVxuXG4gIC8vIEFkZCBvciByZW1vdmUgdGhlIHplcm8gYnJlYWtwb2ludCBhY2NvcmRpbmcgdG8gYCR6ZXJvLWJyZWFrcG9pbnRgXG4gIEBpZiAkemVyby1icmVha3BvaW50ID09IHRydWUge1xuICAgICQtbGlzdDogam9pbigoJC16Zi16ZXJvLWJyZWFrcG9pbnQpLCBzbC1yZW1vdmUoJC1saXN0LCAkLXpmLXplcm8tYnJlYWtwb2ludCkpO1xuICB9XG4gIEBlbHNlIGlmICR6ZXJvLWJyZWFrcG9pbnQgPT0gZmFsc2Uge1xuICAgICQtbGlzdDogc2wtcmVtb3ZlKCQtbGlzdCwgJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICB9XG5cbiAgLy8gSXRlcmF0ZSBvbiBicmVha3BvaW50KHMpXG4gIEBlYWNoICRicCBpbiAkLWxpc3Qge1xuICAgICRvbGQtemYtc2l6ZTogbnVsbDtcbiAgICBAaWYgZ2xvYmFsLXZhcmlhYmxlLWV4aXN0cygtemYtc2l6ZSkge1xuICAgICAgJG9sZC16Zi1zaXplOiAkLXpmLXNpemU7XG4gICAgfVxuICAgICQtemYtc2l6ZTogJGJwICFnbG9iYWw7XG5cbiAgICBAaWYgKCRtZWRpYS1xdWVyaWVzID09IHRydWVcbiAgICAgIG9yICgkbWVkaWEtcXVlcmllcyA9PSAnZm9yLWxpc3RzJyBhbmQgJC1icmVha3BvaW50cy1pcy1hLWxpc3QpKSB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRicCkge1xuICAgICAgICBAY29udGVudDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQGNvbnRlbnQ7XG4gICAgfVxuXG4gICAgJC16Zi1zaXplOiAkb2xkLXpmLXNpemUgIWdsb2JhbDtcbiAgfVxufVxuXG4vLy8gR2VuZXJhdGUgdGhlIGBAY29udGVudGAgcGFzc2VkIHRvIHRoZSBtaXhpbiB3aXRoIGEgdmFsdWUgYCQtemYtYnAtdmFsdWVgIHJlbGF0ZWQgdG8gYSBicmVha3BvaW50LCBkZXBlbmRpbmcgb24gdGhlIGAkbmFtZWAgcGFyYW1ldGVyOlxuLy8vIC0gRm9yIGEgc2luZ2xlIHZhbHVlLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhpcyB2YWx1ZS5cbi8vLyAtIEZvciBhIGJyZWFrcG9pbnQgbmFtZSwgYCQtemYtYnAtdmFsdWVgIGlzIHRoZSBjb3JyZXNwb25kaW5nIGJyZWFrcG9pbnQgdmFsdWUgaW4gYCRtYXBgLlxuLy8vIC0gRm9yIFwiYXV0b1wiLCBgJC16Zi1icC12YWx1ZWAgaXMgdGhlIGNvcnJlc3BvbmRpbmcgYnJlYWtwb2ludCB2YWx1ZSBpbiBgJG1hcGAgYW5kIGlzIHBhc3NlZCB0byBgQGNvbnRlbnRgLCB3aGljaCBpcyBtYWRlIHJlc3BvbnNpdmUgZm9yIGVhY2ggYnJlYWtwb2ludCBvZiBgJG1hcGAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8QXJyYXl8S2V5d29yZH0gJG5hbWUgW2F1dG9dIC0gU2luZ2xlIHZhbHVlLCBicmVha3BvaW50IG5hbWUsIG9yIGxpc3Qgb2YgYnJlYWtwb2ludCBuYW1lcyB0byB1c2UuIFwiYXV0b1wiIGJ5IGRlZmF1bHQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkbWFwIC0gTWFwIG9mIGJyZWFrcG9pbnRzIGFuZCB2YWx1ZXMgb3Igc2luZ2xlIHZhbHVlIHRvIHVzZS5cbkBtaXhpbiAtemYtYnJlYWtwb2ludC12YWx1ZShcbiAgJG5hbWU6IGF1dG8sXG4gICRtYXA6IG51bGxcbikge1xuICBAaWYgJG5hbWUgPT0gYXV0byBhbmQgdHlwZS1vZigkbWFwKSA9PSAnbWFwJyB7XG4gICAgLy8gXCJhdXRvXCJcbiAgICBAZWFjaCAkaywgJHYgaW4gJG1hcCB7XG4gICAgICBAaW5jbHVkZSBicmVha3BvaW50KCRrKSB7XG4gICAgICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKCR2LCAkbWFwKSB7XG4gICAgICAgICAgQGNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgIC8vIGJyZWFrcG9pbnQgbmFtZVxuICAgIEBpZiB0eXBlLW9mKCRuYW1lKSA9PSAnc3RyaW5nJyB7XG4gICAgICAkYnAtdmFsdWU6IC16Zi1nZXQtYnAtdmFsKCRtYXAsICRuYW1lKTtcbiAgICAgIEBpZiAkYnAtdmFsdWUgIT0gbnVsbCB7XG4gICAgICAgICRuYW1lOiAkYnAtdmFsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gYnJlYWtwb2ludCB2YWx1ZVxuICAgICQtemYtYnAtdmFsdWU6ICRuYW1lICFnbG9iYWw7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gRm9udCBjb2xvciBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHBsYWNlaG9sZGVyIHRleHQgd2l0aGluIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtcGxhY2Vob2xkZXItY29sb3I6ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgZmFtaWx5IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEZvbnRcbiRpbnB1dC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGlucHV0LWxpbmUtaGVpZ2h0OiAkZ2xvYmFsLWxpbmVoZWlnaHQgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBmb2N1c2VkIG9mIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtYmFja2dyb3VuZC1mb2N1czogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBkaXNhYmxlZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LWJhY2tncm91bmQtZGlzYWJsZWQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGZvY3VzZWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1ib3JkZXItZm9jdXM6IDFweCBzb2xpZCAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBvZiB0ZXh0IGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICFkZWZhdWx0O1xuXG4vLy8gQm94IHNoYWRvdyBpbnNpZGUgdGV4dCBpbnB1dHMgd2hlbiBub3QgZm9jdXNlZC5cbi8vLyBAdHlwZSBTaGFkb3dcbiRpbnB1dC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKCRibGFjaywgMC4xKSAhZGVmYXVsdDtcblxuLy8vIEJveCBzaGFkb3cgb3V0c2lkZSB0ZXh0IGlucHV0cyB3aGVuIGZvY3VzZWQuXG4vLy8gQHR5cGUgU2hhZG93XG4kaW5wdXQtc2hhZG93LWZvY3VzOiAwIDAgNXB4ICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIEN1cnNvciB0byB1c2Ugd2hlbiBob3ZlcmluZyBvdmVyIGEgZGlzYWJsZWQgdGV4dCBpbnB1dC5cbi8vLyBAdHlwZSBDdXJzb3JcbiRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ6IG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG4vLy8gUHJvcGVydGllcyB0byB0cmFuc2l0aW9uIG9uIHRleHQgaW5wdXRzLlxuLy8vIEB0eXBlIFRyYW5zaXRpb25cbiRpbnB1dC10cmFuc2l0aW9uOiBib3gtc2hhZG93IDAuNXMsIGJvcmRlci1jb2xvciAwLjI1cyBlYXNlLWluLW91dCAhZGVmYXVsdDtcblxuLy8vIEVuYWJsZXMgdGhlIHVwL2Rvd24gYnV0dG9ucyB0aGF0IENocm9tZSBhbmQgRmlyZWZveCBhZGQgdG8gYDxpbnB1dCB0eXBlPSdudW1iZXInPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQm9vbGVhblxuJGlucHV0LW51bWJlci1zcGlubmVyczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIFJhZGl1cyBmb3IgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQm9yZGVyXG4kaW5wdXQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGZvcm0gYnV0dG9ucywgZGVmYXVsdGVkIHRvIGdsb2JhbC1yYWRpdXMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kZm9ybS1idXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tZWxlbWVudCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBkaXNwbGF5OiBibG9jaztcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogJGhlaWdodDtcbiAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZztcbiAgcGFkZGluZzogJGlucHV0LXBhZGRpbmc7XG5cbiAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtcmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZDtcbiAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdztcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmIGhhcy12YWx1ZSgkaW5wdXQtdHJhbnNpdGlvbikge1xuICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICB9XG5cbiAgLy8gRm9jdXMgc3RhdGVcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXI6ICRpbnB1dC1ib3JkZXItZm9jdXM7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJhY2tncm91bmQtZm9jdXM7XG4gICAgYm94LXNoYWRvdzogJGlucHV0LXNoYWRvdy1mb2N1cztcblxuICAgIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICAgIHRyYW5zaXRpb246ICRpbnB1dC10cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXRleHQge1xuICAvLyBUZXh0IGlucHV0c1xuICAje3RleHQtaW5wdXRzKCl9LFxuICB0ZXh0YXJlYSB7XG4gICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cblxuICAvLyBUZXh0IGFyZWFzXG4gIHRleHRhcmVhIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAmW3Jvd3NdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICB9XG4gIH1cblxuICBpbnB1dCxcbiAgdGV4dGFyZWEge1xuICAgIC8vIERpc2FibGVkL3JlYWRvbmx5IHN0YXRlXG4gICAgJjpkaXNhYmxlZCxcbiAgICAmW3JlYWRvbmx5XSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICAgIGN1cnNvcjogJGlucHV0LWN1cnNvci1kaXNhYmxlZDtcbiAgICB9XG4gIH1cblxuICAvLyBSZXNldCBzdHlsZXMgb24gYnV0dG9uLWxpa2UgaW5wdXRzXG4gIFt0eXBlPSdzdWJtaXQnXSxcbiAgW3R5cGU9J2J1dHRvbiddIHtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6ICRmb3JtLWJ1dHRvbi1yYWRpdXM7XG4gIH1cblxuICAvLyBSZXNldCBOb3JtYWxpemUgc2V0dGluZyBjb250ZW50LWJveCB0byBzZWFyY2ggZWxlbWVudHNcbiAgaW5wdXRbdHlwZT0nc2VhcmNoJ10geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICB9XG5cbiAgLy8gTnVtYmVyIGlucHV0IHN0eWxlc1xuICBbdHlwZT0nbnVtYmVyJ10ge1xuICAgIEBpZiBub3QgJGlucHV0LW51bWJlci1zcGlubmVycyB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IHRleHRmaWVsZDsgLy8gc2Fzcy1saW50OmRpc2FibGUtbGluZSBuby12ZW5kb3ItcHJlZml4ZXNcblxuICAgICAgJjo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICAgICY6Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7IC8vIHNhc3MtbGludDpkaXNhYmxlLWxpbmUgbm8tdmVuZG9yLXByZWZpeGVzXG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQbGFjZWhvbGRlciB0ZXh0XG4gIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItY29sb3I7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmdW5jdGlvbnNcbi8vLy9cblxuJGdsb2JhbC1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vLyBSZW1vdmVzIHRoZSB1bml0IChlLmcuIHB4LCBlbSwgcmVtKSBmcm9tIGEgdmFsdWUsIHJldHVybmluZyB0aGUgbnVtYmVyIG9ubHkuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG51bSAtIE51bWJlciB0byBzdHJpcCB1bml0IGZyb20uXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgc2FtZSBudW1iZXIsIHNhbnMgdW5pdC5cbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vLyBDb252ZXJ0cyBvbmUgb3IgbW9yZSBwaXhlbCB2YWx1ZXMgaW50byBtYXRjaGluZyByZW0gdmFsdWVzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHZhbHVlcyAtIE9uZSBvciBtb3JlIHZhbHVlcyB0byBjb252ZXJ0LiBCZSBzdXJlIHRvIHNlcGFyYXRlIHRoZW0gd2l0aCBzcGFjZXMgYW5kIG5vdCBjb21tYXMuIElmIHlvdSBuZWVkIHRvIGNvbnZlcnQgYSBjb21tYS1zZXBhcmF0ZWQgbGlzdCwgd3JhcCB0aGUgbGlzdCBpbiBwYXJlbnRoZXNlcy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgW251bGxdIC0gVGhlIGJhc2UgdmFsdWUgdG8gdXNlIHdoZW4gY2FsY3VsYXRpbmcgdGhlIGByZW1gLiBJZiB5b3UncmUgdXNpbmcgRm91bmRhdGlvbiBvdXQgb2YgdGhlIGJveCwgdGhpcyBpcyAxNnB4LiBJZiB0aGlzIHBhcmFtZXRlciBpcyBgbnVsbGAsIHRoZSBmdW5jdGlvbiB3aWxsIHJlZmVyZW5jZSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZSBhcyB0aGUgYmFzZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBBIGxpc3Qgb2YgY29udmVydGVkIHZhbHVlcy5cbkBmdW5jdGlvbiByZW0tY2FsYygkdmFsdWVzLCAkYmFzZTogbnVsbCkge1xuICAkcmVtLXZhbHVlczogKCk7XG4gICRjb3VudDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIC8vIElmIG5vIGJhc2UgaXMgZGVmaW5lZCwgZGVmZXIgdG8gdGhlIGdsb2JhbCBmb250IHNpemVcbiAgQGlmICRiYXNlID09IG51bGwge1xuICAgICRiYXNlOiAkZ2xvYmFsLWZvbnQtc2l6ZTtcbiAgfVxuXG4gIC8vIElmIHRoZSBiYXNlIGZvbnQgc2l6ZSBpcyBhICUsIHRoZW4gbXVsdGlwbHkgaXQgYnkgMTZweFxuICAvLyBUaGlzIGlzIGJlY2F1c2UgMTAwJSBmb250IHNpemUgPSAxNnB4IGluIG1vc3QgYWxsIGJyb3dzZXJzXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICAvLyBVc2luZyByZW0gYXMgYmFzZSBhbGxvd3MgY29ycmVjdCBzY2FsaW5nXG4gIEBpZiB1bml0KCRiYXNlKSA9PSAncmVtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIEBpZiAkY291bnQgPT0gMSB7XG4gICAgQHJldHVybiAtemYtdG8tcmVtKCR2YWx1ZXMsICRiYXNlKTtcbiAgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGNvdW50IHtcbiAgICAkcmVtLXZhbHVlczogYXBwZW5kKCRyZW0tdmFsdWVzLCAtemYtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlKSk7XG4gIH1cblxuICBAcmV0dXJuICRyZW0tdmFsdWVzO1xufVxuXG4vLyBDb252ZXJ0cyBhIHVuaXRsZXNzLCBwaXhlbCwgb3IgcmVtIHZhbHVlIHRvIGVtLCBmb3IgdXNlIGluIGJyZWFrcG9pbnRzLlxuQGZ1bmN0aW9uIC16Zi1icC10by1lbSgkdmFsdWUpIHtcbiAgLy8gUGl4ZWwgYW5kIHVuaXRsZXNzIHZhbHVlcyBhcmUgY29udmVydGVkIHRvIHJlbXNcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIG9yIHVuaXRsZXNzKCR2YWx1ZSkge1xuICAgICR2YWx1ZTogcmVtLWNhbGMoJHZhbHVlLCAkYmFzZTogMTZweCk7XG4gIH1cblxuICAvLyBUaGVuIHRoZSB2YWx1ZSBpcyBjb252ZXJ0ZWQgdG8gZW1zXG4gIEByZXR1cm4gc3RyaXAtdW5pdCgkdmFsdWUpICogMWVtO1xufVxuXG4vLy8gQ29udmVydHMgYSBwaXhlbCB2YWx1ZSB0byBtYXRjaGluZyByZW0gdmFsdWUuICpBbnkqIHZhbHVlIHBhc3NlZCwgcmVnYXJkbGVzcyBvZiB1bml0LCBpcyBhc3N1bWVkIHRvIGJlIGEgcGl4ZWwgdmFsdWUuIEJ5IGRlZmF1bHQsIHRoZSBiYXNlIHBpeGVsIHZhbHVlIHVzZWQgdG8gY2FsY3VsYXRlIHRoZSByZW0gdmFsdWUgaXMgdGFrZW4gZnJvbSB0aGUgYCRnbG9iYWwtZm9udC1zaXplYCB2YXJpYWJsZS5cbi8vLyBAYWNjZXNzIHByaXZhdGVcbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkdmFsdWUgLSBQaXhlbCB2YWx1ZSB0byBjb252ZXJ0LlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSBbbnVsbF0gLSBCYXNlIGZvciBwaXhlbCBjb252ZXJzaW9uLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gQSBudW1iZXIgaW4gcmVtcywgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgZ2l2ZW4gdmFsdWUgYW5kIHRoZSBiYXNlIHBpeGVsIHZhbHVlLiByZW0gdmFsdWVzIGFyZSBwYXNzZWQgdGhyb3VnaCBhcyBpcy5cbkBmdW5jdGlvbiAtemYtdG8tcmVtKCR2YWx1ZSwgJGJhc2U6IG51bGwpIHtcbiAgLy8gQ2hlY2sgaWYgdGhlIHZhbHVlIGlzIGEgbnVtYmVyXG4gIEBpZiB0eXBlLW9mKCR2YWx1ZSkgIT0gJ251bWJlcicge1xuICAgIEB3YXJuIGluc3BlY3QoJHZhbHVlKSArICcgd2FzIHBhc3NlZCB0byByZW0tY2FsYygpLCB3aGljaCBpcyBub3QgYSBudW1iZXIuJztcbiAgICBAcmV0dXJuICR2YWx1ZTtcbiAgfVxuXG4gIC8vIFRyYW5zZm9ybSBlbSBpbnRvIHJlbSBpZiBzb21lb25lIGhhbmRzIG92ZXIgJ2VtJ3NcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAnZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAqIDFyZW07XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgcmVtIGlmIHVuaXRzIGZvciAkdmFsdWUgaXMgbm90IHJlbSBvciBlbVxuICBAaWYgdW5pdCgkdmFsdWUpICE9ICdyZW0nIHtcbiAgICAkdmFsdWU6IHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpICogMXJlbTtcbiAgfVxuXG4gIC8vIFR1cm4gMHJlbSBpbnRvIDBcbiAgQGlmICR2YWx1ZSA9PSAwcmVtIHtcbiAgICAkdmFsdWU6IDA7XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuLy8vIENvbnZlcnRzIGEgcGl4ZWwsIHBlcmNlbnRhZ2UsIHJlbSBvciBlbSB2YWx1ZSB0byBhIHVuaXRsZXNzIHZhbHVlIGJhc2VkIG9uIGEgZ2l2ZW4gZm9udCBzaXplLiBJZGVhbCBmb3Igd29ya2luZyBvdXQgdW5pdGxlc3MgbGluZSBoZWlnaHRzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR2YWx1ZSAtIFZhbHVlIHRvIGNvbnZlcnQgdG8gYSB1bml0bGVzcyBsaW5lIGhlaWdodFxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYmFzZSAtIFRoZSBmb250IHNpemUgdG8gdXNlIHRvIHdvcmsgb3V0IHRoZSBsaW5lIGhlaWdodCAtIGRlZmF1bHRzIHRvICRnbG9iYWwtZm9udC1zaXplXG4vLy9cbi8vLyBAcmV0dXJuIHtOdW1iZXJ9IC0gVW5pdGxlc3MgbnVtYmVyXG5AZnVuY3Rpb24gdW5pdGxlc3MtY2FsYygkdmFsdWUsICRiYXNlOiBudWxsKSB7XG5cbiAgLy8gSWYgbm8gYmFzZSBpcyBkZWZpbmVkLCBkZWZlciB0byB0aGUgZ2xvYmFsIGZvbnQgc2l6ZVxuICBAaWYgJGJhc2UgPT0gbnVsbCB7XG4gICAgJGJhc2U6ICRnbG9iYWwtZm9udC1zaXplO1xuICB9XG5cbiAgLy8gRmlyc3QsIGxldHMgY29udmVydCBvdXIgJGJhc2UgdG8gcGl4ZWxzXG5cbiAgLy8gSWYgdGhlIGJhc2UgZm9udCBzaXplIGlzIGEgJSwgdGhlbiBtdWx0aXBseSBpdCBieSAxNnB4XG4gIEBpZiB1bml0KCRiYXNlKSA9PSAnJScge1xuICAgICRiYXNlOiAoJGJhc2UgLyAxMDAlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ3JlbScge1xuICAgICRiYXNlOiBzdHJpcC11bml0KCRiYXNlKSAqIDE2cHg7XG4gIH1cblxuICBAaWYgdW5pdCgkYmFzZSkgPT0gJ2VtJyB7XG4gICAgJGJhc2U6IHN0cmlwLXVuaXQoJGJhc2UpICogMTZweDtcbiAgfVxuXG4gIC8vIE5vdyBsZXQncyBjb252ZXJ0IG91ciB2YWx1ZSB0byBwaXhlbHMgdG9vXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJyUnIHtcbiAgICAkdmFsdWU6ICgkdmFsdWUgLyAxMDAlKSAqICRiYXNlO1xuICB9XG5cbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncmVtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIEBpZiB1bml0KCR2YWx1ZSkgPT0gJ2VtJyB7XG4gICAgJHZhbHVlOiBzdHJpcC11bml0KCR2YWx1ZSkgKiAkYmFzZTtcbiAgfVxuXG4gIC8vICdweCdcbiAgQGlmIHVuaXQoJHZhbHVlKSA9PSAncHgnIHtcbiAgICBAcmV0dXJuIHN0cmlwLXVuaXQoJHZhbHVlKSAvIHN0cmlwLXVuaXQoJGJhc2UpO1xuICB9XG5cbiAgLy8gYXNzdW1lIHRoYXQgbGluZS1oZWlnaHRzIGdyZWF0ZXIgdGhhbiAxMCBhcmUgbWVhbnQgdG8gYmUgYWJzb2x1dGUgaW4gJ3B4J1xuICBAaWYgdW5pdGxlc3MoJHZhbHVlKSBhbmQgKCR2YWx1ZSA+IDEwKSB7XG4gICAgQHJldHVybiAkdmFsdWUgLyBzdHJpcC11bml0KCRiYXNlKTtcbiAgfVxuXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tY2hlY2tib3gge1xuICBbdHlwZT0nZmlsZSddLFxuICBbdHlwZT0nY2hlY2tib3gnXSxcbiAgW3R5cGU9J3JhZGlvJ10ge1xuICAgIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIH1cblxuICAvLyBTdHlsZXMgZm9yIGlucHV0L2xhYmVsIHNpYmxpbmdzXG4gIFt0eXBlPSdjaGVja2JveCddICsgbGFiZWwsXG4gIFt0eXBlPSdyYWRpbyddICsgbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkZm9ybS1zcGFjaW5nICogMC41O1xuICAgIG1hcmdpbi0jeyRnbG9iYWwtcmlnaHR9OiAkZm9ybS1zcGFjaW5nO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAmW2Zvcl0ge1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIH1cbiAgfVxuXG4gIC8vIFN0eWxlcyBmb3IgaW5wdXRzIGluc2lkZSBsYWJlbHNcbiAgbGFiZWwgPiBbdHlwZT0nY2hlY2tib3gnXSxcbiAgbGFiZWwgPiBbdHlwZT0ncmFkaW8nXSB7XG4gICAgbWFyZ2luLSN7JGdsb2JhbC1yaWdodH06ICRmb3JtLXNwYWNpbmcgKiAwLjU7XG4gIH1cblxuICAvLyBOb3JtYWxpemUgZmlsZSBpbnB1dCB3aWR0aFxuICBbdHlwZT0nZmlsZSddIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZvcm1zXG4vLy8vXG5cbi8vLyBDb2xvciBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRmb3JtLWxhYmVsLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGZvcm0gbGFiZWxzLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHdlaWdodCBmb3IgZm9ybSBsYWJlbHMuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIExpbmUgaGVpZ2h0IGZvciBmb3JtIGxhYmVscy4gVGhlIGhpZ2hlciB0aGUgbnVtYmVyLCB0aGUgbW9yZSBzcGFjZSBiZXR3ZWVuIHRoZSBsYWJlbCBhbmQgaXRzIGlucHV0IGZpZWxkLlxuLy8vIEB0eXBlIE51bWJlclxuJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuOCAhZGVmYXVsdDtcblxuQG1peGluIGZvcm0tbGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuXG4gIGZvbnQtc2l6ZTogJGZvcm0tbGFiZWwtZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkZm9ybS1sYWJlbC1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yO1xufVxuXG5AbWl4aW4gZm9ybS1sYWJlbC1taWRkbGUge1xuICAkaW5wdXQtYm9yZGVyLXdpZHRoOiBnZXQtYm9yZGVyLXZhbHVlKCRpbnB1dC1ib3JkZXIsIHdpZHRoKTtcblxuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIgKyByZW0tY2FsYygkaW5wdXQtYm9yZGVyLXdpZHRoKSkgMDtcbn1cblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1sYWJlbCB7XG4gIGxhYmVsIHtcbiAgICBAaW5jbHVkZSBmb3JtLWxhYmVsO1xuXG4gICAgJi5taWRkbGUge1xuICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1taWRkbGU7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgY29sb3IgZm9yIGhlbHAgdGV4dC5cbi8vLyBAdHlwZSBDb2xvclxuJGhlbHB0ZXh0LWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgaGVscCB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGhlbHB0ZXh0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHN0eWxlIGZvciBoZWxwIHRleHQuXG4vLy8gQHR5cGUgS2V5d29yZFxuJGhlbHB0ZXh0LWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1oZWxwdGV4dCB7XG4gIC5oZWxwLXRleHQge1xuICAgICRtYXJnaW4tdG9wOiAoJGZvcm0tc3BhY2luZyAqIDAuNSkgKiAtMTtcblxuICAgIG1hcmdpbi10b3A6ICRtYXJnaW4tdG9wO1xuICAgIGZvbnQtc2l6ZTogJGhlbHB0ZXh0LWZvbnQtc2l6ZTtcbiAgICBmb250LXN0eWxlOiAkaGVscHRleHQtZm9udC1zdHlsZTtcbiAgICBjb2xvcjogJGhlbHB0ZXh0LWNvbG9yO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIENvbG9yIG9mIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBDb2xvclxuJGlucHV0LXByZWZpeC1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvZiBsYWJlbHMgcHJlZml4ZWQgdG8gYW4gaW5wdXQuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1wcmVmaXgtYmFja2dyb3VuZDogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgYXJvdW5kIGxhYmVscyBwcmVmaXhlZCB0byBhbiBpbnB1dC5cbi8vLyBAdHlwZSBCb3JkZXJcbiRpbnB1dC1wcmVmaXgtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gTGVmdC9yaWdodCBwYWRkaW5nIG9mIGFuIHByZS9wb3N0Zml4ZWQgaW5wdXQgbGFiZWxcbiRpbnB1dC1wcmVmaXgtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tZm9ybS1wcmVwb3N0Zml4IHtcbiAgJGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKiAkaW5wdXQtbGluZS1oZWlnaHQpICsgKGdldC1zaWRlKCRpbnB1dC1wYWRkaW5nLCAndG9wJykgKyBnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ2JvdHRvbScpKSAtIHJlbS1jYWxjKDEpO1xuXG4gIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogaWYoJGdsb2JhbC1mbGV4Ym94LCBmbGV4LCB0YWJsZSk7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZztcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgfVxuXG4gICAgPiA6Zmlyc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDAsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gOmxhc3QtY2hpbGQge1xuICAgICAgJiwgJi5pbnB1dC1ncm91cC1idXR0b24gPiAqIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogaWYoJGdsb2JhbC10ZXh0LWRpcmVjdGlvbiA9PSBydGwsICRpbnB1dC1yYWRpdXMgMCAwICRpbnB1dC1yYWRpdXMsIDAgJGlucHV0LXJhZGl1cyAkaW5wdXQtcmFkaXVzIDApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICVpbnB1dC1ncm91cC1jaGlsZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgbm90ICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG4gIH1cblxuICAuaW5wdXQtZ3JvdXAtbGFiZWwge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmc6IDAgJGlucHV0LXByZWZpeC1wYWRkaW5nO1xuICAgIGJvcmRlcjogJGlucHV0LXByZWZpeC1ib3JkZXI7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LXByZWZpeC1iYWNrZ3JvdW5kO1xuXG4gICAgY29sb3I6ICRpbnB1dC1wcmVmaXgtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cbiAgICBAaWYgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4OiAwIDAgYXV0bztcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIHdpZHRoOiAxJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC1wcmVmaXgtYm9yZGVyKSB7XG4gICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLSN7JGdsb2JhbC1yaWdodH06IDA7XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmlucHV0LWdyb3VwLWZpZWxkIHtcbiAgICBAZXh0ZW5kICVpbnB1dC1ncm91cC1jaGlsZDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgQGlmICRnbG9iYWwtZmxleGJveCB7XG4gICAgICBmbGV4OiAxIDEgMHB4OyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIHplcm8tdW5pdFxuICAgICAgbWluLXdpZHRoOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5pbnB1dC1ncm91cC1idXR0b24ge1xuICAgIEBleHRlbmQgJWlucHV0LWdyb3VwLWNoaWxkO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXg6IDAgMCBhdXRvO1xuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICB3aWR0aDogMSU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgYSxcbiAgICBpbnB1dCxcbiAgICBidXR0b24sXG4gICAgbGFiZWwge1xuICAgICAgQGV4dGVuZCAlaW5wdXQtZ3JvdXAtY2hpbGQ7XG5cbiAgICAgIEBpZiAkZ2xvYmFsLWZsZXhib3gge1xuICAgICAgICBhbGlnbi1zZWxmOiBzdHJldGNoO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGhlaWdodDogJGhlaWdodDtcbiAgICAgIH1cbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgLy8gU3BlY2lmaWNpdHkgYnVtcCBuZWVkZWQgdG8gcHJldmVudCBvdmVycmlkZSBieSBidXR0b25zXG4gIEBpZiBub3QgJGdsb2JhbC1mbGV4Ym94IHtcbiAgICAuaW5wdXQtZ3JvdXAge1xuICAgICAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZm9ybXNcbi8vLy9cblxuLy8vIERlZmF1bHQgYm9yZGVyIGFyb3VuZCBjdXN0b20gZmllbGRzZXRzLlxuLy8vIEB0eXBlIEJvcmRlclxuJGZpZWxkc2V0LWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBpbnNpZGUgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBhcm91bmQgY3VzdG9tIGZpZWxkc2V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGJldHdlZW4gdGhlIGxlZ2VuZCB0ZXh0IGFuZCBmaWVsZHNldCBib3JkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVnZW5kLXBhZGRpbmc6IHJlbS1jYWxjKDAgMykgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmaWVsZHNldCB7XG4gIG1hcmdpbjogJGZpZWxkc2V0LW1hcmdpbjtcbiAgcGFkZGluZzogJGZpZWxkc2V0LXBhZGRpbmc7XG4gIGJvcmRlcjogJGZpZWxkc2V0LWJvcmRlcjtcblxuICBsZWdlbmQge1xuICAgIC8vIENvdmVycyB1cCB0aGUgZmllbGRzZXQncyBib3JkZXIgdG8gY3JlYXRlIGFydGlmaWNpYWwgcGFkZGluZ1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiByZW0tY2FsYygtMyk7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZvcm0tZmllbGRzZXQge1xuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYm9yZGVyOiAwO1xuICB9XG5cbiAgbGVnZW5kIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZyAqIDAuNTtcbiAgfVxuXG4gIC5maWVsZHNldCB7XG4gICAgQGluY2x1ZGUgZmllbGRzZXQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBmb3Jtc1xuLy8vL1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIHRoZSBkcm9wZG93biB0cmlhbmdsZSBpbnNpZGUgc2VsZWN0IG1lbnVzLiBTZXQgdG8gYHRyYW5zcGFyZW50YCB0byByZW1vdmUgaXQgZW50aXJlbHkuXG4vLy8gQHR5cGUgQ29sb3JcbiRzZWxlY3QtdHJpYW5nbGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHJhZGl1cyBmb3Igc2VsZWN0IG1lbnVzLlxuLy8vIEB0eXBlIENvbG9yXG4kc2VsZWN0LXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbkBtaXhpbiBmb3JtLXNlbGVjdCB7XG4gICRoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICogdW5pdGxlc3MtY2FsYygkaW5wdXQtbGluZS1oZWlnaHQpKSArIChnZXQtc2lkZSgkaW5wdXQtcGFkZGluZywgJ3RvcCcpICsgZ2V0LXNpZGUoJGlucHV0LXBhZGRpbmcsICdib3R0b20nKSkgLSByZW0tY2FsYygxKTtcblxuICBoZWlnaHQ6ICRoZWlnaHQ7XG4gIG1hcmdpbjogMCAwICRmb3JtLXNwYWNpbmc7XG4gIHBhZGRpbmc6ICRpbnB1dC1wYWRkaW5nO1xuXG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogJGlucHV0LWJvcmRlcjtcbiAgYm9yZGVyLXJhZGl1czogJHNlbGVjdC1yYWRpdXM7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmFja2dyb3VuZDtcblxuICBmb250LWZhbWlseTogJGlucHV0LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRpbnB1dC1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkaW5wdXQtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkaW5wdXQtbGluZS1oZWlnaHQ7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG5cbiAgQGlmICRzZWxlY3QtdHJpYW5nbGUtY29sb3IgIT0gdHJhbnNwYXJlbnQge1xuICAgIEBpbmNsdWRlIGJhY2tncm91bmQtdHJpYW5nbGUoJHNlbGVjdC10cmlhbmdsZS1jb2xvcik7XG4gICAgYmFja2dyb3VuZC1vcmlnaW46IGNvbnRlbnQtYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246ICRnbG9iYWwtcmlnaHQgKC0kZm9ybS1zcGFjaW5nKSBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDlweCA2cHg7XG5cbiAgICBwYWRkaW5nLSN7JGdsb2JhbC1yaWdodH06ICgkZm9ybS1zcGFjaW5nICogMS41KTtcbiAgfVxuXG4gIEBpZiBoYXMtdmFsdWUoJGlucHV0LXRyYW5zaXRpb24pIHtcbiAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgfVxuXG4gIC8vIEZvY3VzIHN0YXRlXG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiAkaW5wdXQtYm9yZGVyLWZvY3VzO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iYWNrZ3JvdW5kLWZvY3VzO1xuICAgIGJveC1zaGFkb3c6ICRpbnB1dC1zaGFkb3ctZm9jdXM7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRpbnB1dC10cmFuc2l0aW9uKSB7XG4gICAgICB0cmFuc2l0aW9uOiAkaW5wdXQtdHJhbnNpdGlvbjtcbiAgICB9XG4gIH1cblxuICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtYmFja2dyb3VuZC1kaXNhYmxlZDtcbiAgICBjdXJzb3I6ICRpbnB1dC1jdXJzb3ItZGlzYWJsZWQ7XG4gIH1cblxuICAvLyBIaWRlIHRoZSBkcm9wZG93biBhcnJvdyBzaG93biBpbiBuZXdlciBJRSB2ZXJzaW9uc1xuICAmOjotbXMtZXhwYW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgJlttdWx0aXBsZV0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICY6bm90KFttdWx0aXBsZV0pIHtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLXNlbGVjdCB7XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybS1zZWxlY3Q7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBhYmlkZVxuLy8vL1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGlucHV0cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtaW5wdXRzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gU2V0cyBpZiBlcnJvciBzdHlsZXMgc2hvdWxkIGJlIGFkZGVkIHRvIGxhYmVscy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWJpZGUtbGFiZWxzOiB0cnVlICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciB0byB1c2UgZm9yIGludmFsaWQgdGV4dCBpbnB1dHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRpbnB1dC1iYWNrZ3JvdW5kLWludmFsaWQ6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciB0byB1c2UgZm9yIGxhYmVscyBvZiBpbnZhbGlkIGlucHV0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGZvcm0tbGFiZWwtY29sb3ItaW52YWxpZDogZ2V0LWNvbG9yKGFsZXJ0KSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIENvbG9yXG4kaW5wdXQtZXJyb3ItY29sb3I6IGdldC1jb2xvcihhbGVydCkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZvbnQgc2l6ZSBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIE51bWJlclxuJGlucHV0LWVycm9yLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHdlaWdodCBmb3IgZm9ybSBlcnJvciB0ZXh0LlxuLy8vIEB0eXBlIEtleXdvcmRcbiRpbnB1dC1lcnJvci1mb250LXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFN0eWxlcyB0aGUgYmFja2dyb3VuZCBhbmQgYm9yZGVyIG9mIGFuIGlucHV0IGZpZWxkIHRvIGhhdmUgYW4gZXJyb3Igc3RhdGUuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGFsZXJ0LWNvbG9yXSAtIENvbG9yIHRvIHVzZSBmb3IgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhY2tncm91bmQtbGlnaHRlbiBbMTAlXSAtIExpZ2h0bmVzcyBsZXZlbCBvZiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBmb3JtLWlucHV0LWVycm9yKFxuICAkYmFja2dyb3VuZDogJGlucHV0LWJhY2tncm91bmQtaW52YWxpZCxcbiAgJGJhY2tncm91bmQtbGlnaHRlbjogMTAlXG4pIHtcbiAgJjpub3QoOmZvY3VzKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBtaXgoJGJhY2tncm91bmQsICR3aGl0ZSwgJGJhY2tncm91bmQtbGlnaHRlbik7XG5cbiAgICAmOjpwbGFjZWhvbGRlciB7XG4gICAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIGVycm9yIHN0eWxlcyB0byBhIGZvcm0gZWxlbWVudCwgdXNpbmcgdGhlIHZhbHVlcyBpbiB0aGUgc2V0dGluZ3MgZmlsZS5cbkBtaXhpbiBmb3JtLWVycm9yIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLXRvcDogJGZvcm0tc3BhY2luZyAqIC0wLjU7XG4gIG1hcmdpbi1ib3R0b206ICRmb3JtLXNwYWNpbmc7XG5cbiAgZm9udC1zaXplOiAkaW5wdXQtZXJyb3ItZm9udC1zaXplO1xuICBmb250LXdlaWdodDogJGlucHV0LWVycm9yLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGlucHV0LWVycm9yLWNvbG9yO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1mb3JtLWVycm9yIHtcbiAgQGlmICRhYmlkZS1pbnB1dHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBpbnZhbGlkIGlucHV0c1xuICAgIC5pcy1pbnZhbGlkLWlucHV0IHtcbiAgICAgIEBpbmNsdWRlIGZvcm0taW5wdXQtZXJyb3I7XG4gICAgfVxuICB9XG5cbiAgQGlmICRhYmlkZS1sYWJlbHMge1xuICAgIC8vIEVycm9yIGNsYXNzIGZvciBsYWJlbHMgb2YgaW52YWxpZCBvdXRwdXRzXG4gICAgLmlzLWludmFsaWQtbGFiZWwge1xuICAgICAgY29sb3I6ICRmb3JtLWxhYmVsLWNvbG9yLWludmFsaWQ7XG4gICAgfVxuICB9XG5cbiAgLy8gRm9ybSBlcnJvciBlbGVtZW50XG4gIC5mb3JtLWVycm9yIHtcbiAgICBAaW5jbHVkZSBmb3JtLWVycm9yO1xuXG4gICAgJi5pcy12aXNpYmxlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHR5cG9ncmFwaHktYmFzZVxuLy8vL1xuXG4vLyBCYXNlIFR5cG9ncmFwaHlcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG4vLyBUaGVzZSBhcmUgc3R5bGVzIGFwcGxpZWQgdG8gYmFzaWMgSFRNTCB0YWdzLCBpbmNsdWRpbmc6XG4vLyAgIC0gUGFyYWdyYXBocyA8cD5cbi8vICAgLSBCb2xkL2l0YWxpY3MgPGI+IDxzdHJvbmc+IDxpPiA8ZW0+XG4vLyAgIC0gU21hbGwgdGV4dCA8c21hbGw+XG4vLyAgIC0gSGVhZGluZ3MgPGgxPi08aDY+XG4vLyAgIC0gQW5jaG9ycyA8YT5cbi8vICAgLSBEaXZpZGVycyA8aHI+XG4vLyAgIC0gTGlzdHMgPHVsPiA8b2w+IDxkbD5cbi8vICAgLSBCbG9ja3F1b3RlcyA8YmxvY2txdW90ZT5cbi8vICAgLSBDb2RlIGJsb2NrcyA8Y29kZT5cbi8vICAgLSBBYmJyZXZpYXRpb25zIDxhYmJyPlxuLy8gICAtIENpdGF0aW9ucyA8Y2l0ZT5cbi8vICAgLSBLZXlzdHJva2VzIDxrYmQ+XG5cbi8vLyBGb250IGZhbWlseSBmb3IgaGVhZGVyIGVsZW1lbnRzLlxuLy8vIEB0eXBlIFN0cmluZyB8IExpc3RcbiRoZWFkZXItZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC13ZWlnaHQ6ICRnbG9iYWwtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc3R5bGUgKGUuZy4gaXRhbGljaXplZCkgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRoZWFkZXItZm9udC1zdHlsZTogbm9ybWFsICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzdGFjayB1c2VkIGZvciBlbGVtZW50cyB0aGF0IHVzZSBtb25vc3BhY2VkIHR5cGUsIHN1Y2ggYXMgY29kZSBzYW1wbGVzXG4vLy8gQHR5cGUgU3RyaW5nIHwgTGlzdFxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBDb3VyaWVyLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIENvbG9yXG4kaGVhZGVyLWNvbG9yOiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgb2YgaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRoZWFkZXItbGluZWhlaWdodDogMS40ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJGhlYWRlci1tYXJnaW4tYm90dG9tOiAwLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBTdHlsZXMgZm9yIGhlYWRpbmdzIGF0IHZhcmlvdXMgc2NyZWVuIHNpemVzLiBFYWNoIGtleSBpcyBhIGJyZWFrcG9pbnQsIGFuZCBlYWNoIHZhbHVlIGlzIGEgbWFwIG9mIGhlYWRpbmcgc3R5bGVzLlxuLy8vIEB0eXBlIE1hcFxuJGhlYWRlci1zdHlsZXM6IChcbiAgc21hbGw6IChcbiAgICAnaDEnOiAoJ2ZvbnQtc2l6ZSc6IDI0KSxcbiAgICAnaDInOiAoJ2ZvbnQtc2l6ZSc6IDIwKSxcbiAgICAnaDMnOiAoJ2ZvbnQtc2l6ZSc6IDE5KSxcbiAgICAnaDQnOiAoJ2ZvbnQtc2l6ZSc6IDE4KSxcbiAgICAnaDUnOiAoJ2ZvbnQtc2l6ZSc6IDE3KSxcbiAgICAnaDYnOiAoJ2ZvbnQtc2l6ZSc6IDE2KSxcbiAgKSxcbiAgbWVkaXVtOiAoXG4gICAgJ2gxJzogKCdmb250LXNpemUnOiA0OCksXG4gICAgJ2gyJzogKCdmb250LXNpemUnOiA0MCksXG4gICAgJ2gzJzogKCdmb250LXNpemUnOiAzMSksXG4gICAgJ2g0JzogKCdmb250LXNpemUnOiAyNSksXG4gICAgJ2g1JzogKCdmb250LXNpemUnOiAyMCksXG4gICAgJ2g2JzogKCdmb250LXNpemUnOiAxNiksXG4gICksXG4pICFkZWZhdWx0O1xuXG4vLyAkaGVhZGVyLXN0eWxlcyBtYXAgaXMgYnVpbHQgZnJvbSAkaGVhZGVyLXNpemVzIGluIG9yZGVyIHRvIGVuc3VyZSBkb3dud2FyZCBjb21wYXRpYmlsaXR5XG4vLyB3aGVuICRoZWFkZXItc2l6ZXMgaXMgZGVwcmVjaWF0ZWQsICRoZWFkZXItc3R5bGVzIG5lZWRzIHRvIGdldCAhZGVmYXVsdCB2YWx1ZXMgbGlrZSBzZXR0aW5ncy5zY3NzXG5AZnVuY3Rpb24gYnVpbGRfZnJvbV9oZWFkZXItc2l6ZXMoJGhlYWRlci1zaXplcykge1xuICBAd2FybiAnTm90ZSwgdGhhdCAkaGVhZGVyLXNpemVzIGhhcyBiZWVuIHJlcGxhY2VkIHdpdGggJGhlYWRlci1zdHlsZXMuICRoZWFkZXItc2l6ZXMgc3RpbGwgd29ya3MsIGJ1dCBpdCBpcyBnb2luZyB0byBiZSBkZXByZWNpYXRlZC4nO1xuICAkaGVhZGVyLXN0eWxlczogKCk7XG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXNpemVzIHtcbiAgICAkaGVhZGVyLW1hcDogKCk7XG4gICAgQGVhY2ggJGhlYWRlciwgJGZvbnQtc2l6ZSBpbiAkaGVhZGVycyB7XG4gICAgICAkaGVhZGVyLW1hcDogbWFwLW1lcmdlKCRoZWFkZXItbWFwLCAoJGhlYWRlcjogKCdmb250LXNpemUnOiAkZm9udC1zaXplKSkpO1xuICAgIH1cbiAgICAkaGVhZGVyLXN0eWxlczogbWFwLW1lcmdlKCRoZWFkZXItc3R5bGVzLCAoJHNpemU6ICRoZWFkZXItbWFwKSk7XG4gIH1cbiAgQHJldHVybiAkaGVhZGVyLXN0eWxlcztcbn1cblxuLy8gSWYgaXQgZXhpc3RzICRoZWFkZXJzLXNpemVzIGlzIHVzZWQgdG8gYnVpbGQgJGhlYWRlci1zdHlsZXMuIFNlZSB0aGUgZG9jdW1lbnRhdGlvbi5cbkBpZiB2YXJpYWJsZS1leGlzdHMoaGVhZGVyLXNpemVzKSB7XG4gICRoZWFkZXItc3R5bGVzOiBidWlsZF9mcm9tX2hlYWRlci1zaXplcygkaGVhZGVyLXNpemVzKTtcbn1cblxuLy8vIFRleHQgcmVuZGVyaW5nIG1ldGhvZCBvZiBoZWFkZXJzLlxuLy8vIEB0eXBlIFN0cmluZ1xuJGhlYWRlci10ZXh0LXJlbmRlcmluZzogb3B0aW1pemVMZWdpYmlsaXR5ICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIGA8c21hbGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzbWFsbC1mb250LXNpemU6IDgwJSAhZGVmYXVsdDtcblxuLy8vIENvbG9yIG9mIGA8c21hbGw+YCBlbGVtZW50cyB3aGVuIHBsYWNlZCBpbnNpZGUgaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJGhlYWRlci1zbWFsbC1mb250LWNvbG9yOiAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBMaW5lIGhlaWdodCBvZiB0ZXh0IGluc2lkZSBgPHA+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRwYXJhZ3JhcGgtbGluZWhlaWdodDogMS42ICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIG1hcmdpbiBvZiBwYXJhZ3JhcGhzLlxuLy8vIEB0eXBlIE51bWJlclxuJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gVGV4dCByZW5kZXJpbmcgbWV0aG9kIGZvciBwYXJhZ3JhcGggdGV4dC5cbi8vLyBAdHlwZSBTdHJpbmdcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8vIFVzZSB0aGUgYC5jb2RlLWlubGluZWAgY29tcG9uZW50IGFzIGRlZmF1bHQgZm9yIGA8Y29kZT5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIEJvb2xlYW5cbiRlbmFibGUtY29kZS1pbmxpbmU6IHRydWU7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcy5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGNvbG9yIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBDb2xvclxuJGFuY2hvci1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRleHQgZGVjb3JhdGlvbiBmb3IgbGlua3MuXG4vLy8gQHR5cGUgU3RyaW5nXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBkZWNvcmF0aW9uIGZvciBsaW5rcyBvbiBob3Zlci5cbi8vLyBAdHlwZSBTdHJpbmdcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuXG4vLy8gTWF4aW11bSB3aWR0aCBvZiBhIGRpdmlkZXIuXG4vLy8gQHR5cGUgTnVtYmVyXG4kaHItd2lkdGg6ICRnbG9iYWwtd2lkdGggIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIExpc3RcbiRoci1ib3JkZXI6IDFweCBzb2xpZCAkbWVkaXVtLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBmb3IgYSBkaXZpZGVyLlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSBhdXRvICFkZWZhdWx0O1xuXG4vLy8gTGluZSBoZWlnaHQgZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LWxpbmVoZWlnaHQ6ICRwYXJhZ3JhcGgtbGluZWhlaWdodCAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGl0ZW1zIGluIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuLy8vIEJ1bGxldCB0eXBlIHRvIHVzZSBmb3IgdW5vcmRlcmVkIGxpc3RzIChlLmcuLCBgc3F1YXJlYCwgYGNpcmNsZWAsIGBkaXNjYCkuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS10eXBlOiBkaXNjICFkZWZhdWx0O1xuXG4vLy8gUG9zaXRpb25pbmcgZm9yIGJ1bGxldHMgb24gdW5vcmRlcmVkIGxpc3QgaXRlbXMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kbGlzdC1zdHlsZS1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcblxuLy8vIExlZnQgKG9yIHJpZ2h0KSBtYXJnaW4gZm9yIGxpc3RzLlxuLy8vIEB0eXBlIE51bWJlclxuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBMZWZ0IChvciByaWdodCkgbWFyZ2luIGZvciBhIGxpc3QgaW5zaWRlIGEgbGlzdC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRsaXN0LW5lc3RlZC1zaWRlLW1hcmdpbjogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8vIEJvdHRvbSBtYXJnaW4gZm9yIGA8ZGw+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC1tYXJnaW4tYm90dG9tOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGA8ZHQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRkZWZubGlzdC10ZXJtLXdlaWdodDogJGdsb2JhbC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8vIFNwYWNpbmcgYmV0d2VlbiBgPGR0PmAgYW5kIGA8ZGQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRkZWZubGlzdC10ZXJtLW1hcmdpbi1ib3R0b206IDAuM3JlbSAhZGVmYXVsdDtcblxuLy8vIFRleHQgY29sb3Igb2YgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRibG9ja3F1b3RlLWNvbG9yOiAkZGFyay1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBpbnNpZGUgYSBgPGJsb2NrcXVvdGU+YCBlbGVtZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG5cbi8vLyBTaWRlIGJvcmRlciBmb3IgYDxibG9ja3F1b3RlPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGJsb2NrcXVvdGUtYm9yZGVyOiAxcHggc29saWQgJG1lZGl1bS1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gVXNlIHRoZSBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudCBhcyBkZWZhdWx0IGZvciBgPGNpdGU+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZW5hYmxlLWNpdGUtYmxvY2s6IHRydWU7XG5cbi8vLyBGb250IGZhbWlseSBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4ka2V5c3Ryb2tlLWZvbnQ6ICRmb250LWZhbWlseS1tb25vc3BhY2UgIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWNvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGtiZD5gIGVsZW1lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4ka2V5c3Ryb2tlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gUGFkZGluZyBmb3IgYDxrYmQ+YCBlbGVtZW50cy5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4ka2V5c3Ryb2tlLXBhZGRpbmc6IHJlbS1jYWxjKDIgNCAwKSAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciByYWRpdXMgZm9yIGA8a2JkPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTnVtYmVyIHwgTGlzdFxuJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQm90dG9tIGJvcmRlciBzdHlsZSBmb3IgYDxhYmJyPmAgZWxlbWVudHMuXG4vLy8gQHR5cGUgTGlzdFxuJGFiYnItdW5kZXJsaW5lOiAxcHggZG90dGVkICRibGFjayAhZGVmYXVsdDtcblxuQG1peGluIGZvdW5kYXRpb24tdHlwb2dyYXBoeS1iYXNlIHtcbiAgLy8gVHlwb2dyYXBoeSByZXNldHNcbiAgZGl2LFxuICBkbCxcbiAgZHQsXG4gIGRkLFxuICB1bCxcbiAgb2wsXG4gIGxpLFxuICBoMSxcbiAgaDIsXG4gIGgzLFxuICBoNCxcbiAgaDUsXG4gIGg2LFxuICBwcmUsXG4gIGZvcm0sXG4gIHAsXG4gIGJsb2NrcXVvdGUsXG4gIHRoLFxuICB0ZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAvLyBQYXJhZ3JhcGhzXG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcblxuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgIHRleHQtcmVuZGVyaW5nOiAkcGFyYWdyYXBoLXRleHQtcmVuZGVyaW5nO1xuICB9XG5cbiAgLy8gRW1waGFzaXplZCB0ZXh0XG4gIGVtLFxuICBpIHtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICAvLyBTdHJvbmcgdGV4dFxuICBzdHJvbmcsXG4gIGIge1xuICAgIGZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ib2xkO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gU21hbGwgdGV4dFxuICBzbWFsbCB7XG4gICAgZm9udC1zaXplOiAkc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgLy8gSGVhZGluZ3NcbiAgaDEsIC5oMSxcbiAgaDIsIC5oMixcbiAgaDMsIC5oMyxcbiAgaDQsIC5oNCxcbiAgaDUsIC5oNSxcbiAgaDYsIC5oNiB7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgZm9udC1zdHlsZTogJGhlYWRlci1mb250LXN0eWxlO1xuICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkaGVhZGVyLWNvbG9yO1xuICAgIHRleHQtcmVuZGVyaW5nOiAkaGVhZGVyLXRleHQtcmVuZGVyaW5nO1xuXG4gICAgc21hbGwge1xuICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICBjb2xvcjogJGhlYWRlci1zbWFsbC1mb250LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhlYWRpbmcgc3R5bGVzXG4gIEBlYWNoICRzaXplLCAkaGVhZGVycyBpbiAkaGVhZGVyLXN0eWxlcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgICAgQGVhY2ggJGhlYWRlciwgJGhlYWRlci1kZWZzIGluICRoZWFkZXJzIHtcbiAgICAgICAgJGZvbnQtc2l6ZS10ZW1wOiAxcmVtO1xuICAgICAgICAjeyRoZWFkZXJ9LCAuI3skaGVhZGVyfSB7XG5cbiAgICAgICAgICBAaWYgbWFwLWhhcy1rZXkoJGhlYWRlci1kZWZzLCBmb250LXNpemUpIHtcbiAgICAgICAgICAgICRmb250LXNpemUtdGVtcDogcmVtLWNhbGMobWFwLWdldCgkaGVhZGVyLWRlZnMsIGZvbnQtc2l6ZSkpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGZzKSB7XG4gICAgICAgICAgICAkZm9udC1zaXplLXRlbXA6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBmcykpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplLXRlbXA7XG4gICAgICAgICAgfSBAZWxzZSBpZiAkc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtdGVtcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIG1hcC1oYXMta2V5KCRoZWFkZXItZGVmcywgbGluZS1oZWlnaHQpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiB1bml0bGVzcy1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBsaW5lLWhlaWdodCksICRmb250LXNpemUtdGVtcCk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIGxoKSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogdW5pdGxlc3MtY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbGgpLCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH0gQGVsc2UgaWYgJHNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHVuaXRsZXNzLWNhbGMoJGhlYWRlci1saW5laGVpZ2h0LCAkZm9udC1zaXplLXRlbXApO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi10b3ApIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tdG9wKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG10KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbXQpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1hcmdpbi1ib3R0b20pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKG1hcC1nZXQoJGhlYWRlci1kZWZzLCBtYXJnaW4tYm90dG9tKSk7XG4gICAgICAgICAgfSBAZWxzZSBpZiBtYXAtaGFzLWtleSgkaGVhZGVyLWRlZnMsIG1iKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyhtYXAtZ2V0KCRoZWFkZXItZGVmcywgbWIpKTtcbiAgICAgICAgICB9IEBlbHNlIGlmICRzaXplID09ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRoZWFkZXItbWFyZ2luLWJvdHRvbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gTGlua3NcbiAgYSB7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgY29sb3I6ICRhbmNob3ItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjtcblxuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGFuY2hvci1jb2xvci1ob3ZlcjtcbiAgICAgIEBpZiAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbi1ob3ZlciAhPSAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbiB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb24taG92ZXI7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3Jpem9udGFsIHJ1bGVcbiAgaHIge1xuICAgIGNsZWFyOiBib3RoO1xuXG4gICAgbWF4LXdpZHRoOiAkaHItd2lkdGg7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbjogJGhyLW1hcmdpbjtcblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRoci1ib3JkZXI7XG4gICAgYm9yZGVyLWxlZnQ6IDA7XG4gIH1cblxuICAvLyBMaXN0c1xuICB1bCxcbiAgb2wsXG4gIGRsIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246ICRsaXN0LXN0eWxlLXBvc2l0aW9uO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGlzdC1saW5laGVpZ2h0O1xuICB9XG5cbiAgLy8gTGlzdCBpdGVtc1xuICBsaSB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICB9XG5cbiAgLy8gVW5vcmRlcmVkIGxpc3RzXG4gIHVsIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgICBsaXN0LXN0eWxlLXR5cGU6ICRsaXN0LXN0eWxlLXR5cGU7XG4gIH1cblxuICAvLyBPcmRlcmVkIGxpc3RzXG4gIG9sIHtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1zaWRlLW1hcmdpbjtcbiAgfVxuXG4gIC8vIE5lc3RlZCB1bm9yZGVyZWQvb3JkZXJlZCBsaXN0c1xuICB1bCwgb2wge1xuICAgICYgJiB7XG4gICAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkbGlzdC1uZXN0ZWQtc2lkZS1tYXJnaW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cbiAgfVxuXG4gIC8vIERlZmluaXRpb24gbGlzdHNcbiAgZGwge1xuICAgIG1hcmdpbi1ib3R0b206ICRkZWZubGlzdC1tYXJnaW4tYm90dG9tO1xuXG4gICAgZHQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGRlZm5saXN0LXRlcm0tbWFyZ2luLWJvdHRvbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmbmxpc3QtdGVybS13ZWlnaHQ7XG4gICAgfVxuICB9XG5cbiAgLy8gQmxvY2txdW90ZXNcbiAgYmxvY2txdW90ZSB7XG4gICAgbWFyZ2luOiAwIDAgJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRibG9ja3F1b3RlLXBhZGRpbmc7XG4gICAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogJGJsb2NrcXVvdGUtYm9yZGVyO1xuXG4gICAgJiwgcCB7XG4gICAgICBsaW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5laGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIElubGluZSBDaXRhdGlvbnNcbiAgQGlmICgkZW5hYmxlLWNpdGUtYmxvY2sgPT0gdHJ1ZSkge1xuICAgIGNpdGUge1xuICAgICAgLy8gRXh0ZW5kaW5nIGEgY2xhc3MgaXMgbm90IHJlY29tbWVuZGVkLlxuICAgICAgLy8gVE9ETzogQnJlYWsgdGhlIHR5cG9ncmFwaHktYmFzZS90eXBvZ3JhcGh5LWhlbHBlcnMgc2VwYXJhdGlvblxuICAgICAgQGV4dGVuZCAuY2l0ZS1ibG9jaztcbiAgICB9XG4gIH1cblxuICAvLyBBYmJyZXZpYXRpb25zXG4gIGFiYnIsIGFiYnJbdGl0bGVdIHtcbiAgICBib3JkZXItYm90dG9tOiAkYWJici11bmRlcmxpbmU7XG4gICAgY3Vyc29yOiBoZWxwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ3VyZXNcbiAgZmlndXJlIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvLyBDb2RlXG4gIEBpZiAoJGVuYWJsZS1jb2RlLWlubGluZSA9PSB0cnVlKSB7XG4gICAgY29kZSB7XG4gICAgICBAZXh0ZW5kIC5jb2RlLWlubGluZTtcbiAgICB9XG4gIH1cblxuICAvLyBLZXlzdHJva2VzXG4gIGtiZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6ICRrZXlzdHJva2UtcGFkZGluZztcblxuICAgIGJhY2tncm91bmQtY29sb3I6ICRrZXlzdHJva2UtYmFja2dyb3VuZDtcblxuICAgIGZvbnQtZmFtaWx5OiAka2V5c3Ryb2tlLWZvbnQ7XG4gICAgY29sb3I6ICRrZXlzdHJva2UtY29sb3I7XG5cbiAgICBAaWYgaGFzLXZhbHVlKCRrZXlzdHJva2UtcmFkaXVzKSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAka2V5c3Ryb2tlLXJhZGl1cztcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0eXBvZ3JhcGh5LWhlbHBlcnNcbi8vLy9cblxuLy8vIERlZmF1bHQgZm9udCBzaXplIGZvciBsZWFkIHBhcmFncmFwaHMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kbGVhZC1mb250LXNpemU6ICRnbG9iYWwtZm9udC1zaXplICogMS4yNSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIGxlYWQgcGFyYWdyYXBocy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRsZWFkLWxpbmVoZWlnaHQ6IDEuNiAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgbGluZSBoZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLWxpbmVoZWlnaHQ6IDEuNCAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBDb2xvclxuJHN1YmhlYWRlci1jb2xvcjogJGRhcmstZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCB3ZWlnaHQgZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgU3RyaW5nXG4kc3ViaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHRvcCBtYXJnaW4gZm9yIHN1YmhlYWRlcnMuXG4vLy8gQHR5cGUgTnVtYmVyXG4kc3ViaGVhZGVyLW1hcmdpbi10b3A6IDAuMnJlbSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYm90dG9tIG1hcmdpbiBmb3Igc3ViaGVhZGVycy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRzdWJoZWFkZXItbWFyZ2luLWJvdHRvbTogMC41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IHNpemUgZm9yIHN0YXRpc3RpYyBudW1iZXJzLlxuLy8vIEB0eXBlIE51bWJlclxuJHN0YXQtZm9udC1zaXplOiAyLjVyZW0gIWRlZmF1bHQ7XG5cbi8vLyBUZXh0IGNvbG9yIGZvciBgLmNpdGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGNpdGUtY29sb3I6ICRkYXJrLWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBGb250IHNpemUgZm9yIGAuY2l0ZS1ibG9ja2AgY29tcG9uZW50LlxuLy8vIEB0eXBlIE51bWJlclxuJGNpdGUtZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG5cbi8vLyBQc2V1ZG8gY29udGVudCBmb3IgYC5jaXRlLWJsb2NrYCBjb21wb25lbnQuXG4vLy8gQHR5cGUgU3RyaW5nXG4kY2l0ZS1wc2V1ZG8tY29udGVudDogJ1xcMjAxNCBcXDAwMjAnICFkZWZhdWx0O1xuXG4vLy8gVGV4dCBjb2xvciBvZiBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY29kZS1jb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuXG4vLy8gRm9udCBmYW1pbHkgb2YgYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmcgfCBMaXN0XG4kY29kZS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LW1vbm9zcGFjZSAhZGVmYXVsdDtcblxuLy8vIEZvbnQgd2VpZ2h0IG9mIHRleHQgaW4gYC5jb2RlLWlubGluZWAgYW5kIGAuY29kZS1ibG9ja2AgY29tcG9uZW50cy5cbi8vLyBAdHlwZSBTdHJpbmdcbiRjb2RlLWZvbnQtd2VpZ2h0OiAkZ2xvYmFsLXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIG9mIGAuY29kZS1pbmxpbmVgIGFuZCBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudHMuXG4vLy8gQHR5cGUgQ29sb3JcbiRjb2RlLWJhY2tncm91bmQ6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gQm9yZGVyIGFyb3VuZCBgLmNvZGUtaW5saW5lYCBhbmQgYC5jb2RlLWJsb2NrYCBjb21wb25lbnRzLlxuLy8vIEB0eXBlIExpc3RcbiRjb2RlLWJvcmRlcjogMXB4IHNvbGlkICRtZWRpdW0tZ3JheSAhZGVmYXVsdDtcblxuLy8vIFBhZGRpbmcgYXJvdW5kIHRleHQgb2YgdGhlIGAuY29kZS1pbmxpbmVgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1wYWRkaW5nOiByZW0tY2FsYygyIDUgMSkgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGFyb3VuZCB0ZXh0IG9mIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kY29kZS1ibG9jay1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gTWFyZ2luIHVuZGVyIHRoZSBgLmNvZGUtYmxvY2tgIGNvbXBvbmVudC5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b206IDEuNXJlbSAhZGVmYXVsdDtcblxuQG1peGluIGNpdGUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY29sb3I6ICRjaXRlLWNvbG9yO1xuICBmb250LXNpemU6ICRjaXRlLWZvbnQtc2l6ZTtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogJGNpdGUtcHNldWRvLWNvbnRlbnQ7XG4gIH1cbn1cblxuLy8vIEFkZCBiYXNpYyBzdHlsZXMgZm9yIGEgY29kZSBoZWxwZXIuXG4vLy8gU2VlIGBjb2RlLWlubGluZWAgYW5kIGBjb2RlLWJsb2NrYCBtaXhpbnMuXG5AbWl4aW4gY29kZS1zdHlsZSB7XG4gIGJvcmRlcjogJGNvZGUtYm9yZGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29kZS1iYWNrZ3JvdW5kO1xuXG4gIGZvbnQtZmFtaWx5OiAkY29kZS1mb250LWZhbWlseTtcbiAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG59XG5cbi8vLyBNYWtlIGNvZGUgaGVscGVyIGZyb20gdGhlIGBjb2RlLXN0eWxlYCBtaXhpbiBpbmxpbmUuXG4vLy8gVXNlZCB0byBnZW5lcmF0ZSBgLmNvZGUtaW5saW5lYFxuQG1peGluIGNvZGUtaW5saW5lIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcblxuICBwYWRkaW5nOiAkY29kZS1wYWRkaW5nO1xufVxuXG4vLy8gTWFrZSBjb2RlIGhlbHBlciBmcm9tIHRoZSBgY29kZS1zdHlsZWAgbWl4aW4gYSBibG9jay5cbi8vLyBVc2VkIHRvIGdlbmVyYXRlIGAuY29kZS1ibG9ja2BcbkBtaXhpbiBjb2RlLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBhdXRvO1xuICB3aGl0ZS1zcGFjZTogcHJlO1xuXG4gIHBhZGRpbmc6ICRjb2RlLWJsb2NrLXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRjb2RlLWJsb2NrLW1hcmdpbi1ib3R0b207XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXR5cG9ncmFwaHktaGVscGVycyB7XG4gIC8vIFVzZSB0byBjcmVhdGUgYSBzdWJoZWFkaW5nIHVuZGVyIGEgbWFpbiBoZWFkZXJcbiAgLy8gTWFrZSBzdXJlIHlvdSBwYWlyIHRoZSB0d28gZWxlbWVudHMgaW4gYSA8aGVhZGVyPiBlbGVtZW50LCBsaWtlIHRoaXM6XG4gIC8vIDxoZWFkZXI+XG4gIC8vICAgPGgxPkhlYWRpbmc8L2gxPlxuICAvLyAgIDxoMj5TdWJoZWFkaW5nPC9oMj5cbiAgLy8gPC9oZWFkZXI+XG4gIC5zdWJoZWFkZXIge1xuICAgIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItbWFyZ2luLXRvcDtcbiAgICBtYXJnaW4tYm90dG9tOiAkc3ViaGVhZGVyLW1hcmdpbi1ib3R0b207XG5cbiAgICBmb250LXdlaWdodDogJHN1YmhlYWRlci1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5laGVpZ2h0O1xuICAgIGNvbG9yOiAkc3ViaGVhZGVyLWNvbG9yO1xuICB9XG5cbiAgLy8gVXNlIHRvIHN0eWxlIGFuIGludHJvZHVjdG9yeSBsZWFkLCBkZWNrLCBibHVyYiwgZXRjLlxuICAubGVhZCB7XG4gICAgZm9udC1zaXplOiAkbGVhZC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsZWFkLWxpbmVoZWlnaHQ7XG4gIH1cblxuICAvLyBVc2UgdG8gc3R5bGUgYSBsYXJnZSBudW1iZXIgdG8gZGlzcGxheSBhIHN0YXRpc3RpY1xuICAuc3RhdCB7XG4gICAgZm9udC1zaXplOiAkc3RhdC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG5cbiAgICBwICsgJiB7XG4gICAgICBtYXJnaW4tdG9wOiAtMXJlbTtcbiAgICB9XG4gIH1cblxuICB1bCwgb2wge1xuICAgIC8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdFxuICAgICYubm8tYnVsbGV0IHtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5jaXRlLWJsb2NrIHtcbiAgICBAaW5jbHVkZSBjaXRlLWJsb2NrO1xuICB9XG5cbiAgLmNvZGUtaW5saW5lIHtcbiAgICBAaW5jbHVkZSBjb2RlLXN0eWxlO1xuICAgIEBpbmNsdWRlIGNvZGUtaW5saW5lO1xuICB9XG5cbiAgLmNvZGUtYmxvY2sge1xuICAgIEBpbmNsdWRlIGNvZGUtc3R5bGU7XG4gICAgQGluY2x1ZGUgY29kZS1ibG9jaztcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AbWl4aW4gZm91bmRhdGlvbi10ZXh0LWFsaWdubWVudCB7XG4gIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgIEBlYWNoICRhbGlnbiBpbiAobGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSkge1xuICAgICAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgICAgIC4jeyRzaXplfS10ZXh0LSN7JGFsaWdufSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiAkYWxpZ247XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAudGV4dC0jeyRhbGlnbn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogJGFsaWduO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8gSWYgYHRydWVgLCBhbGwgZWxlbWVudHMgd2lsbCBoYXZlIHRyYW5zcGFyZW50IGJhY2tncm91bmRzIHdoZW4gcHJpbnRlZCwgdG8gc2F2ZSBvbiBpbmsuXG4vLy8gQHR5cGUgQm9vbGVhblxuLy8vIEBncm91cCBnbG9iYWxcbiRwcmludC10cmFuc3BhcmVudC1iYWNrZ3JvdW5kczogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgZGlzcGxheXMgbmV4dCB0byBhbGwgbGlua3MgdGhlaXIgXCJocmVmXCIgd2hlbiBwcmludGVkLlxuLy8vIEB0eXBlIEJvb2xlYW5cbi8vLyBAZ3JvdXAgZ2xvYmFsXG4kcHJpbnQtaHJlZnM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIHNhc3MtbGludDpkaXNhYmxlLWFsbFxuXG5AbWl4aW4gZm91bmRhdGlvbi1wcmludC1zdHlsZXMge1xuICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICBAbWVkaWEgcHJpbnQge1xuICAgICoge1xuICAgICAgLy8gRW5zdXJlIGEgXCJibGFjay1vbi13aGl0ZVwiIHByaW50IGJ5IHJlbW92aW5nIGJhY2tncm91bmRzLFxuICAgICAgLy8gdXNpbmcgYmxhY2sgdGV4dCBldmVyeXdoZXJlIGFuZCBmb3JjaW5nIHRoZSBicm93c2VyIHRvIGVjb25vbWl6ZSBpbmsuXG4gICAgICBAaWYgJHByaW50LXRyYW5zcGFyZW50LWJhY2tncm91bmRzIHtcbiAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgY29sb3I6IGJsYWNrICFpbXBvcnRhbnQ7IC8vIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3NcbiAgICAgICAgY29sb3ItYWRqdXN0OiBlY29ub215O1xuICAgICAgfVxuICAgICAgLy8gT3RoZXJ3aXNlLCBwcmV2ZW50IGFueSBlY29ub215IGJ5IHRoZSBicm93c2VyLlxuICAgICAgQGVsc2Uge1xuICAgICAgICBjb2xvci1hZGp1c3Q6IGV4YWN0O1xuICAgICAgfVxuXG4gICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB0Ym9keS5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgdGguc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAgIC8vIERpc3BsYXkgdGhlIFVSTCBvZiBhIGxpbmsgYWZ0ZXIgdGhlIHRleHRcbiAgICBhLFxuICAgIGE6dmlzaXRlZCB7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO31cbiAgICBAaWYgJHByaW50LWhyZWZzIHtcbiAgICAgIGFbaHJlZl06YWZ0ZXIgeyBjb250ZW50OiAnICgnIGF0dHIoaHJlZikgJyknOyB9XG4gICAgfVxuXG4gICAgLy8gRG9uJ3QgZGlzcGxheSB0aGUgVVJMIGZvciBpbWFnZXMgb3IgSmF2YVNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgIC5pciBhOmFmdGVyLFxuICAgIGFbaHJlZl49J2phdmFzY3JpcHQ6J106YWZ0ZXIsXG4gICAgYVtocmVmXj0nIyddOmFmdGVyIHsgY29udGVudDogJyc7IH1cblxuICAgIC8vIERpc3BsYXkgd2hhdCBhbiBhYmJyZXZpYXRpb24gc3RhbmRzIGZvciBhZnRlciB0aGUgdGV4dFxuICAgIGFiYnJbdGl0bGVdOmFmdGVyIHsgY29udGVudDogJyAoJyBhdHRyKHRpdGxlKSAnKSc7IH1cblxuICAgIC8vIFByZXZlbnQgcGFnZSBicmVha3MgaW4gdGhlIG1pZGRsZSBvZiBhIGJsb2NrcXVvdGUgb3IgcHJlZm9ybWF0dGVkIHRleHQgYmxvY2tcbiAgICBwcmUsXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkZGFyay1ncmF5O1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICAgIH1cblxuICAgIC8vIGg1YnAuY29tL3RcbiAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgfVxuXG4gICAgdHIsXG4gICAgaW1nIHsgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkOyB9XG5cbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfVxuXG4gICAgQHBhZ2UgeyBtYXJnaW46IDAuNWNtOyB9XG5cbiAgICBwLFxuICAgIGgyLFxuICAgIGgzIHtcbiAgICAgIG9ycGhhbnM6IDM7XG4gICAgICB3aWRvd3M6IDM7XG4gICAgfVxuXG4gICAgLy8gQXZvaWQgcGFnZSBicmVha3MgYWZ0ZXIgYSBoZWFkaW5nXG4gICAgaDIsXG4gICAgaDMgeyBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDsgfVxuXG4gICAgLy8gSGVscGVyIHRvIHJlLWFsbG93IHBhZ2UgYnJlYWtzIGluIHRoZSBtaWRkbGUgb2YgY2VydGFpbiBlbGVtZW50cyAoZS5nLiBwcmUsIGJsb2NrcXVvdGUsIHRyKVxuICAgIC5wcmludC1icmVhay1pbnNpZGUge1xuICAgICAgcGFnZS1icmVhay1pbnNpZGU6IGF1dG87XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktYmFzZS1ncmlkLWNsYXNzZXMge1xuXG4gIC8vIEdyaWQgQ29udGFpbmVyXG4gIC5ncmlkLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZC1jb250YWluZXI7XG5cbiAgICAmLmZsdWlkIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtY29udGFpbmVyKDEwMCUpO1xuICAgIH1cblxuICAgICYuZnVsbCB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbnRhaW5lcigxMDAlLCAwKTtcbiAgICB9XG4gIH1cblxuICAvLyBCYXNlIGdyaWQgc3R5bGVzXG4gIC5ncmlkLXgge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQ7XG4gIH1cblxuICAuY2VsbCB7XG4gICAgQGluY2x1ZGUgeHktY2VsbChmdWxsLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuXG4gICAgJi5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShhdXRvKTtcbiAgICB9XG5cbiAgICAmLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICB9XG5cbiAgfVxuICAuZ3JpZC14IHtcbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cblxuICAgID4gLnNocmluayB7XG4gICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoc2hyaW5rLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgIH1cbiAgfVxuXG4gIC8vIEF1dG8gd2lkdGhcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzICYgUFJzIGZvciB0aGUgYmFja3N0b3J5OlxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvaXNzdWVzLzEwMjQ0XG4gICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9mb3VuZGF0aW9uL2ZvdW5kYXRpb24tc2l0ZXMvcHVsbC8xMDE2NFxuICAgIC5ncmlkLXgge1xuICAgICAgJHN0cjogXCI+IC4jeyQtemYtc2l6ZX0tc2hyaW5rLCA+IC4jeyQtemYtc2l6ZX0tZnVsbFwiO1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgJHN0cjogJHN0ciArIFwiLCA+IC4jeyQtemYtc2l6ZX0tI3skaX1cIlxuICAgICAgfVxuICAgICAgI3skc3RyfSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAvLyBSZXNwb25zaXZlIFwiYXV0b1wiIG1vZGlmaWVyXG4gICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgIC5ncmlkLXggPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsKGF1dG8sICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmFzZShzaHJpbmspO1xuICAgIH1cblxuICAgIC8vIFJlc3BvbnNpdmUgXCJzaHJpbmtcIiBtb2RpZmllclxuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS1zaHJpbmsge1xuICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay1ob3Jpem9udGFsLSN7JC16Zi1zaXplfTtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSZXNwb25zaXZlIHdpZHRoIG1vZGlmaWVyc1xuICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAuZ3JpZC14ID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgIEBleHRlbmQgJS14eS1jZWxsLWJhc2Utc2hyaW5rLWhvcml6b250YWwtI3skLXpmLXNpemV9O1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJGksICRndXR0ZXItdHlwZTogbm9uZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gUmVzZXQgd2lkdGggd2hlbiB1c2luZyBgLmdyaWQtbWFyZ2luLXhgIG5vdCBvbiBgLmdyaWQteGBcbiAgLmdyaWQtbWFyZ2luLXg6bm90KC5ncmlkLXgpID4gLmNlbGwge1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gUmVzZXQgaGVpZ2h0IHdoZW4gdXNpbmcgYC5ncmlkLW1hcmdpbi15YCBub3Qgb24gYC5ncmlkLXlgXG4gIC5ncmlkLW1hcmdpbi15Om5vdCguZ3JpZC15KSA+IC5jZWxsIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cblxuQG1peGluIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkY2xhc3MtYnJlYWtwb2ludCwgJGd1dHRlci1icmVha3BvaW50LCAkdmVydGljYWwpIHtcbiAgJHByZWZpeDogaWYoJGNsYXNzLWJyZWFrcG9pbnQgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQsICcnLCAnI3skY2xhc3MtYnJlYWtwb2ludH0tJyk7XG4gID4gLiN7JHByZWZpeH1hdXRvIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoYXV0bywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgPiAuI3skcHJlZml4fXNocmluayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICB9XG5cbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgJGNsYXNzbmFtZTogaWYoJHZlcnRpY2FsLCAnLiN7JGNsYXNzLWJyZWFrcG9pbnR9LSN7JGl9JywgJy4jeyRjbGFzcy1icmVha3BvaW50fS0jeyRpfScpO1xuXG4gICAgPiAjeyRjbGFzc25hbWV9IHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJHZlcnRpY2FsOiAkdmVydGljYWwpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBNYXJnaW4gR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktbWFyZ2luLWdyaWQtY2xhc3NlcyhcbiAgJGd1dHRlci1wb3NpdGlvbjogbGVmdCByaWdodCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJHdyYXBwaW5nLXNlbGVjdG9yOiAnLmdyaWQtbWFyZ2luLXgnXG4pe1xuICAjeyR3cmFwcGluZy1zZWxlY3Rvcn0ge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJG5lZ2F0aXZlOiB0cnVlLCAkZ3V0dGVyLXBvc2l0aW9uOiAkZ3V0dGVyLXBvc2l0aW9uKTtcblxuICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICB9XG5cbiAgICAvLyBiYXNlIHN0eWxlcyBuZWVkIHRvIGFsbCBiZSBiZWZvcmUgdGhlIGF1dG8gYW5kIHNocmluayBzdHlsZXNcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgQGlmKHR5cGUtb2YoJGdyaWQtbWFyZ2luLWd1dHRlcnMpID09ICdtYXAnIGFuZCBtYXAtaGFzLWtleSgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJC16Zi1zaXplKSBhbmQgJC16Zi1zaXplICE9ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgICAgID4gLmNlbGwge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoJHZlcnRpY2FsOiAkdmVydGljYWwsICRvdXRwdXQ6IChzaXplIGd1dHRlcnMpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG5cbiAgICAgIC8vIFRoaXMgaXMgcHVyZWx5IGZvciByZXNwb25zaXZlIGd1dHRlcnMgLSB0aGUgbWFyZ2luIGdyaWQgaGFzIHRvIGdvIGJhY2sgYW5kIGFkanVzdCB3aWR0aHMgKG9yIGhlaWdodHMpXG4gICAgICAvLyBmb3IgYWxsIHByaW9yIGJyZWFrcG9pbnRzLlxuICAgICAgLy8gQXMgdGhlaXIgZ3V0dGVyIGlzIGRlZmluZWQgd2l0aCB0aGVpciB3aWR0aC9oZWlnaHQsIGV2ZW4gYnJlYWtwb2ludCB3aXRob3V0IGEgbmV3IG1hcmdpbiBtdXN0IGJlXG4gICAgICAvLyBnZW5lcmF0ZWQgdG8gbm90IGhhdmluZyB0aGVpciB3aWR0aC9oZWlnaHQgb3ZlcnJpZGVkIGJ5IHJlLWFkanVzdGVkIHNtYWxsZXIgYnJlYWtwb2ludHMuXG4gICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgIEBlYWNoICRicCBpbiAtemYtYnJlYWtwb2ludHMtbGVzcy10aGFuKCQtemYtc2l6ZSkge1xuICAgICAgICAgIEBpbmNsdWRlIC14eS1icmVha3BvaW50LWNlbGwtY2xhc3NlcygkYnAsICQtemYtc2l6ZSwgJHZlcnRpY2FsKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSAteHktYnJlYWtwb2ludC1jZWxsLWNsYXNzZXMoJC16Zi1zaXplLCAkLXpmLXNpemUsICR2ZXJ0aWNhbCk7XG4gICAgfVxuICB9XG59XG5cbi8vIFBhZGRpbmcgR3JpZCBjbGFzc2VzXG5AbWl4aW4geHktcGFkZGluZy1ncmlkLWNsYXNzZXMge1xuICAuZ3JpZC1wYWRkaW5nLXgge1xuXG4gICAgLy8gTmVnYXRpdmUgbWFyZ2luIGZvciBuZXN0ZWQgZ3JpZHNcbiAgICAuZ3JpZC1wYWRkaW5nLXgge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkbmVnYXRpdmU6IHRydWUpO1xuICAgIH1cblxuICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgZ3JpZHMgd2l0aGluIGBncmlkLWNvbnRhaW5lci9ncmlkLWNvbnRhaW5lci5mbHVpZGBcbiAgICAvLyBUaGlzIGFsbG93cyBtYXJnaW4gYW5kIHBhZGRpbmcgZ3JpZHMgdG8gbGluZSB1cCB3aXRoIGVhY2hvdGhlclxuICAgIC5ncmlkLWNvbnRhaW5lcjpub3QoLmZ1bGwpID4gJiB7XG4gICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSk7XG4gICAgfVxuXG4gICAgLy8gQmFzZSBjZWxsIHN0eWxlc1xuICAgID4gLmNlbGwge1xuICAgICAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJGdyaWQtcGFkZGluZy1ndXR0ZXJzLCAkZ3V0dGVyLXR5cGU6IHBhZGRpbmcpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBCbG9jayBHcmlkIGNsYXNzZXNcbkBtaXhpbiB4eS1ibG9jay1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkOiB0cnVlLCAkcGFkZGluZy1ncmlkOiB0cnVlKSB7XG4gIEBpZiAkcGFkZGluZy1ncmlkIHtcbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50IHtcbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLiN7JC16Zi1zaXplfS11cC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoJG46ICRpLCAkc2VsZWN0b3I6ICcuY2VsbCcsICRndXR0ZXItdHlwZTogcGFkZGluZywgJG91dHB1dDogKHNpemUpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQge1xuICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkeHktYmxvY2stZ3JpZC1tYXgge1xuICAgICAgICAvLyBUaGlzIGlzIHB1cmVseSBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzIC0gdGhlIG1hcmdpbiBncmlkIGhhcyB0byBnbyBiYWNrIGFuZCBhZGp1c3Qgd2lkdGhzIChvciBoZWlnaHRzKVxuICAgICAgICAvLyBmb3IgcHJpb3IgYnJlYWtwb2ludHMgYmFzZWQgb24gdGhlIHJlc3BvbnNpdmUgZ3V0dGVyLlxuICAgICAgICBAaWYodHlwZS1vZigkZ3JpZC1tYXJnaW4tZ3V0dGVycykgPT0gJ21hcCcgYW5kIG1hcC1oYXMta2V5KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUpKSB7XG4gICAgICAgICAgQGVhY2ggJGJwIGluIC16Zi1icmVha3BvaW50cy1sZXNzLXRoYW4oJC16Zi1zaXplKSB7XG4gICAgICAgICAgICBAaWYobWFwLWhhcy1rZXkoJGdyaWQtbWFyZ2luLWd1dHRlcnMsICRicCkpIHtcbiAgICAgICAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skYnB9LXVwLSN7JGl9IHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHh5LWJsb2NrLWdyaWQtbWF4IHtcbiAgICAgICAgLmdyaWQtbWFyZ2luLXguI3skLXpmLXNpemV9LXVwLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWxheW91dCgkbjogJGksICRzZWxlY3RvcjogJy5jZWxsJywgJGd1dHRlci10eXBlOiBtYXJnaW4sICRvdXRwdXQ6IChzaXplKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gQ29sbGFwc2UgY2xhc3Nlc1xuQG1peGluIHh5LWNvbGxhcHNlLWdyaWQtY2xhc3NlcygkbWFyZ2luLWdyaWQ6IHRydWUsICRwYWRkaW5nLWdyaWQ6IHRydWUpIHtcbiAgQGVhY2ggJGJwIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgICAgLiN7JGJwfS1tYXJnaW4tY29sbGFwc2Uge1xuICAgICAgICBAaW5jbHVkZSB4eS1ncmlkLWNvbGxhcHNlKCRndXR0ZXItdHlwZTogbWFyZ2luLCAkbWluLWJyZWFrcG9pbnQ6ICRicCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGlmICRwYWRkaW5nLWdyaWQge1xuICAgICAgLiN7JGJwfS1wYWRkaW5nLWNvbGxhcHNlIHtcbiAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1jb2xsYXBzZSgkZ3V0dGVyLXR5cGU6IHBhZGRpbmcsICRtaW4tYnJlYWtwb2ludDogJGJwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gT2Zmc2V0IGNsYXNzZXNcbkBtaXhpbiB4eS1vZmZzZXQtY2VsbC1jbGFzc2VzIHtcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgIC8vIE9mZnNldHNcbiAgICAgICRvOiAkaSAtIDE7XG5cbiAgICAgIC4jeyQtemYtc2l6ZX0tb2Zmc2V0LSN7JG99IHtcbiAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1vZmZzZXQoJG8sICRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG4gICAgICB9XG5cbiAgICAgIC5ncmlkLW1hcmdpbi14ID4gLiN7JC16Zi1zaXplfS1vZmZzZXQtI3skb30ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLW9mZnNldCgkbyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIFZlcnRpY2FsIEdyaWQgY2xhc3Nlc1xuQG1peGluIHh5LXZlcnRpY2FsLWdyaWQtY2xhc3NlcyhcbiAgJG1hcmdpbi1ncmlkOiB0cnVlLFxuICAkcGFkZGluZy1ncmlkOiB0cnVlXG4pIHtcblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgIEBpZiBub3QoJC16Zi1zaXplID09ICQtemYtemVyby1icmVha3BvaW50KSB7XG4gICAgfVxuICB9XG5cbiAgLmdyaWQteSB7XG4gICAgQGluY2x1ZGUgeHktZ3JpZCh2ZXJ0aWNhbCwgZmFsc2UpO1xuXG5cbiAgICA+IC5jZWxsIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtcmVzZXQoKTtcbiAgICB9XG5cbiAgICA+IC5hdXRvIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShhdXRvLCAkZ3V0dGVyLXR5cGU6IG5vbmUsICR2ZXJ0aWNhbDogdHJ1ZSk7XG4gICAgfVxuXG4gICAgPiAuc2hyaW5rIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZShzaHJpbmssICRndXR0ZXItdHlwZTogbm9uZSwgJHZlcnRpY2FsOiB0cnVlKTtcbiAgICB9XG5cblxuICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoKSB7XG4gICAgICAvLyBUaGlzIGlzIGEgYml0IG9mIGEgaGFjay93b3JrYXJvdW5kLCBzZWUgdGhlc2UgaXNzdWVzIGFuZCBQUnMgZm9yIHRoZSBiYWNrc3Rvcnk6XG4gICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMDI0NFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMjIyIGFuZFxuICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2ZvdW5kYXRpb24vZm91bmRhdGlvbi1zaXRlcy9wdWxsLzEwMTY0XG4gICAgICAkc3RyOiBcIj4gLiN7JC16Zi1zaXplfS1zaHJpbmssID4gLiN7JC16Zi1zaXplfS1mdWxsXCI7XG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAkc3RyOiAkc3RyICsgXCIsID4gLiN7JC16Zi1zaXplfS0jeyRpfVwiXG4gICAgICB9XG4gICAgICAjeyRzdHJ9IHtcbiAgICAgICAgZmxleC1iYXNpczogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KCkge1xuICAgICAgLy8gUmVzcG9uc2l2ZSBcImF1dG9cIiBtb2RpZmllclxuICAgICAgQGlmIG5vdCgkLXpmLXNpemUgPT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgPiAuI3skLXpmLXNpemV9LWF1dG8ge1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwoYXV0bywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2Uoc2hyaW5rKTtcbiAgICAgIH1cblxuICAgICAgLy8gUmVzcG9uc2l2ZSBcInNocmlua1wiIG1vZGlmaWVyXG4gICAgICBAaWYgbm90KCQtemYtc2l6ZSA9PSAkLXpmLXplcm8tYnJlYWtwb2ludCkge1xuICAgICAgICA+IC4jeyQtemYtc2l6ZX0tc2hyaW5rIHtcbiAgICAgICAgICBAZXh0ZW5kICUteHktY2VsbC1iYXNlLXNocmluay12ZXJ0aWNhbC0jeyQtemYtc2l6ZX07XG4gICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKHNocmluaywgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFJlc3BvbnNpdmUgd2lkdGggbW9kaWZpZXJzXG4gICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAvLyBTaXppbmcgKHBlcmNlbnRhZ2UpXG4gICAgICAgID4gLiN7JC16Zi1zaXplfS0jeyRpfSB7XG4gICAgICAgICAgQGV4dGVuZCAlLXh5LWNlbGwtYmFzZS1zaHJpbmstdmVydGljYWwtI3skLXpmLXNpemV9O1xuICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lLCAkdmVydGljYWw6IHRydWUpO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICBAaWYgJHBhZGRpbmctZ3JpZCB7XG4gICAgLmdyaWQtcGFkZGluZy15IHtcbiAgICAgIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3IgbmVzdGVkIGdyaWRzXG4gICAgICAuZ3JpZC1wYWRkaW5nLXkge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRuZWdhdGl2ZTogdHJ1ZSwgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG5cbiAgICAgIC8vIEJhc2UgY2VsbCBzdHlsZXNcbiAgICAgID4gLmNlbGwge1xuICAgICAgICBAaW5jbHVkZSB4eS1ndXR0ZXJzKCRndXR0ZXJzOiAkZ3JpZC1wYWRkaW5nLWd1dHRlcnMsICRndXR0ZXItdHlwZTogcGFkZGluZywgJGd1dHRlci1wb3NpdGlvbjogdG9wIGJvdHRvbSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICRtYXJnaW4tZ3JpZCB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3Nlcyh0b3AgYm90dG9tLCB0cnVlLCAnLmdyaWQtbWFyZ2luLXknKTtcbiAgfVxuXG59XG5cbkBtaXhpbiB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQ6IHRydWUsICRtYXJnaW4tZ3JpZDogdHJ1ZSkge1xuICAvLyBGcmFtZWQgZ3JpZCBzdHlsZXNcbiAgLmdyaWQtZnJhbWUge1xuICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWU7XG4gIH1cblxuICAuY2VsbCAuZ3JpZC1mcmFtZSB7XG4gICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gIH1cblxuICAuY2VsbC1ibG9jayB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jaygpO1xuICB9XG5cbiAgLmNlbGwtYmxvY2steSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgfVxuXG5cbiAgLmNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJsb2NrLWNvbnRhaW5lcigpO1xuICB9XG5cblxuICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG5cbiAgICAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZTtcbiAgICB9XG5cbiAgICAuY2VsbCAuI3skLXpmLXNpemV9LWdyaWQtZnJhbWUge1xuICAgICAgd2lkdGg6IDEwMCU7IC8vIFNhbWUgYXMgaW5jbHVkZSB3aXRoICRuZXN0ZWQsIGJ1dCB3aXRoIGxlc3MgY3NzXG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2soKTtcbiAgICB9XG5cbiAgICAuI3skLXpmLXNpemV9LWNlbGwtYmxvY2stY29udGFpbmVyIHtcbiAgICAgIEBpbmNsdWRlIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCk7XG4gICAgfVxuXG4gICAgLiN7JC16Zi1zaXplfS1jZWxsLWJsb2NrLXkge1xuICAgICAgQGluY2x1ZGUgeHktY2VsbC1ibG9jayh0cnVlKTtcbiAgICB9XG4gIH1cblxuICBAaWYgJHZlcnRpY2FsLWdyaWQge1xuICAgIC5ncmlkLXkge1xuICAgICAgJi5ncmlkLWZyYW1lIHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSk7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgJi4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgeHktZ3JpZC1mcmFtZSh0cnVlKTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICAgIC5jZWxsIHtcbiAgICAgIC5ncmlkLXkuZ3JpZC1mcmFtZSB7XG4gICAgICAgIGhlaWdodDogMTAwJTsgLy8gU2FtZSBhcyBpbmNsdWRlIHdpdGggJG5lc3RlZCwgYnV0IHdpdGggbGVzcyBjc3NcbiAgICAgIH1cbiAgICAgIEBpbmNsdWRlIC16Zi1lYWNoLWJyZWFrcG9pbnQoZmFsc2UpIHtcbiAgICAgICAgLmdyaWQteS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlOyAvLyBTYW1lIGFzIGluY2x1ZGUgd2l0aCAkbmVzdGVkLCBidXQgd2l0aCBsZXNzIGNzc1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpZiAkbWFyZ2luLWdyaWQge1xuICAgIEBpbmNsdWRlIHh5LW1hcmdpbi1ncmlkLWNsYXNzZXModG9wIGJvdHRvbSwgdHJ1ZSwgJy5ncmlkLW1hcmdpbi15Jyk7XG4gICAgLmdyaWQtZnJhbWUuZ3JpZC1tYXJnaW4teSB7XG4gICAgICBAaW5jbHVkZSB4eS1ncmlkLWZyYW1lKHRydWUsIGZhbHNlLCAkZ3JpZC1tYXJnaW4tZ3V0dGVycywgJGluY2x1ZGUtYmFzZTogZmFsc2UpO1xuICAgIH1cbiAgICBAaW5jbHVkZSAtemYtZWFjaC1icmVha3BvaW50KGZhbHNlKSB7XG4gICAgICAuZ3JpZC1tYXJnaW4teS4jeyQtemYtc2l6ZX0tZ3JpZC1mcmFtZSB7XG4gICAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUodHJ1ZSwgZmFsc2UsICRncmlkLW1hcmdpbi1ndXR0ZXJzLCAkLXpmLXNpemUsIGZhbHNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gRmluYWwgY2xhc3Nlc1xuQG1peGluIGZvdW5kYXRpb24teHktZ3JpZC1jbGFzc2VzKFxuICAkYmFzZS1ncmlkOiB0cnVlLFxuICAkbWFyZ2luLWdyaWQ6IHRydWUsXG4gICRwYWRkaW5nLWdyaWQ6IHRydWUsXG4gICRibG9jay1ncmlkOiB0cnVlLFxuICAkY29sbGFwc2U6IHRydWUsXG4gICRvZmZzZXQ6IHRydWUsXG4gICR2ZXJ0aWNhbC1ncmlkOiB0cnVlLFxuICAkZnJhbWUtZ3JpZDogdHJ1ZVxuKSB7XG5cbiAgLy8gQmFzZSBncmlkIHN0eWxlc1xuICBAaWYoJGJhc2UtZ3JpZCkge1xuICAgIEBpbmNsdWRlIHh5LWJhc2UtZ3JpZC1jbGFzc2VzKCk7XG4gIH1cblxuICAvLyBNYXJnaW4gZ3JpZFxuICBAaWYoJG1hcmdpbi1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktbWFyZ2luLWdyaWQtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gUGFkZGluZyBncmlkXG4gIEBpZigkcGFkZGluZy1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktcGFkZGluZy1ncmlkLWNsYXNzZXMoKTtcbiAgfVxuXG4gIC8vIEJsb2NrIGdyaWRcbiAgQGlmKCRibG9jay1ncmlkKSB7XG4gICAgQGluY2x1ZGUgeHktYmxvY2stZ3JpZC1jbGFzc2VzKCRtYXJnaW4tZ3JpZCwgJHBhZGRpbmctZ3JpZCk7XG4gIH1cblxuICAvLyBDb2xsYXBzZSBndXR0ZXJzXG4gIEBpZigkY29sbGFwc2UpIHtcbiAgICBAaW5jbHVkZSB4eS1jb2xsYXBzZS1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIC8vIE9mZnNldCBndXR0ZXJzXG4gIEBpZigkb2Zmc2V0KSB7XG4gICAgQGluY2x1ZGUgeHktb2Zmc2V0LWNlbGwtY2xhc3NlcygpO1xuICB9XG5cbiAgLy8gVmVydGljYWwgZ3JpZFxuICBAaWYoJHZlcnRpY2FsLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS12ZXJ0aWNhbC1ncmlkLWNsYXNzZXMoJG1hcmdpbi1ncmlkLCAkcGFkZGluZy1ncmlkKTtcbiAgfVxuXG4gIEBpZiAoJGZyYW1lLWdyaWQpIHtcbiAgICBAaW5jbHVkZSB4eS1mcmFtZS1ncmlkLWNsYXNzZXMoJHZlcnRpY2FsLWdyaWQsICRtYXJnaW4tZ3JpZClcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZSBndXR0ZXJzIGZvciBhIGNlbGwvY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBlaXRoZXIgbWFyZ2luIG9yIHBhZGRpbmcuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbiB0byBhcHBseSBndXR0ZXJzIHRvLiBBY2NlcHRzIGB0b3BgLCBgYm90dG9tYCwgYGxlZnRgLCBgcmlnaHRgIGluIGFueSBjb21iaW5hdGlvbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRuZWdhdGl2ZSBbZmFsc2VdIC0gV2hldGhlciB0byBhcHBseSB0aGUgZ3V0dGVyIGFzIGEgbmVnYXRpdmUgdmFsdWUuIENvbW1vbmx5IHVzZWQgZm9yIG5lc3RlZCBncmlkcy5cbkBtaXhpbiB4eS1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiByaWdodCBsZWZ0LFxuICAkbmVnYXRpdmU6IGZhbHNlXG4pIHtcbiAgJG9wZXJhdG9yOiBpZigkbmVnYXRpdmUsICctJywgJycpO1xuXG4gIC8vIElmIHdlIGhhdmUgZGVjbGFyZWQgbmVnYXRpdmUgZ3V0dGVycywgZm9yY2UgdHlwZSB0byBgbWFyZ2luLlxuICAkZ3V0dGVyLXR5cGU6IGlmKCRuZWdhdGl2ZSwgJ21hcmdpbicsICRndXR0ZXItdHlwZSk7XG5cbiAgLy8gT3V0cHV0IG91ciBtYXJnaW4gZ3V0dGVycy5cbiAgQGlmICh0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRndXR0ZXJzKSB7XG4gICAgICAkZ3V0dGVyOiByZW0tY2FsYygkLXpmLWJwLXZhbHVlKSAvIDI7XG5cbiAgICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICAjeyRndXR0ZXItdHlwZX0tI3skdmFsdWV9OiB1bnF1b3RlKFwiI3skb3BlcmF0b3J9I3skZ3V0dGVyfVwiKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2UgaWYgKHR5cGUtb2YoJGd1dHRlcnMpID09ICdudW1iZXInKSB7XG4gICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcnMpIC8gMjtcblxuICAgIC8vIExvb3AgdGhyb3VnaCBlYWNoIGd1dHRlciBwb3NpdGlvblxuICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICN7JGd1dHRlci10eXBlfS0jeyR2YWx1ZX06IHVucXVvdGUoXCIjeyRvcGVyYXRvcn0jeyRndXR0ZXJ9XCIpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIHh5LWdyaWRcbi8vLy9cblxuLy8vIENyZWF0ZXMgYSBtYXggd2lkdGggY29udGFpbmVyLCBkZXNpZ25lZCB0byBob3VzZSB5b3VyIGdyaWQgY29udGVudC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkd2lkdGggWyRncmlkLWNvbnRhaW5lcl0gLSBhIHdpZHRoIHRvIGxpbWl0IHRoZSBjb250YWluZXIgdG8uXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRwYWRkaW5nIFskZ3JpZC1jb250YWluZXItcGFkZGluZ10gLSBwYWRkaW5ncyBvZiB0aGUgY29udGFpbmVyLlxuQG1peGluIHh5LWdyaWQtY29udGFpbmVyKFxuICAkd2lkdGg6ICRncmlkLWNvbnRhaW5lcixcbiAgJHBhZGRpbmc6ICRncmlkLWNvbnRhaW5lci1wYWRkaW5nXG4pIHtcbiAgQGluY2x1ZGUgeHktZ3V0dGVycygkZ3V0dGVyczogJHBhZGRpbmcsICRndXR0ZXItdHlwZTogcGFkZGluZyk7XG5cbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cbi8vLyBDcmVhdGVzIGEgY29udGFpbmVyIGZvciB5b3VyIGZsZXggY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRkaXJlY3Rpb24gW2hvcml6b250YWxdIC0gRWl0aGVyIGhvcml6b250YWwgb3IgdmVydGljYWwgZGlyZWN0aW9uIG9mIGNlbGxzIHdpdGhpbi5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR3cmFwIFt0cnVlXSAtIElmIHRoZSBjZWxscyB3aXRoaW4gc2hvdWxkIHdyYXAgb3Igbm90LlxuQG1peGluIHh5LWdyaWQoXG4gICRkaXJlY3Rpb246IGhvcml6b250YWwsXG4gICR3cmFwOiB0cnVlXG4pIHtcbiAgJGRpcmVjdGlvbjogaWYoJGRpcmVjdGlvbiA9PSAnaG9yaXpvbnRhbCcsIHJvdywgY29sdW1uKTtcbiAgJHdyYXA6IGlmKCR3cmFwLCB3cmFwLCBub3dyYXApO1xuXG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZmxvdzogJGRpcmVjdGlvbiAkd3JhcDtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgZmxleCB2YWx1ZSBmb3IgYSBjZWxsIGJhc2UuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbi8vL1xuLy8vIEByZXR1cm5zIHtMaXN0fSBUaGUgY2VsbCBmbGV4IHByb3BlcnR5IHZhbHVlLlxuQGZ1bmN0aW9uIHh5LWNlbGwtYmFzZSgkc2l6ZTogZnVsbCkge1xuICBAaWYgKCRzaXplID09ICdhdXRvJykge1xuICAgIEByZXR1cm4gMSAxIDBweDtcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ2dyb3cnKSB7XG4gICAgQHJldHVybiAxIDAgYXV0bztcbiAgfVxuICBAZWxzZSBpZiAoJHNpemUgPT0gJ3Nocmluaycgb3IgJHNpemUgPT0gJ2Z1bGwnIG9yIHpmLWlzLWZyYWN0aW9uKCRzaXplLCAkYWxsb3ctbm8tZGVub21pbmF0b3I6IHRydWUpKSB7XG4gICAgQHJldHVybiAwIDAgYXV0bztcbiAgfVxuICBAcmV0dXJuIG51bGw7XG59XG5cbi8vLyBDYWxjdWxhdGUgdGhlIHNpemUgb2YgYSBjZWxsIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBndXR0ZXJzIG1hcCBgJGd1dHRlcnNgLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfE1hcH0gVGhlIGNlbGwgZ3V0dGVyIHNpemUgb3IgdGhlIHJlc3BvbnNpdmUgZ3V0dGVycyBtYXAuXG5AZnVuY3Rpb24geHktY2VsbC1ndXR0ZXJzKFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgLy8gRm9yIGBhdXRvYCwgcmV0dXJucyB0aGUgcmVzcG9uc2l2ZSBtYXAgYCRndXR0ZXJzYC5cbiAgQGlmICgkYnJlYWtwb2ludCA9PSAnYXV0bycpIHtcbiAgICBAcmV0dXJuICRndXR0ZXJzO1xuICB9XG5cbiAgLy8gVXNlIHRoZSBjb250ZXh0dWFsIGJyZWFrcG9pbnQgYnkgZGVmYXVsdC5cbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQpO1xuXG4gIEBpZiAoJGJyZWFrcG9pbnQpIHtcbiAgICBAcmV0dXJuIC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIH1cbiAgQGVsc2Uge1xuICAgIEByZXR1cm4gLXpmLWdldC1icC12YWwoJGd1dHRlcnMsICQtemYtemVyby1icmVha3BvaW50KSBvciAwO1xuICB9XG59XG5cbi8vLyBSZXR1cm5zIHRoZSBwZXJjZW50YWdlIHNpemUgb2YgYSBjZWxsLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TGlzdH0gJHNpemUgWyRncmlkLWNvbHVtbnNdIC0gU2l6ZSB0byBtYWtlIHRoZSBjZWxsLiBZb3UgY2FuIHBhc3MgYSB2YWx1ZSBpbiBtdWx0aXBsZSBmb3JtYXRzLCBzdWNoIGFzIGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzNgLlxuLy8vXG4vLy8gQHJldHVybnMge051bWJlcn0gU2l6ZSBvZiB0aGUgY2VsbCAoaW4gcGVyY2VudCkuXG5AZnVuY3Rpb24geHktY2VsbC1zaXplKFxuICAkc2l6ZTogJGdyaWQtY29sdW1uc1xuKSB7XG4gIEByZXR1cm4gZnJhY3Rpb24tdG8tcGVyY2VudGFnZSgkc2l6ZSwgJGRlbm9taW5hdG9yOiAkZ3JpZC1jb2x1bW5zKTtcbn1cblxuLy8vIFJldHVybnMgdGhlIGFwcHJvcHJpYXRlIENTUyB2YWx1ZSBmb3IgYSBjZWxsIHNpemUuXG4vLy9cbi8vLyBHdXR0ZXJzLXJlbGF0ZWQgYXJndW1lbnRzIGFyZSByZXF1aXJlZCBmb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycyAoYnkgZGVmYXVsdCkgYXMgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR8TnVtYmVyfSAkc2l6ZSBbZnVsbF0gLSBUaGUgc2l6ZSBvZiB5b3VyIGNlbGwuIENhbiBiZSBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2Agb3IgYW55IGZyYWN0aW9uIGxpa2UgYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIHJldHVybnMgYSBtYXAgb2Ygc2l6ZXMgYWRhcHRlZCB0byByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfE1hcH0gVGhlIGNlbGwgc2l6aW5nIHByb3BlcnR5IHZhbHVlLCBvciBhIHJlc3BvbnNpdmUgbWFwIG9mIHRoZW0uXG5AZnVuY3Rpb24geHktY2VsbC1zaXplLWNzcyhcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsXG4pIHtcbiAgJG1hcmdpbi1ndXR0ZXI6IDA7XG5cbiAgQGlmICgkc2l6ZSA9PSAnYXV0bycgb3IgJHNpemUgPT0gJ3NocmluaycpIHtcbiAgICBAcmV0dXJuIGF1dG87XG4gIH1cblxuICAvLyBGb3IgY2VsbHMgd2l0aCBtYXJnaW4gZ3V0dGVycywgdGhlIGd1dHRlciBpcyBpbmNsdWRlZCBpbiB0aGUgd2lkdGguXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG4gICAgJG1hcmdpbi1ndXR0ZXI6IHh5LWNlbGwtZ3V0dGVycygkZ3V0dGVycywgJGJyZWFrcG9pbnQpO1xuICAgIEBpZiAoJG1hcmdpbi1ndXR0ZXIgPT0gbnVsbCkge1xuICAgICAgQGVycm9yICd4eS1jZWxsLXNpemU6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgICB9XG4gIH1cblxuICAvLyBDYWxjdWxhdGUgdGhlIGNlbGwgc2l6ZSAobnVtYmVyKVxuICAkc2l6ZS1yYXc6IGlmKCRzaXplID09ICdmdWxsJywgMTAwJSwgeHktY2VsbC1zaXplKCRzaXplKSk7XG5cbiAgLy8gQ2FsY3VsYXRlIHRoZSBjZWxsIENTUyBzaXplIGluY2x1ZGluZyBndXR0ZXJzIChzdHJpbmcpXG4gIC8vIElmIHRoZSBjZWxsIGhhcyByZXNwb25zaXZlIG1hcmdpbiBndXR0ZXJzLCByZXR1cm4gYSByZXNwb25zaXZlIG1hcCBvZiBzaXplcy5cbiAgQGlmIHR5cGUtb2YoJG1hcmdpbi1ndXR0ZXIpID09ICdtYXAnIHtcbiAgICAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM6ICgpO1xuXG4gICAgQGVhY2ggJGJwLCAkbWcgaW4gJG1hcmdpbi1ndXR0ZXIge1xuICAgICAgJHNpemUtY3NzOiBpZigkbWcgPT0gMCwgJHNpemUtcmF3LCBjYWxjKCN7JHNpemUtcmF3fSAtICN7cmVtLWNhbGMoJG1nKX0pKTtcbiAgICAgICRyZXNwb25zaXZlLWNzcy1zaXplczogbWFwLW1lcmdlKCRyZXNwb25zaXZlLWNzcy1zaXplcywgKCRicDogJHNpemUtY3NzKSk7XG4gICAgfVxuXG4gICAgQHJldHVybiAkcmVzcG9uc2l2ZS1jc3Mtc2l6ZXM7XG4gIH1cbiAgLy8gT3RoZXJ3aXNlLCByZXR1cm4gYSBzaW5nbGUgQ1NTIHNpemUuXG4gIEBlbHNlIHtcbiAgICAkY3NzLXNpemU6IGlmKCRtYXJnaW4tZ3V0dGVyID09IDAsICRzaXplLXJhdywgY2FsYygjeyRzaXplLXJhd30gLSAje3JlbS1jYWxjKCRtYXJnaW4tZ3V0dGVyKX0pKTtcbiAgICBAcmV0dXJuICRjc3Mtc2l6ZTtcbiAgfVxufVxuXG4vLy8gU2V0cyBiYXNlIGZsZXggcHJvcGVydGllcyBmb3IgY2VsbHMuXG4vLy9cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQWNjZXB0cyBgZnVsbGAsIGBhdXRvYCwgYHNocmlua2AsIGBncm93YCwgb3IgYW55IG90aGVyIHZhbHVlIHJlcHJlc2VudGluZyBhIGNlbGwgc2l6ZSAoaXQgd2lsbCBiZSB0cmVhdGVkIGFzIGBzaHJpbmtgKS5cbkBtaXhpbiB4eS1jZWxsLWJhc2UoJHNpemU6IGZ1bGwpIHtcbiAgJGJhc2U6IHh5LWNlbGwtYmFzZSgkc2l6ZSk7XG5cbiAgZmxleDogI3skYmFzZX07XG5cbiAgLy8gU2V0IGJhc2Ugc3R5bGVzIGZvciBcImZ1bGxcIiBvbmx5XG4gIEBpZigkc2l6ZSA9PSAnZnVsbCcpIHtcbiAgICBtaW4taGVpZ2h0OiAwcHg7XG4gICAgbWluLXdpZHRoOiAwcHg7XG4gIH1cbn1cblxuLy8vIFJlc2V0cyBhIGNlbGxzIHdpZHRoIChvciBoZWlnaHQgaWYgdmVydGljYWwgaXMgdHJ1ZSkgYXMgd2VsbCBhcyBzdHJpcHMgaXRzIGd1dHRlcnMuXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1yZXNldCgkdmVydGljYWw6IHRydWUpIHtcbiAgJGRpcmVjdGlvbjogaWYoJHZlcnRpY2FsID09IHRydWUsIGhlaWdodCwgd2lkdGgpO1xuICAjeyRkaXJlY3Rpb259OiBhdXRvO1xuICBtYXgtI3skZGlyZWN0aW9ufTogbm9uZTtcbn1cblxuLy8vIFNldHMgc2l6aW5nIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gR3V0dGVycy1yZWxhdGVkIGFyZ3VtZW50cyBhcmUgcmVxdWlyZWQgZm9yIGNlbGxzIHdpdGggbWFyZ2luIGd1dHRlcnMgKGJ5IGRlZmF1bHQpIGFzIHRoZSBndXR0ZXIgaXMgaW5jbHVkZWQgaW4gdGhlIHdpZHRoLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBUeXBlIG9mIGd1dHRlciB0byBvdXRwdXQuIEFjY2VwdHMgYG1hcmdpbmAsIGBwYWRkaW5nYCBvciBgbm9uZWAuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS4gSWYgYGF1dG9gLCBnZW5lcmF0ZXMgc2l6ZXMgYWRhcHRlZCBmb3IgcmVzcG9uc2l2ZSBndXR0ZXJzLiBJZiB1c2luZyB3aXRoIHRoZSBgYnJlYWtwb2ludCgpYCBtaXhpbiB0aGlzIHdpbGwgYmUgc2V0IGF1dG9tYXRpY2FsbHkgdW5sZXNzIG1hbnVhbGx5IGVudGVyZWQuXG4vLy8gQHBhcmFtIHtCb29sZWFufSAkdmVydGljYWwgW2ZhbHNlXSAtIFNldCB0byB0cnVlIHRvIG91dHB1dCB2ZXJ0aWNhbCAoaGVpZ2h0KSBzdHlsZXMgcmF0aGVyIHRoYW4gd2lkdGhzLlxuQG1peGluIHh5LWNlbGwtc2l6ZShcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHNpemVzOiB4eS1jZWxsLXNpemUtY3NzKCRzaXplLCAkZ3V0dGVycywgJGd1dHRlci10eXBlLCAkYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCBoZWlnaHQsIHdpZHRoKTtcblxuICBAaWYgKHR5cGUtb2YoJHNpemVzKSA9PSAnbWFwJykge1xuICAgIEBpbmNsdWRlIC16Zi1icmVha3BvaW50LXZhbHVlKGF1dG8sICRzaXplcykge1xuICAgICAgI3skZGlyZWN0aW9ufTogJC16Zi1icC12YWx1ZTtcbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuICAgICN7JGRpcmVjdGlvbn06ICRzaXplcztcbiAgfVxufVxuXG4vLy8gU2V0cyBndXR0ZXJzIHByb3BlcnRpZXMgZm9yIGNlbGxzLlxuLy8vXG4vLy8gQHBhcmFtIHtOdW1iZXJ8TWFwfSAkZ3V0dGVycyBbJGdyaWQtbWFyZ2luLWd1dHRlcnNdIC0gTWFwIG9yIHNpbmdsZSB2YWx1ZSBmb3IgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFR5cGUgb2YgZ3V0dGVyIHRvIG91dHB1dC4gQWNjZXB0cyBgbWFyZ2luYCwgYHBhZGRpbmdgIG9yIGBub25lYC5cbi8vLyBAcGFyYW0ge0xpc3R9ICRndXR0ZXItcG9zaXRpb24gW251bGxdIC0gVGhlIHBvc2l0aW9uIHRvIGFwcGx5IGd1dHRlcnMgdG8uIEFjY2VwdHMgYHRvcGAsIGBib3R0b21gLCBgbGVmdGAsIGByaWdodGAgaW4gYW55IGNvbWJpbmF0aW9uLiBCeSBkZWZhdWx0IGByaWdodCBsZWZ0YCBmb3IgaG9yaXpvbnRhbCBjZWxscyBhbmQgYHRvcCBib3R0b21gIGZvciB2ZXJ0aWNhbCBjZWxscy5cbi8vLyBAcGFyYW0ge1N0cmluZ30gJGJyZWFrcG9pbnQgW251bGxdIC0gVGhlIG5hbWUgb2YgdGhlIGJyZWFrcG9pbnQgc2l6ZSBpbiB5b3VyIGd1dHRlcnMgbWFwIHRvIGdldCB0aGUgc2l6ZSBmcm9tLiBJZiBgYXV0b2AsIGdlbmVyYXRlcyByZXNwb25zaXZlIGd1dHRlcnMuIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gRGlyZWN0aW9uIG9mIHRoZSBndXR0ZXJzIHRvIG91dHB1dC4gU2VlIGAkZ3V0dGVyLXBvc2l0aW9uYC5cbkBtaXhpbiB4eS1jZWxsLWd1dHRlcnMoXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgLy8gR2V0IHRoZSBkZWZhdWx0IGd1dHRlciBwb3NpdGlvbiBhY2NvcmRpbmcgdG8gY2VsbCBkaXJlY3Rpb25cbiAgQGlmKCRndXR0ZXItcG9zaXRpb24gPT0gbnVsbCkge1xuICAgICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcbiAgfVxuXG4gIC8vIEdldCB0aGUgZ3V0dGVyIHdpZHRoIGZvciB0aGlzIGJyZWFrcG9pbnRcbiAgJGd1dHRlci13aWR0aDogeHktY2VsbC1ndXR0ZXJzKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gIEBpZiAoJGd1dHRlci13aWR0aCA9PSBudWxsKSB7XG4gICAgQGVycm9yICd4eS1jZWxsLWd1dHRlcnM6IG5vIGd1dHRlcnMgd2VyZSBmb3VuZCBpbiBgJGd1dHRlcnNgIGZvciBcIiRicmVha3BvaW50OiAjeyRicmVha3BvaW50fVwiJztcbiAgfVxuXG4gIEBpZiAoJGd1dHRlci10eXBlIGFuZCAkZ3V0dGVyLXR5cGUgIT0gbm9uZSkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlci13aWR0aCwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuXG4vLy8gQ3JlYXRlcyBhIGNlbGwgZm9yIHlvdXIgZ3JpZC5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZHxOdW1iZXJ9ICRzaXplIFtmdWxsXSAtIFRoZSBzaXplIG9mIHlvdXIgY2VsbC4gQ2FuIGJlIGBmdWxsYCAoMTAwJSB3aWR0aCksIGBhdXRvYCAodXNlIGFsbCBhdmFpbGFibGUgc3BhY2UpLCBgc2hyaW5rYCAodXNlIG9ubHkgdGhlIHJlcXVpcmVkIHNwYWNlKSBvciBhbnkgZnJhY3Rpb24gKGA2YCwgYDUwJWAsIGAxIG9mIDJgIG9yIGAxLzJgLi4uKS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIGBhdXRvYCwgZ2VuZXJhdGVzIHJlc3BvbnNpdmUgZ3V0dGVycy4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBTZXQgdG8gdHJ1ZSB0byBvdXRwdXQgdmVydGljYWwgKGhlaWdodCkgc3R5bGVzIHJhdGhlciB0aGFuIHdpZHRocy5cbi8vLyBAcGFyYW0ge0xpc3R9ICRvdXRwdXQgWyhiYXNlIHNpemUgZ3V0dGVycyldIC0gQ2VsbCBwYXJ0cyB0byBvdXRwdXQuIFlvdSB3aWxsIG5lZWQgdG8gZ2VuZXJhdGUgb3RoZXJzIHBhcnRzIG9mIHRoZSBjZWxsIHNlcGVyYXRlbHksIGl0IG1heSBub3Qgd29yayBwcm9wZXJseSBvdGhlcndpc2UuXG5AbWl4aW4geHktY2VsbChcbiAgJHNpemU6IGZ1bGwsXG4gICRndXR0ZXItb3V0cHV0OiBudWxsLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkZ3V0dGVyLXBvc2l0aW9uOiBudWxsLFxuICAkYnJlYWtwb2ludDogbnVsbCxcbiAgJHZlcnRpY2FsOiBmYWxzZSxcbiAgJG91dHB1dDogKGJhc2Ugc2l6ZSBndXR0ZXJzKVxuKSB7XG4gIC8vIERlZmF1bHQgZm9yICRndXR0ZXItb3V0cHV0XG4gIEBpZiAoJGd1dHRlci1vdXRwdXQgIT0gbnVsbCkge1xuICAgIEB3YXJuICd4eS1jZWxsOiAkZ3V0dGVyLW91dHB1dCBpcyBkZXByZWNhdGVkIGFuZCB3aWxsIGJlIHJlbW92ZWQuIFNlZSBtaWdyYXRpb24gbm90ZXMgYXQgaHR0cHM6Ly9naXQuaW8vZm91bmRhdGlvbi02LTYtMCc7XG4gICAgQGlmICgkZ3V0dGVyLW91dHB1dCA9PSBmYWxzZSkge1xuICAgICAgJG91dHB1dDogc2wtcmVtb3ZlKCRvdXRwdXQsIGd1dHRlcnMpO1xuICAgIH1cbiAgfVxuXG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgYmFzZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWJhc2UoJHNpemUpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgc2l6ZSkpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLXNpemUoJHNpemUsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRicmVha3BvaW50LCAkdmVydGljYWwpO1xuICB9XG4gIEBpZiAoaW5kZXgoJG91dHB1dCwgZ3V0dGVycykpIHtcbiAgICBAaW5jbHVkZSB4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRndXR0ZXItdHlwZSwgJGd1dHRlci1wb3NpdGlvbiwgJGJyZWFrcG9pbnQsICR2ZXJ0aWNhbCk7XG4gIH1cbn1cblxuLy8vIENyZWF0ZXMgYSBzaW5nbGUgYnJlYWtwb2ludCBzaXplZCBncmlkLiBVc2VkIHRvIGdlbmVyYXRlIG91ciBncmlkIGNsYXNzZXMuXG4vLy9cbi8vLyBgeHktY2VsbC1zdGF0aWMoKWAgaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLlxuLy8vIFVzZSBgeHktY2VsbCgpYCBpbnN0ZWFkIHdpdGggYCRvdXRwdXQ6IChzaXplIGd1dHRlcnMpYCB0byBub3QgZ2VuZXJhdGUgdGhlIGNlbGwgYmFzZS5cbi8vLyBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTBcbi8vL1xuLy8vIEBkZXByZWNhdGVkIHY2LjYuMFxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfE51bWJlcn0gJHNpemUgW2Z1bGxdIC0gVGhlIHNpemUgb2YgeW91ciBjZWxsLiBDYW4gYmUgYGZ1bGxgICgxMDAlIHdpZHRoKSwgYGF1dG9gICh1c2UgYWxsIGF2YWlsYWJsZSBzcGFjZSksIGBzaHJpbmtgICh1c2Ugb25seSB0aGUgcmVxdWlyZWQgc3BhY2UpIG9yIGFueSBmcmFjdGlvbiAoYDZgLCBgNTAlYCwgYDEgb2YgMmAgb3IgYDEvMmAuLi4pLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJGd1dHRlci1vdXRwdXQgW3RydWVdIC0gV2hldGhlciBvciBub3QgdG8gb3V0cHV0IGd1dHRlcnMuIEFsd2F5cyBgdHJ1ZWAgZm9yIG1hcmdpbiBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG5AbWl4aW4geHktY2VsbC1zdGF0aWMoXG4gICRzaXplOiBmdWxsLFxuICAkZ3V0dGVyLW91dHB1dDogdHJ1ZSxcbiAgJGd1dHRlcnM6ICRncmlkLW1hcmdpbi1ndXR0ZXJzLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGJyZWFrcG9pbnQ6ICQtemYtemVyby1icmVha3BvaW50LFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgQHdhcm4gJ3h5LWNlbGwtc3RhdGljKCkgbWl4aW4gaXMgZGVwcmVjYXRlZCBhbmQgd2lsbCBiZSByZW1vdmVkLiBVc2UgXCJ4eS1jZWxsKClcIiBpbnN0ZWFkLiBTZWUgbWlncmF0aW9uIG5vdGVzIGF0IGh0dHBzOi8vZ2l0LmlvL2ZvdW5kYXRpb24tNi02LTAnO1xuXG4gICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG4gICRndXR0ZXItcG9zaXRpb246IGlmKCR2ZXJ0aWNhbCA9PSB0cnVlLCB0b3AgYm90dG9tLCBsZWZ0IHJpZ2h0KTtcblxuICAkLWd1dHRlci1vdXRwdXQ6IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgdHJ1ZSwgJGd1dHRlci1vdXRwdXQpO1xuICAkLWd1dHRlci1tYXJnaW46IGlmKCRndXR0ZXItdHlwZSA9PSAnbWFyZ2luJywgJGd1dHRlciwgMCk7XG5cbiAgQGluY2x1ZGUgLXh5LWNlbGwtcHJvcGVydGllcygkc2l6ZSwgJC1ndXR0ZXItbWFyZ2luLCAkdmVydGljYWwpO1xuICBAaWYgKCQtZ3V0dGVyLW91dHB1dCkge1xuICAgIEBpbmNsdWRlIHh5LWd1dHRlcnMoJGd1dHRlciwgJGd1dHRlci10eXBlLCAkZ3V0dGVyLXBvc2l0aW9uKTtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGZ1bmN0aW9uc1xuLy8vL1xuXG4vLy8gRmluZHMgdGhlIGdyZWF0ZXN0IGNvbW1vbiBkaXZpc29yIG9mIHR3byBpbnRlZ2Vycy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYSAtIEZpcnN0IG51bWJlciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkYiAtIFNlY29uZCBudW1iZXIgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBncmVhdGVzdCBjb21tb24gZGl2aXNvci5cbkBmdW5jdGlvbiBnY2QoJGEsICRiKSB7XG4gIC8vIEZyb206IGh0dHA6Ly9yb3NldHRhY29kZS5vcmcvd2lraS9HcmVhdGVzdF9jb21tb25fZGl2aXNvciNKYXZhU2NyaXB0XG4gIEBpZiAoJGIgIT0gMCkge1xuICAgIEByZXR1cm4gZ2NkKCRiLCAkYSAlICRiKTtcbiAgfVxuICBAZWxzZSB7XG4gICAgQHJldHVybiBhYnMoJGEpO1xuICB9XG59XG5cbi8vLyBIYW5kbGVzIGRlY2ltYWwgZXhwb25lbnRzIGJ5IHRyeWluZyB0byBjb252ZXJ0IHRoZW0gaW50byBhIGZyYWN0aW9uIGFuZCB0aGVuIHVzZSBhIG50aC1yb290LWFsZ29yaXRobSBmb3IgcGFydHMgb2YgdGhlIGNhbGN1bGF0aW9uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJGJhc2UgLSBUaGUgYmFzZSBudW1iZXIuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRleHBvbmVudCAtIFRoZSBleHBvbmVudC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBwcm9kdWN0IG9mIHRoZSBleHBvbmVudGlhdGlvbi5cbkBmdW5jdGlvbiBwb3coJGJhc2UsICRleHBvbmVudCwgJHByZWM6IDE2KSB7XG4gIEBpZiAoZmxvb3IoJGV4cG9uZW50KSAhPSAkZXhwb25lbnQpIHtcbiAgICAkcHJlYzIgOiBwb3coMTAsICRwcmVjKTtcbiAgICAkZXhwb25lbnQ6IHJvdW5kKCRleHBvbmVudCAqICRwcmVjMik7XG4gICAgJGRlbm9taW5hdG9yOiBnY2QoJGV4cG9uZW50LCAkcHJlYzIpO1xuICAgIEByZXR1cm4gbnRoLXJvb3QocG93KCRiYXNlLCAkZXhwb25lbnQgLyAkZGVub21pbmF0b3IpLCAkcHJlYzIgLyAkZGVub21pbmF0b3IsICRwcmVjKTtcbiAgfVxuXG4gICR2YWx1ZTogJGJhc2U7XG4gIEBpZiAkZXhwb25lbnQgPiAxIHtcbiAgICBAZm9yICRpIGZyb20gMiB0aHJvdWdoICRleHBvbmVudCB7XG4gICAgICAkdmFsdWU6ICR2YWx1ZSAqICRiYXNlO1xuICAgIH1cbiAgfVxuICBAZWxzZSBpZiAkZXhwb25lbnQgPCAxIHtcbiAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoIC0kZXhwb25lbnQge1xuICAgICAgJHZhbHVlOiAkdmFsdWUgLyAkYmFzZTtcbiAgICB9XG4gIH1cblxuICBAcmV0dXJuICR2YWx1ZTtcbn1cblxuQGZ1bmN0aW9uIG50aC1yb290KCRudW0sICRuOiAyLCAkcHJlYzogMTIpIHtcbiAgLy8gRnJvbTogaHR0cDovL3Jvc2V0dGFjb2RlLm9yZy93aWtpL050aF9yb290I0phdmFTY3JpcHRcbiAgJHg6IDE7XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkcHJlYyB7XG4gICAgJHg6IDEgLyAkbiAqICgoJG4gLSAxKSAqICR4ICsgKCRudW0gLyBwb3coJHgsICRuIC0gMSkpKTtcbiAgfVxuXG4gIEByZXR1cm4gJHg7XG59XG5cbi8vLyBDYWxjdWxhdGVzIHRoZSBoZWlnaHQgYXMgYSBwZXJjZW50YWdlIG9mIHRoZSB3aWR0aCBmb3IgYSBnaXZlbiByYXRpby5cbi8vLyBAcGFyYW0ge0xpc3R9ICRyYXRpbyAtIFJhdGlvIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIGhlaWdodCwgZm9ybWF0dGVkIGFzIGB4IGJ5IHlgLlxuLy8vIEByZXR1cm4ge051bWJlcn0gQSBwZXJjZW50YWdlIHZhbHVlIGZvciB0aGUgaGVpZ2h0IHJlbGF0aXZlIHRvIHRoZSB3aWR0aCBvZiBhIHJlc3BvbnNpdmUgY29udGFpbmVyLlxuQGZ1bmN0aW9uIHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKSB7XG4gICR3OiBudGgoJHJhdGlvLCAxKTtcbiAgJGg6IG50aCgkcmF0aW8sIDMpO1xuICBAcmV0dXJuICRoIC8gJHcgKiAxMDAlO1xufVxuXG4vLy8gUGFyc2UgdGhlIGdpdmVuIGAkZnJhY3Rpb25gIHRvIG51bWVyYXRvcnMgYW5kIGRlbnVtZXJhdG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJGZyYWN0aW9uIC0gVmFsdWUgcmVwcmVzZW50aW5nIGEgZnJhY3Rpb24gdG8gcGFyc2UuIEl0IGNhbiBiZSBmb3JtYXR0ZWQgYXMgYDUwJWAsIGAxIG9mIDJgLCBgMS8yYCBvciBgNTBgIChubyBkZW5vbWluYXRvciB3b3VsZCBiZSByZXR1cm5lZCkuXG4vLy9cbi8vLyBAcmV0dXJuIHtMaXN0fSBMaXN0IG9mIHBhcnNlZCB2YWx1ZXMgd2l0aCBudW1lcmF0b3IgYXQgZmlyc3QgcG9zaXRpb24gYW5kIGRlbnVtZXJhdG9yIGFzIHNlY29uZC4gVGhlc2UgdmFsdWVzIG1heSBiZSBudWxsLlxuQGZ1bmN0aW9uIHpmLXBhcnNlLWZyYWN0aW9uKCRmcmFjdGlvbikge1xuXG4gIEBpZiB0eXBlLW9mKCRmcmFjdGlvbikgPT0gJ251bWJlcicge1xuICAgIC8vIFwiNTAlXCJcbiAgICBAaWYgdW5pdCgkZnJhY3Rpb24pID09ICclJyB7XG4gICAgICBAcmV0dXJuIChzdHJpcC11bml0KCRmcmFjdGlvbiksIDEwMCk7XG4gICAgfVxuICAgIEBlbHNlIGlmICh1bml0KCRmcmFjdGlvbikgPT0gJycpIHtcbiAgICAgIC8vIFwiMC41XCJcbiAgICAgIEBpZiAkZnJhY3Rpb24gPCAxIHtcbiAgICAgICAgQHJldHVybiAoJGZyYWN0aW9uICogMTAwLCAxMDApO1xuICAgICAgfVxuICAgICAgLy8gXCI1MFwiXG4gICAgICBAZWxzZSB7XG4gICAgICAgIEByZXR1cm4gKCRmcmFjdGlvbiwgbnVsbCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGVsc2UgaWYgdHlwZS1vZigkZnJhY3Rpb24pID09ICdsaXN0JyB7XG4gICAgLy8gXCI1MCBvZiAxMDBcIiwgXCI1MC8xMDBcIi4uLlxuICAgIEBpZiBsZW5ndGgoJGZyYWN0aW9uKSA9PSAzXG4gICAgICBhbmQgdHlwZS1vZihudGgoJGZyYWN0aW9uLCAxKSA9PSAnbnVtYmVyJylcbiAgICAgIGFuZCB0eXBlLW9mKG50aCgkZnJhY3Rpb24sIDMpID09ICdudW1iZXInKSB7XG4gICAgICBAcmV0dXJuIChudGgoJGZyYWN0aW9uLCAxKSwgbnRoKCRmcmFjdGlvbiwgMykpO1xuICAgIH1cbiAgfVxuXG4gIEByZXR1cm4gKG51bGwsIG51bGwpO1xufVxuXG4vLy8gUmV0dXJucyB3aGV0aGVyIHRoZSBnaXZlbiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24uIFN1cHBvcnRzIGZvcm1hdHMgbGlrZSBgNTAlYCwgYDEgb2YgMmAsIGAxIHBlciAyYCBvciBgMS8yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Kn0gJHZhbHVlIC0gVmFsdWUgdG8gdGVzdC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRhbGxvdy1uby1kZW5vbWluYXRvciBbZmFsc2VdIC0gSWYgYHRydWVgLCBzaW1wbGUgbnVtYmVycyB3aXRob3V0IGRlbm9taW5hdG9ycyBsaWtlIGA1MGAgYXJlIHN1cHBvcnRlZC5cbi8vL1xuLy8vIEByZXR1cm4ge0Jvb2xlYW59IGB0cnVlYCBpZiBgJHZhbHVlYCByZXByZXNlbnRzIGEgZnJhY3Rpb24sIGBmYWxzZWAgb3RoZXJ3aXNlLlxuQGZ1bmN0aW9uIHpmLWlzLWZyYWN0aW9uKCR2YWx1ZSwgJGFsbG93LW5vLWRlbm9taW5hdG9yOiBmYWxzZSkge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkdmFsdWUpO1xuICBAcmV0dXJuIG5vdChudGgoJHBhcnNlZCwgMSkgPT0gbnVsbFxuICAgIG9yIChudGgoJHBhcnNlZCwgMikgPT0gbnVsbCBhbmQgJGFsbG93LW5vLWRlbm9taW5hdG9yID09IGZhbHNlKSk7XG59XG5cbi8vLyBDYWxjdWxhdGUgYSBwZXJjZW50YWdlIGZyb20gYSBnaXZlbiBmcmFjdGlvbi5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRmcmFjdGlvbiAtIFZhbHVlIHJlcHJlc2VudGluZyBhIGZyYWN0aW9uIHRvIHVzZSB0byBjYWxjdWxhdGUgdGhlIHBlcmNlbnRhZ2UsIGZvcm1hdHRlZCBhcyBgNTBgIChyZWxhdGl2ZSB0byBgJGRlbm9taW5hdG9yYCksIGA1MCVgLCBgMSBvZiAyYCBvciBgMS8yYC5cbi8vLyBAcGFyYW0ge051bWJlcnxMaXN0fSAkZGVub21pbmF0b3IgLSBEZWZhdWx0IHZhbHVlIHRvIHVzZSBhcyBkZW5vbWluYXRvciB3aGVuIGAkZnJhY3Rpb25gIHJlcHJlc2VudHMgYW4gYWJzb2x1dGUgdmFsdWUuXG5AZnVuY3Rpb24gZnJhY3Rpb24tdG8tcGVyY2VudGFnZShcbiAgJGZyYWN0aW9uLFxuICAkZGVub21pbmF0b3I6IG51bGxcbikge1xuICAkcGFyc2VkOiB6Zi1wYXJzZS1mcmFjdGlvbigkZnJhY3Rpb24pO1xuICAkcGFyc2VkLW5vbWluYXRvcjogbnRoKCRwYXJzZWQsIDEpO1xuICAkcGFyc2VkLWRlbm9taW5hdG9yOiBudGgoJHBhcnNlZCwgMik7XG5cbiAgQGlmICRwYXJzZWQtbm9taW5hdG9yID09IG51bGwge1xuICAgIEBlcnJvciAnV3Jvbmcgc3ludGF4IGZvciBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBVc2UgYSBudW1iZXIsIGRlY2ltYWwsIHBlcmNlbnRhZ2UsIG9yIFwibiBvZiBuXCIgLyBcIm4vblwiLic7XG4gIH1cbiAgQGlmICRwYXJzZWQtZGVub21pbmF0b3IgPT0gbnVsbCB7XG4gICAgQGlmIHR5cGUtb2YoJGRlbm9taW5hdG9yKSA9PSAnbnVtYmVyJyB7XG4gICAgICAkcGFyc2VkLWRlbm9taW5hdG9yOiAkZGVub21pbmF0b3I7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBlcnJvciAnRXJyb3Igd2l0aCBcImZyYWN0aW9uLXRvLXBlcmNlbnRhZ2UoKVwiLiBBIGRlZmF1bHQgXCIkZGVub21pbmF0b3JcIiBpcyByZXF1aXJlZCB0byBzdXBwb3J0IGFic29sdXRlIHZhbHVlcyc7XG4gICAgfVxuICB9XG5cbiAgQHJldHVybiBwZXJjZW50YWdlKCRwYXJzZWQtbm9taW5hdG9yIC8gJHBhcnNlZC1kZW5vbWluYXRvcik7XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gU2l6ZXMgY2hpbGQgZWxlbWVudHMgc28gdGhhdCBgJG5gIG51bWJlciBvZiBpdGVtcyBhcHBlYXIgb24gZWFjaCByb3cuXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlcn0gJG4gLSBOdW1iZXIgb2YgZWxlbWVudHMgdG8gZGlzcGxheSBwZXIgcm93LlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkc2VsZWN0b3IgWycuY2VsbCddIC0gU2VsZWN0b3IocykgdG8gdXNlIGZvciBjaGlsZCBlbGVtZW50cy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRndXR0ZXItb3V0cHV0IFtudWxsXSAtIFtERVBSRUNBVEVEXSBXaGV0aGVyIG9yIG5vdCB0byBvdXRwdXQgZ3V0dGVycy5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFskZ3JpZC1tYXJnaW4tZ3V0dGVyc10gLSBNYXAgb3Igc2luZ2xlIHZhbHVlIGZvciBndXR0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGd1dHRlci10eXBlIFttYXJnaW5dIC0gVHlwZSBvZiBndXR0ZXIgdG8gb3V0cHV0LiBBY2NlcHRzIGBtYXJnaW5gLCBgcGFkZGluZ2Agb3IgYG5vbmVgLlxuLy8vIEBwYXJhbSB7TGlzdH0gJGd1dHRlci1wb3NpdGlvbiBbbnVsbF0gLSBUaGUgcG9zaXRpb24gdG8gYXBwbHkgZ3V0dGVycyB0by4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uIEJ5IGRlZmF1bHQgYHJpZ2h0IGxlZnRgIGZvciBob3Jpem9udGFsIGNlbGxzIGFuZCBgdG9wIGJvdHRvbWAgZm9yIHZlcnRpY2FsIGNlbGxzLlxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgYnJlYWtwb2ludCB0byB1c2UgZm9yIHRoZSBjZWxsIGdlbmVyYXRpb24uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gU2V0IHRvIHRydWUgdG8gb3V0cHV0IHZlcnRpY2FsIChoZWlnaHQpIHN0eWxlcyByYXRoZXIgdGhhbiB3aWR0aHMuXG4vLy8gQHBhcmFtIHtMaXN0fSAkb3V0cHV0IFsoYmFzZSBzaXplIGd1dHRlcnMpXSAtIENlbGwgcGFydHMgdG8gb3V0cHV0LiBZb3Ugd2lsbCBuZWVkIHRvIGdlbmVyYXRlIG90aGVycyBwYXJ0cyBvZiB0aGUgY2VsbCBzZXBlcmF0ZWx5LCBpdCBtYXkgbm90IHdvcmsgY29ycmVjdGx5IG90aGVyd2lzZS5cbkBtaXhpbiB4eS1ncmlkLWxheW91dChcbiAgJG4sXG4gICRzZWxlY3RvcjogJy5jZWxsJyxcbiAgJGd1dHRlci1vdXRwdXQ6IG51bGwsXG4gICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAgJGd1dHRlci10eXBlOiBtYXJnaW4sXG4gICRndXR0ZXItcG9zaXRpb246IG51bGwsXG4gICRicmVha3BvaW50OiBudWxsLFxuICAkdmVydGljYWw6IGZhbHNlLFxuICAkb3V0cHV0OiAoYmFzZSBzaXplIGd1dHRlcnMpXG4pIHtcbiAgJHNpemU6IHBlcmNlbnRhZ2UoMS8kbik7XG5cbiAgJiA+ICN7JHNlbGVjdG9yfSB7XG4gICAgQGluY2x1ZGUgeHktY2VsbCgkc2l6ZSwgJGd1dHRlci1vdXRwdXQsICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUsICRndXR0ZXItcG9zaXRpb24sICRicmVha3BvaW50LCAkdmVydGljYWwsICRvdXRwdXQpO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgeHktZ3JpZFxuLy8vL1xuXG4vLy8gQ29sbGFwc2VzIHRoZSBncmlkIGEgY2VsbHMgd2l0aGluIGl0LlxuLy8vXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRzZWxlY3RvciBbLmNlbGxdIC0gVGhlIGNoaWxkIGVsZW1lbnQgdG8gcmVtb3ZlIHRoZSBndXR0ZXIgZnJvbS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRndXR0ZXItdHlwZSBbbWFyZ2luXSAtIFRoZSB0eXBlIG9mIGd1dHRlciB0byByZW1vdmUuXG4vLy8gQHBhcmFtIHtMaXN0fSAkZ3V0dGVyLXBvc2l0aW9uIFtyaWdodCBsZWZ0XSAtIFRoZSBwb3NpdGlvbnMgdG8gcmVtb3ZlIGd1dHRlcnMgZnJvbS4gQWNjZXB0cyBgdG9wYCwgYGJvdHRvbWAsIGBsZWZ0YCwgYHJpZ2h0YCBpbiBhbnkgY29tYmluYXRpb24uXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkbWluLWJyZWFrcG9pbnQgWyQtemYtemVyby1icmVha3BvaW50XSAtIE1pbmltdW0gYnJlYWtwb2ludCBpbiBgJGJyZWFrcG9pbnQtY2xhc3Nlc2AgZm9yIHdoaWNoIHRvIGNvbGxhcHNlIHRoZSBndXR0ZXIuXG5AbWl4aW4geHktZ3JpZC1jb2xsYXBzZShcbiAgJHNlbGVjdG9yOiAnLmNlbGwnLFxuICAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAgJGd1dHRlci1wb3NpdGlvbjogcmlnaHQgbGVmdCxcbiAgJG1pbi1icmVha3BvaW50OiAkLXpmLXplcm8tYnJlYWtwb2ludFxuKSB7XG4gIC8vIEZpcnN0LCBsZXRzIG5lZ2F0ZSBhbnkgbWFyZ2lucyBvbiB0aGUgdG9wIGxldmVsXG4gIEBpZiAoJGd1dHRlci10eXBlID09ICdtYXJnaW4nKSB7XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCRtaW4tYnJlYWtwb2ludCkge1xuICAgICAgQGVhY2ggJHZhbHVlIGluICRndXR0ZXItcG9zaXRpb24ge1xuICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgfVxuXG4gICAgICA+ICN7JHNlbGVjdG9yfSB7XG4gICAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tI3skdmFsdWV9OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJGV4Y2x1ZGVkLWJwczogLXpmLWJyZWFrcG9pbnRzLWxlc3MtdGhhbigkbWluLWJyZWFrcG9pbnQpO1xuXG4gICAgLy8gT3V0cHV0IG5ldyB3aWR0aHMgdG8gbm90IGluY2x1ZGUgZ3V0dGVyc1xuICAgIEBlYWNoICRicCBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpZihzbC1jb250YWluKCRleGNsdWRlZC1icHMsICRicCkpIHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBAZm9yICRpIGZyb20gMSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICAgICAgICAgLy8gU2l6aW5nIChwZXJjZW50YWdlKVxuICAgICAgICAgICAgPiAuI3skYnB9LSN7JGl9IHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgeHktY2VsbC1zaXplKCRpLCAkZ3V0dGVyLXR5cGU6IG5vbmUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJGJwKSB7XG4gICAgICAgICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAgICAgICAgIC8vIFNpemluZyAocGVyY2VudGFnZSlcbiAgICAgICAgICAgID4gLiN7JGJwfS0jeyRpfSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHh5LWNlbGwtc2l6ZSgkaSwgJGd1dHRlci10eXBlOiBub25lKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQGVsc2Uge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCgkbWluLWJyZWFrcG9pbnQpIHtcbiAgICAgIEBlYWNoICR2YWx1ZSBpbiAkZ3V0dGVyLXBvc2l0aW9uIHtcbiAgICAgICAgbWFyZ2luLSN7JHZhbHVlfTogMDtcbiAgICAgIH1cblxuICAgICAgPiAjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAZWFjaCAkdmFsdWUgaW4gJGd1dHRlci1wb3NpdGlvbiB7XG4gICAgICAgICAgcGFkZGluZy0jeyR2YWx1ZX06IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB4eS1ncmlkXG4vLy8vXG5cbi8vLyBSZXR1cm5zIHRoZSBhcHByb3ByaWF0ZSBDU1MgdmFsdWUgdG8gb2Zmc2V0IGEgY2VsbC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7U3RyaW5nfSAkYnJlYWtwb2ludCBbbnVsbF0gLSBUaGUgbmFtZSBvZiB0aGUgYnJlYWtwb2ludCBzaXplIGluIHlvdXIgZ3V0dGVycyBtYXAgdG8gZ2V0IHRoZSBzaXplIGZyb20uIElmIHVzaW5nIHdpdGggdGhlIGBicmVha3BvaW50KClgIG1peGluIHRoaXMgd2lsbCBiZSBzZXQgYXV0b21hdGljYWxseSB1bmxlc3MgbWFudWFsbHkgZW50ZXJlZC5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ8U3RyaW5nfSBUaGUgY2VsbCBvZmZzZXQgcHJvcGVydHkgdmFsdWUuXG5AZnVuY3Rpb24geHktY2VsbC1vZmZzZXQoXG4gICRuLFxuICAkZ3V0dGVyczogJGdyaWQtbWFyZ2luLWd1dHRlcnMsXG4gICRndXR0ZXItdHlwZTogbWFyZ2luLFxuICAkYnJlYWtwb2ludDogbnVsbFxuKSB7XG4gICRicmVha3BvaW50OiAtemYtY3VycmVudC1icmVha3BvaW50KCRicmVha3BvaW50LCAkZGVmYXVsdDogJC16Zi16ZXJvLWJyZWFrcG9pbnQpO1xuICAkc2l6ZTogeHktY2VsbC1zaXplKCRuKTtcblxuICAkb2Zmc2V0OiAkc2l6ZTtcbiAgQGlmICgkZ3V0dGVyLXR5cGUgPT0gJ21hcmdpbicpIHtcbiAgICAkZ3V0dGVyOiByZW0tY2FsYyh4eS1jZWxsLWd1dHRlcnMoJGd1dHRlcnMsICRicmVha3BvaW50KSAvIDIpO1xuICAgICRvZmZzZXQ6IGlmKCRndXR0ZXIgPT0gMCwgJHNpemUsIGNhbGMoI3skc2l6ZX0gKyAjeyRndXR0ZXJ9KSk7XG4gIH1cbiAgQHJldHVybiAkb2Zmc2V0O1xufVxuXG4vLy8gT2Zmc2V0cyBhIGNvbHVtbiB0byB0aGUgcmlnaHQvYm90dG9tIGJ5IGAkbmAgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyfExpc3R9ICRuIC0gU2l6ZSB0byBvZmZzZXQgYnkuIFlvdSBjYW4gcGFzcyBpbiBhbnkgdmFsdWUgYWNjZXB0ZWQgYnkgdGhlIGB4eS1jZWxsKClgIG1peGluLCBzdWNoIGFzIGA2YCwgYDUwJWAsIG9yIGAxIG9mIDJgLlxuLy8vIEBwYXJhbSB7TnVtYmVyfE1hcH0gJGd1dHRlcnMgWyRncmlkLW1hcmdpbi1ndXR0ZXJzXSBNYXAgb2YgZ3V0dGVycyBvciBzaW5nbGUgdmFsdWUgdG8gdXNlIGZvciByZXNwb25zaXZlIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkZ3V0dGVyLXR5cGUgW21hcmdpbl0gVGhlIHR5cGUgb2YgZ3V0dGVyIHRvIHVzZS4gQ2FuIGJlIGBtYXJnaW5gIG9yIGBwYWRkaW5nYFxuLy8vIEBwYXJhbSB7TnVtYmVyfEFycmF5fEtleXdvcmR9ICRicmVha3BvaW50IFtudWxsXSAtIEJyZWFrcG9pbnQgdG8gdXNlIGZvciBgJGd1dHRlcnNgLiBJdCBjYW4gYmUgYSBicmVha3BvaW50IG5hbWUsIGxpc3Qgb2YgYnJlYWtwb2ludHMgb3IgYGF1dG9gIGZvciBhbGwgYnJlYWtwb2ludHMuIElmIGEgbGlzdCBpcyBnaXZlbiwgbWVkaWEtcXVlcmllcyB3aWxsIGJlIGdlbmVyYXRlZC4gSWYgdXNpbmcgd2l0aCB0aGUgYGJyZWFrcG9pbnQoKWAgbWl4aW4gdGhpcyB3aWxsIGJlIHNldCBhdXRvbWF0aWNhbGx5IHVubGVzcyBtYW51YWxseSBlbnRlcmVkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gU2V0cyB0aGUgZGlyZWN0aW9uIG9mIHRoZSBvZmZzZXQuIElmIHNldCB0byB0cnVlIHdpbGwgYXBwbHkgbWFyZ2luLXRvcCBpbnN0ZWFkLlxuQG1peGluIHh5LWNlbGwtb2Zmc2V0KFxuICRuLFxuICRndXR0ZXJzOiAkZ3JpZC1tYXJnaW4tZ3V0dGVycyxcbiAkZ3V0dGVyLXR5cGU6IG1hcmdpbixcbiAkYnJlYWtwb2ludDogbnVsbCxcbiAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJGJyZWFrcG9pbnQ6IC16Zi1jdXJyZW50LWJyZWFrcG9pbnQoJGJyZWFrcG9pbnQsICRkZWZhdWx0OiAkLXpmLXplcm8tYnJlYWtwb2ludCk7XG4gICRkaXJlY3Rpb246IGlmKCR2ZXJ0aWNhbCwgJ3RvcCcsICRnbG9iYWwtbGVmdCk7XG5cbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludC1pbigkYnJlYWtwb2ludCwgJG1lZGlhLXF1ZXJpZXM6ICdmb3ItbGlzdHMnKSB7XG4gICAgJG9mZnNldDogeHktY2VsbC1vZmZzZXQoJG4sICRndXR0ZXJzLCAkZ3V0dGVyLXR5cGUpO1xuICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAjeyRvZmZzZXR9O1xuICB9XG59XG4iLCIvLy8gTW9kaWZpZXMgYSBncmlkIHRvIGdpdmUgaXQgXCJmcmFtZVwiIGJlaGF2aW9yIChubyBvdmVyZmxvdywgbm8gd3JhcCwgc3RyZXRjaCBiZWhhdmlvcilcbi8vL1xuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJHZlcnRpY2FsIFtmYWxzZV0gLSBJcyBncmlkIHZlcnRpY2FsIG9yIGhvcml6b250YWwuIFNob3VsZCBtYXRjaCBncmlkLlxuLy8vIEBwYXJhbSB7Qm9vbGVhbn0gJG5lc3RlZCBbZmFsc2VdIC0gSXMgZ3JpZCBuZXN0ZWQgb3Igbm90LiBJZiBuZXN0ZWQgaXMgdHJ1ZSB0aGlzIHNldHMgdGhlIGZyYW1lIHRvIDEwMCUgaGVpZ2h0LCBvdGhlcndpc2Ugd2lsbCBiZSAxMDB2aC5cbi8vLyBAcGFyYW0ge051bWJlcnxNYXB9ICRndXR0ZXJzIFtudWxsXSAtIE1hcCBvciBzaW5nbGUgdmFsdWUgZm9yIGd1dHRlcnMuXG4vLy8gQHBhcmFtIHtTdHJpbmd9ICRicmVha3BvaW50IFtudWxsXSAtIFRoZSBuYW1lIG9mIHRoZSBicmVha3BvaW50IHNpemUgaW4geW91ciBndXR0ZXJzIG1hcCB0byBnZXQgdGhlIHNpemUgZnJvbS5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRpbmNsdWRlLWJhc2UgW3RydWVdIC0gSW5jbHVkZSB0aGUgYmFzZSBzdHlsZXMgdGhhdCBkb24ndCB2YXJ5IHBlciBicmVha3BvaW50LlxuQG1peGluIHh5LWdyaWQtZnJhbWUoXG4gICR2ZXJ0aWNhbDogZmFsc2UsXG4gICRuZXN0ZWQ6IGZhbHNlLFxuICAkZ3V0dGVyczogbnVsbCxcbiAgJGJyZWFrcG9pbnQ6IG51bGwsXG4gICRpbmNsdWRlLWJhc2U6IHRydWVcbikge1xuXG4gIEBpZiAkaW5jbHVkZS1iYXNlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcbiAgfVxuXG4gIEBpZiAkYnJlYWtwb2ludCA9PSBudWxsIGFuZCB0eXBlLW9mKCRndXR0ZXJzKSA9PSAnbWFwJyB7XG4gICAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCgpIHtcbiAgICAgIEBpbmNsdWRlIHh5LWdyaWQtZnJhbWUoJHZlcnRpY2FsLCAkbmVzdGVkLCAkZ3V0dGVycywgJC16Zi1zaXplLCBmYWxzZSk7XG4gICAgfVxuICB9IEBlbHNlIHtcbiAgICAvLyBHZXQgb3VyIGd1dHRlcnMgaWYgYXBwbGljYWJsZVxuICAgICRndXR0ZXI6IC16Zi1nZXQtYnAtdmFsKCRndXR0ZXJzLCAkYnJlYWtwb2ludCk7XG5cbiAgICAvLyBJZiB3ZSBoYXZlIGEgZ3V0dGVyLCBhZGQgaXQgdG8gdGhlIHdpZHRoL2hlaWdodFxuICAgIEBpZiAkZ3V0dGVyIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZoKTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIGhlaWdodDogY2FsYygjeyR1bml0fSArICN7JGd1dHRlcn0pO1xuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICR1bml0OiBpZigkbmVzdGVkID09IHRydWUsIDEwMCUsIDEwMHZ3KTtcbiAgICAgICAgJGd1dHRlcjogcmVtLWNhbGMoJGd1dHRlcik7XG4gICAgICAgIHdpZHRoOiBjYWxjKCN7JHVuaXR9ICsgI3skZ3V0dGVyfSk7XG4gICAgICB9XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgICAgIGhlaWdodDogaWYoJG5lc3RlZCA9PSB0cnVlLCAxMDAlLCAxMDB2aCk7XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgd2lkdGg6IGlmKCRuZXN0ZWQgPT0gdHJ1ZSwgMTAwJSwgMTAwdncpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLy8gTW9kaWZpZXMgYSBjZWxsIHRvIGdpdmUgaXQgXCJibG9ja1wiIGJlaGF2aW9yIChvdmVyZmxvdyBhdXRvLCBpbmVydGlhbCBzY3JvbGxpbmcpXG4vLy9cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICR2ZXJ0aWNhbCBbZmFsc2VdIC0gSXMgZ3JpZCB2ZXJ0aWNhbCBvciBob3Jpem9udGFsLiBTaG91bGQgbWF0Y2ggZ3JpZC5cbkBtaXhpbiB4eS1jZWxsLWJsb2NrKFxuICAkdmVydGljYWw6IGZhbHNlXG4pIHtcbiAgJHByb3BlcnR5OiBpZigkdmVydGljYWwgPT0gdHJ1ZSwgJ292ZXJmbG93LXknLCAnb3ZlcmZsb3cteCcpO1xuXG4gIEBpZiAkdmVydGljYWwgPT0gdHJ1ZSB7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gIH0gQGVsc2Uge1xuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAtbXMtb3ZlcmZsb3ctc3R5bGU6IC1tcy1hdXRvaGlkaW5nLXNjcm9sbGJhcjtcbn1cblxuLy8vIENvbnRhaW5lciBmb3IgaW5zaWRlIGEgZ3JpZCBmcmFtZSBjb250YWluaW5nIG11bHRpcGxlIGJsb2Nrcy4gVHlwaWNhbGx5IHVzZWRcbi8vLyBhcyBhIG1vZGlmaWVyIGZvciBhIGAuY2VsbGAgdG8gYWxsb3cgdGhlIGNlbGwgdG8gcGFzcyBhbG9uZyBmbGV4IHNpemluZ1xuLy8vIGNvbnN0cmFpbnRzIC8gZnJvbSBwYXJlbnRzIHRvIGNoaWxkcmVuLlxuQG1peGluIHh5LWNlbGwtYmxvY2stY29udGFpbmVyKCkge1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBtYXgtaGVpZ2h0OiAxMDAlO1xuXG4gID4gLmdyaWQteCB7XG4gICAgbWF4LWhlaWdodDogMTAwJTtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGJ1dHRvblxuLy8vL1xuXG4vLy8gRm9udCBmYW1pbHkgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBAdHlwZSBGb250XG4kYnV0dG9uLWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuXG4vLy8gRm9udCB3ZWlnaHQgZm9yIGJ1dHRvbiBlbGVtZW50cy5cbi8vLyBJZ25vcmVkIGlmIG51bGwgKGRlZmF1bHQpXG4vLy8gQHR5cGUgRm9udC1XZWlnaHRcbiRidXR0b24tZm9udC13ZWlnaHQ6IG51bGwgIWRlZmF1bHQ7XG5cbi8vLyBQYWRkaW5nIGluc2lkZSBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tcGFkZGluZzogMC44NWVtIDFlbSAhZGVmYXVsdDtcblxuLy8vIE1hcmdpbiBhcm91bmQgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW1hcmdpbjogMCAwICRnbG9iYWwtbWFyZ2luIDAgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGZpbGwgZm9yIGJ1dHRvbnMuIENhbiBlaXRoZXIgYmUgYHNvbGlkYCBvciBgaG9sbG93YC5cbi8vLyBAdHlwZSBLZXl3b3JkXG4kYnV0dG9uLWZpbGw6IHNvbGlkICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIENvbG9yXG4kYnV0dG9uLWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gQmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBDb2xvclxuJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJhY2tncm91bmQsICRsaWdodG5lc3M6IC0xNSUpICFkZWZhdWx0O1xuXG4vLy8gRm9udCBjb2xvciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBBbHRlcm5hdGl2ZSBmb250IGNvbG9yIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tY29sb3ItYWx0OiAkYmxhY2sgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgcmFkaXVzIGZvciBidXR0b25zLCBkZWZhdWx0ZWQgdG8gZ2xvYmFsLXJhZGl1cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8vIEJvcmRlciBmb3IgYnV0dG9ucywgdHJhbnNwYXJlbnQgYnkgZGVmYXVsdFxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vLyBCb3JkZXIgd2lkdGggZm9yIGhvbGxvdyBvdXRsaW5lIGJ1dHRvbnNcbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24taG9sbG93LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuXG4vLy8gU2l6ZXMgZm9yIGJ1dHRvbnMuXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXNpemVzOiAoXG4gIHRpbnk6IDAuNnJlbSxcbiAgc21hbGw6IDAuNzVyZW0sXG4gIGRlZmF1bHQ6IDAuOXJlbSxcbiAgbGFyZ2U6IDEuMjVyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gQ29sb3JpbmcgY2xhc3Nlcy4gQSBtYXAgb2YgY2xhc3NlcyB0byBvdXRwdXQgaW4geW91ciBDU1MsIGxpa2UgYC5zZWNvbmRhcnlgLCBgLnN1Y2Nlc3NgLCBhbmQgc28gb24uXG4vLy8gQHR5cGUgTWFwXG4kYnV0dG9uLXBhbGV0dGU6ICRmb3VuZGF0aW9uLXBhbGV0dGUgIWRlZmF1bHQ7XG5cbi8vLyBvcGFjaXR5IGZvciBhIGRpc2FibGVkIGJ1dHRvbi5cbi8vLyBAdHlwZSBMaXN0XG4kYnV0dG9uLW9wYWNpdHktZGlzYWJsZWQ6IDAuMjUgIWRlZmF1bHQ7XG5cbi8vLyBCYWNrZ3JvdW5kIGNvbG9yIGxpZ2h0bmVzcyBvbiBob3ZlciBmb3IgYnV0dG9ucy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRidXR0b24tYmFja2dyb3VuZC1ob3Zlci1saWdodG5lc3M6IC0yMCUgIWRlZmF1bHQ7XG5cbi8vLyBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIgZm9yIGhvbGxvdyBidXR0b25zLlxuLy8vIEB0eXBlIE51bWJlclxuJGJ1dHRvbi1ob2xsb3ctaG92ZXItbGlnaHRuZXNzOiAtNTAlICFkZWZhdWx0O1xuXG4vLyBJbnRlcm5hbDogZmxpcCBmcm9tIG1hcmdpbi1yaWdodCB0byBtYXJnaW4tbGVmdCBmb3IgZGVmYXVsdHNcbkBpZiAkZ2xvYmFsLXRleHQtZGlyZWN0aW9uID09ICdydGwnIHtcbiAgJGJ1dHRvbi1tYXJnaW46IDAgMCAkZ2xvYmFsLW1hcmdpbiAkZ2xvYmFsLW1hcmdpbiAhZGVmYXVsdDtcbn1cblxuLy8vIHRyYW5zaXRpb25zIGZvciBidXR0b25zLlxuLy8vIEB0eXBlIExpc3RcbiRidXR0b24tdHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAwLjI1cyBlYXNlLW91dCwgY29sb3IgMC4yNXMgZWFzZS1vdXQgIWRlZmF1bHQ7XG5cbi8vLyBBZGRpdGlvbmFsIHJlc3BvbnNpdmUgY2xhc3NlcyBmb3IgLmV4cGFuZGVkXG4vLy8gQHR5cGUgQm9vbGVhblxuJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkOiBmYWxzZSAhZGVmYXVsdDtcblxuLy8gVE9ETzogRG9jdW1lbnQgYnV0dG9uLWJhc2UoKSBtaXhpblxuQG1peGluIGJ1dHRvbi1iYXNlIHtcbiAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIG1hcmdpbjogJGJ1dHRvbi1tYXJnaW47XG5cbiAgQGlmICh0eXBlLW9mKCRidXR0b24tcGFkZGluZykgPT0gJ21hcCcpIHtcbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gJGJ1dHRvbi1wYWRkaW5nIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICBwYWRkaW5nOiAkYnV0dG9uLXBhZGRpbmc7XG4gIH1cblxuICBib3JkZXI6ICRidXR0b24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYnV0dG9uLXJhZGl1cztcbiAgdHJhbnNpdGlvbjogJGJ1dHRvbi10cmFuc2l0aW9uO1xuICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiBtYXAtZ2V0KCRidXR0b24tc2l6ZXMsIGRlZmF1bHQpO1xuICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXZlbmRvci1wcmVmaXhlc1xuICBsaW5lLWhlaWdodDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8vLyBFeHBhbmRzIGEgYnV0dG9uIHRvIG1ha2UgaXQgZnVsbC13aWR0aC5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW3RydWVdIC0gU2V0IHRvIGB0cnVlYCB0byBlbmFibGUgdGhlIGV4cGFuZCBiZWhhdmlvci4gU2V0IHRvIGBmYWxzZWAgdG8gcmV2ZXJzZSB0aGlzIGJlaGF2aW9yLlxuQG1peGluIGJ1dHRvbi1leHBhbmQoJGV4cGFuZDogdHJ1ZSkge1xuICBAaWYgJGV4cGFuZCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIEBlbHNlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWFyZ2luOiAkYnV0dG9uLW1hcmdpbjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgb3IgY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGluIGBidXR0b24tZmlsbC1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRmaWxsIFskYnV0dG9uLWZpbGxdIC0gVHlwZSBvZiBmaWxsaW5nIGJldHdlZW4gYGhvbGxvd2AgYW5kIGBjbGVhcmAuIGBzb2xpZGAgaGFzIG5vIGVmZmVjdHMuXG5AbWl4aW4gYnV0dG9uLWZpbGwoXG4gICRmaWxsOiAkYnV0dG9uLWZpbGxcbikge1xuICBAaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93O1xuICB9XG4gIEBlbHNlIGlmICRmaWxsID09IGNsZWFyIHtcbiAgICBAaW5jbHVkZSBidXR0b24tY2xlYXI7XG4gIH1cbn1cblxuLy8vIFNldHMgdGhlIHZpc3VhbCBzdHlsZXMgb2YgYSBzb2xpZC9ob2xsb3cvY2xlYXIgYnV0dG9uIGZpbGxpbmcgYWNjb3JkaW5nIHRvIGAkZmlsbGAuXG4vLy8gU2VlIG1peGlucyBgYnV0dG9uLXN0eWxlYCwgYGJ1dHRvbi1ob2xsb3ctc3R5bGVgIGFuZCBgYnV0dG9uLWNsZWFyLXN0eWxlYCBmb3IgZWZmZWN0cyBvZiB2aXN1YWwgc3R5bGluZyBwYXJhbWV0ZXJzLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGZpbGwgWyRidXR0b24tZmlsbF0gLSBUeXBlIG9mIGZpbGxpbmcgYmV0d2VlbiBgaG9sbG93YCBhbmQgYGNsZWFyYC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZCBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFja2dyb3VuZC1ob3ZlciBbJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyXSAtIC1cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gLVxuQG1peGluIGJ1dHRvbi1maWxsLXN0eWxlKFxuICAkZmlsbDogJGJ1dHRvbi1maWxsLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3Jcbikge1xuICBAaWYgJGZpbGwgPT0gc29saWQge1xuICAgIEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmFja2dyb3VuZCwgJGJhY2tncm91bmQtaG92ZXIsICRjb2xvcik7XG4gIH1cbiAgQGVsc2UgaWYgJGZpbGwgPT0gaG9sbG93IHtcbiAgICBAaW5jbHVkZSBidXR0b24taG9sbG93LXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxuICBAZWxzZSBpZiAkZmlsbCA9PSBjbGVhciB7XG4gICAgQGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRiYWNrZ3JvdW5kKTtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kIFskYnV0dG9uLWJhY2tncm91bmRdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRiYWNrZ3JvdW5kLWhvdmVyIFskYnV0dG9uLWJhY2tncm91bmQtaG92ZXJdIC0gQmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYnV0dG9uIG9uIGhvdmVyLiBTZXQgdG8gYGF1dG9gIHRvIGhhdmUgdGhlIG1peGluIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBob3ZlciBjb2xvci5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRidXR0b24tY29sb3JdIC0gVGV4dCBjb2xvciBvZiB0aGUgYnV0dG9uLiBTZXQgdG8gYGF1dG9gIHRvIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGUgYSBjb2xvciBiYXNlZCBvbiB0aGUgYmFja2dyb3VuZCBjb2xvci5cbkBtaXhpbiBidXR0b24tc3R5bGUoXG4gICRiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRiYWNrZ3JvdW5kLWhvdmVyOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXIsXG4gICRjb2xvcjogJGJ1dHRvbi1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzXG4pIHtcbiAgQGlmICRjb2xvciA9PSBhdXRvIHtcbiAgICAkY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkYnV0dG9uLWNvbG9yLCAkYnV0dG9uLWNvbG9yLWFsdCkpO1xuICB9XG5cbiAgQGlmICRiYWNrZ3JvdW5kLWhvdmVyID09IGF1dG8ge1xuICAgICRiYWNrZ3JvdW5kLWhvdmVyOiBzY2FsZS1jb2xvcigkYmFja2dyb3VuZCwgJGxpZ2h0bmVzczogJGJhY2tncm91bmQtaG92ZXItbGlnaHRuZXNzKTtcbiAgfVxuXG4gIC8vIERlZmF1bHQgYW5kIGRpc2FibGVkIHN0YXRlc1xuICAmLFxuICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSxcbiAgJi5kaXNhYmxlZDpob3ZlciwgJltkaXNhYmxlZF06aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMsICZbZGlzYWJsZWRdOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIFNlZSBtaXhpbiBgYnV0dG9uLWhvbGxvdy1zdHlsZWAgZm9yIHRoZSBmaWxsaW5nIHN0eWxlcy5cbkBtaXhpbiBidXR0b24taG9sbG93IHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBTZXRzIHRoZSB2aXN1YWwgc3R5bGUgb2YgYSBob2xsb3cgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgYW5kIGJvcmRlciBjb2xvciBvZiB0aGUgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRob3Zlci1saWdodG5lc3MgWyRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc10gLSBDb2xvciBsaWdodG5lc3Mgb24gaG92ZXIuXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJvcmRlci13aWR0aCBbJGJ1dHRvbi1ob2xsb3ctYm9yZGVyLXdpZHRoXSAtIEJvcmRlciB3aWR0aCBvZiB0aGUgYnV0dG9uLlxuQG1peGluIGJ1dHRvbi1ob2xsb3ctc3R5bGUoXG4gICRjb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkaG92ZXItbGlnaHRuZXNzOiAkYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3MsXG4gICRib3JkZXItd2lkdGg6ICRidXR0b24taG9sbG93LWJvcmRlci13aWR0aFxuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgYm9yZGVyOiAkYm9yZGVyLXdpZHRoIHNvbGlkICRjb2xvcjtcbiAgICBjb2xvcjogJGNvbG9yO1xuICB9XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItaG92ZXI7XG4gICAgY29sb3I6ICRjb2xvci1ob3ZlcjtcbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgYmFzZSBzdHlsZXMgb2YgYSBjbGVhciBidXR0b24uXG4vLy8gU2VlIG1peGluIGBidXR0b24tY2xlYXItc3R5bGVgIGZvciB0aGUgZmlsbGluZyBzdHlsZXMuXG5AbWl4aW4gYnV0dG9uLWNsZWFyIHtcbiAgJiwgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0ge1xuICAgICYsICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gU2V0cyB0aGUgdmlzdWFsIHN0eWxlIG9mIGEgY2xlYXIgYnV0dG9uLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1iYWNrZ3JvdW5kXSAtIFRleHQgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkaG92ZXItbGlnaHRuZXNzIFskYnV0dG9uLWhvbGxvdy1ob3Zlci1saWdodG5lc3NdIC0gQ29sb3IgbGlnaHRuZXNzIG9uIGhvdmVyLlxuQG1peGluIGJ1dHRvbi1jbGVhci1zdHlsZShcbiAgJGNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQsXG4gICRob3Zlci1saWdodG5lc3M6ICRidXR0b24taG9sbG93LWhvdmVyLWxpZ2h0bmVzc1xuKSB7XG4gICRjb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNvbG9yLCAkbGlnaHRuZXNzOiAkaG92ZXItbGlnaHRuZXNzKTtcblxuICAvLyBEZWZhdWx0IGFuZCBkaXNhYmxlZCBzdGF0ZXNcbiAgJixcbiAgJi5kaXNhYmxlZCwgJltkaXNhYmxlZF0sXG4gICYuZGlzYWJsZWQ6aG92ZXIsICZbZGlzYWJsZWRdOmhvdmVyLFxuICAmLmRpc2FibGVkOmZvY3VzLCAmW2Rpc2FibGVkXTpmb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkY29sb3ItaG92ZXI7XG4gIH1cbn1cblxuLy8vIEFkZHMgZGlzYWJsZWQgc3R5bGVzIHRvIGEgYnV0dG9uIGJ5IGZhZGluZyB0aGUgZWxlbWVudCBhbmQgcmVzZXRpbmcgdGhlIGN1cnNvci5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9wYWNpdHkgWyRidXR0b24tb3BhY2l0eS1kaXNhYmxlZF0gLSBPcGFjaXR5IG9mIHRoZSBkaXNhYmxlZCBidXR0b24uXG5AbWl4aW4gYnV0dG9uLWRpc2FibGVkKFxuICAkb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkXG4pIHtcbiAgb3BhY2l0eTogJGJ1dHRvbi1vcGFjaXR5LWRpc2FibGVkO1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkO1xufVxuXG4vLy8gQWRkcyBhIGRyb3Bkb3duIGFycm93IHRvIGEgYnV0dG9uLlxuLy8vIEBwYXJhbSB7TnVtYmVyfSAkc2l6ZSBbMC40ZW1dIC0gU2l6ZSBvZiB0aGUgYXJyb3cuIFdlIHJlY29tbWVuZCB1c2luZyBhbiBgZW1gIHZhbHVlIHNvIHRoZSB0cmlhbmdsZSBzY2FsZXMgd2hlbiB1c2VkIGluc2lkZSBkaWZmZXJlbnQgc2l6ZXMgb2YgYnV0dG9ucy5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgW3doaXRlXSAtIENvbG9yIG9mIHRoZSBhcnJvdy5cbi8vLyBAcGFyYW0ge051bWJlcn0gJG9mZnNldCBbJGJ1dHRvbi1wYWRkaW5nXSAtIERpc3RhbmNlIGJldHdlZW4gdGhlIGFycm93IGFuZCB0aGUgdGV4dCBvZiB0aGUgYnV0dG9uLiBEZWZhdWx0cyB0byB3aGF0ZXZlciB0aGUgcmlnaHQgcGFkZGluZyBvZiBhIGJ1dHRvbiBpcy5cbkBtaXhpbiBidXR0b24tZHJvcGRvd24oXG4gICRzaXplOiAwLjRlbSxcbiAgJGNvbG9yOiAkd2hpdGUsXG4gICRvZmZzZXQ6IGdldC1zaWRlKCRidXR0b24tcGFkZGluZywgcmlnaHQpXG4pIHtcbiAgJjo6YWZ0ZXIge1xuICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkc2l6ZSwgJGNvbG9yLCBkb3duKTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAwLjRlbTsgLy8gQWxpZ25zIHRoZSBhcnJvdyB3aXRoIHRoZSB0ZXh0IG9mIHRoZSBidXR0b25cblxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBmbG9hdDogI3skZ2xvYmFsLXJpZ2h0fTtcbiAgICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAkb2Zmc2V0O1xuICB9XG59XG5cbi8vLyBBZGRzIGFsbCBzdHlsZXMgZm9yIGEgYnV0dG9uLiBGb3IgbW9yZSBncmFudWxhciBjb250cm9sIG92ZXIgc3R5bGVzLCB1c2UgdGhlIGluZGl2aWR1YWwgYnV0dG9uIG1peGlucy5cbi8vLyBAcGFyYW0ge0Jvb2xlYW59ICRleHBhbmQgW2ZhbHNlXSAtIFNldCB0byBgdHJ1ZWAgdG8gbWFrZSB0aGUgYnV0dG9uIGZ1bGwtd2lkdGguXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQgWyRidXR0b24tYmFja2dyb3VuZF0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24uXG4vLy8gQHBhcmFtIHtDb2xvcn0gJGJhY2tncm91bmQtaG92ZXIgWyRidXR0b24tYmFja2dyb3VuZC1ob3Zlcl0gLSBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSBidXR0b24gb24gaG92ZXIuIFNldCB0byBgYXV0b2AgdG8gaGF2ZSB0aGUgbWl4aW4gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGhvdmVyIGNvbG9yLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGJ1dHRvbi1jb2xvcl0gLSBUZXh0IGNvbG9yIG9mIHRoZSBidXR0b24uIFNldCB0byBgYXV0b2AgdG8gYXV0b21hdGljYWxseSBnZW5lcmF0ZSBhIGNvbG9yIGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHN0eWxlIFtzb2xpZF0gLSBTZXQgdG8gYGhvbGxvd2AgdG8gY3JlYXRlIGEgaG9sbG93IGJ1dHRvbi4gVGhlIGNvbG9yIGRlZmluZWQgaW4gYCRiYWNrZ3JvdW5kYCB3aWxsIGJlIHVzZWQgYXMgdGhlIHByaW1hcnkgY29sb3Igb2YgdGhlIGJ1dHRvbi5cbkBtaXhpbiBidXR0b24oXG4gICRleHBhbmQ6IGZhbHNlLFxuICAkYmFja2dyb3VuZDogJGJ1dHRvbi1iYWNrZ3JvdW5kLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGJ1dHRvbi1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkY29sb3I6ICRidXR0b24tY29sb3IsXG4gICRzdHlsZTogJGJ1dHRvbi1maWxsXG4pIHtcbiAgQGluY2x1ZGUgYnV0dG9uLWJhc2U7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsKCRzdHlsZSk7XG4gIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRzdHlsZSwgJGJhY2tncm91bmQsICRiYWNrZ3JvdW5kLWhvdmVyLCAkY29sb3IpO1xuXG4gIEBpZiAkZXhwYW5kIHtcbiAgICBAaW5jbHVkZSBidXR0b24tZXhwYW5kO1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWJ1dHRvbiB7XG4gIC5idXR0b24ge1xuICAgIEBpbmNsdWRlIGJ1dHRvbigkc3R5bGU6IG5vbmUpO1xuXG4gICAgLy8gU2l6ZXNcbiAgICBAZWFjaCAkc2l6ZSwgJHZhbHVlIGluIG1hcC1yZW1vdmUoJGJ1dHRvbi1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHZhbHVlO1xuICAgICAgfVxuICAgIH1cblxuICAgICYuZXhwYW5kZWQgeyBAaW5jbHVkZSBidXR0b24tZXhwYW5kOyB9XG5cbiAgICBAaWYgJGJ1dHRvbi1yZXNwb25zaXZlLWV4cGFuZGVkIHtcbiAgICAgIEBlYWNoICRzaXplIGluICRicmVha3BvaW50LWNsYXNzZXMge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IG9ubHkpIHtcbiAgICAgICAgICAmLiN7JHNpemV9LW9ubHktZXhwYW5kZWQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLWV4cGFuZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KCN7JHNpemV9IGRvd24pIHtcbiAgICAgICAgICAgICYuI3skc2l6ZX0tZG93bi1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCgjeyRzaXplfSkge1xuICAgICAgICAgICAgJi4jeyRzaXplfS1leHBhbmRlZCB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1leHBhbmQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gU29saWQsIGhvbGxvdyAmIGNsZWFyIHN0eWxlc1xuICAgIEBlYWNoICRmaWxsaW5nIGluIChzb2xpZCBob2xsb3cgY2xlYXIpIHtcbiAgICAgICRzZWxlY3RvcjogaWYoJGJ1dHRvbi1maWxsID09ICRmaWxsaW5nLCBudWxsLCAnLiN7JGZpbGxpbmd9Jyk7XG5cbiAgICAgICYjeyRzZWxlY3Rvcn0ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbCgkZmlsbGluZyk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1maWxsLXN0eWxlKCRmaWxsaW5nKTtcblxuICAgICAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRidXR0b24tcGFsZXR0ZSB7XG4gICAgICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBidXR0b24tZmlsbC1zdHlsZSgkZmlsbGluZywgJGNvbG9yLCBhdXRvLCBhdXRvKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICYuZGlzYWJsZWQsICZbZGlzYWJsZWRdIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvLyBEcm9wZG93biBhcnJvd1xuICAgICYuZHJvcGRvd24ge1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLWRyb3Bkb3duO1xuXG4gICAgICBAaWYgJGJ1dHRvbi1maWxsID09IGhvbGxvdyB7XG4gICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5ob2xsb3csICYuY2xlYXIge1xuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICB9XG5cbiAgICAgICAgQGVhY2ggJG5hbWUsICRjb2xvciBpbiAkYnV0dG9uLXBhbGV0dGUge1xuICAgICAgICAgICYuI3skbmFtZX0ge1xuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29sb3I7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQnV0dG9uIHdpdGggZHJvcGRvd24gYXJyb3cgb25seVxuICAgICYuYXJyb3ctb25seTo6YWZ0ZXIge1xuICAgICAgdG9wOiAtMC4xZW07XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbi0jeyRnbG9iYWwtbGVmdH06IDA7XG4gICAgfVxuICB9XG5cbiAgYS5idXR0b24geyAvLyBzYXNzLWxpbnQ6ZGlzYWJsZS1saW5lIG5vLXF1YWxpZnlpbmctZWxlbWVudHNcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBmb3IgU2l0ZXNcbi8vIGh0dHBzOi8vZ2V0LmZvdW5kYXRpb25cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG4vLy8vXG4vLy8gQGdyb3VwIGNhbGxvdXRcbi8vLy9cblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvci5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmYWRlIHZhbHVlIGZvciBjYWxsb3V0IGJhY2tncm91bmRzLlxuLy8vIEB0eXBlIE51bWJlclxuJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlOiA4NSUgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciBzdHlsZSBmb3IgY2FsbG91dHMuXG4vLy8gQHR5cGUgTGlzdFxuJGNhbGxvdXQtYm9yZGVyOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMjUpICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3R0b20gbWFyZ2luIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBOdW1iZXJcbiRjYWxsb3V0LW1hcmdpbjogMCAwIDFyZW0gMCAhZGVmYXVsdDtcblxuLy8vIFNpemVzIGZvciBDYWxsb3V0IHBhZGRpbmdzLlxuLy8vIEB0eXBlIE1hcFxuJGNhbGxvdXQtc2l6ZXM6IChcbiAgc21hbGw6IDAuNXJlbSxcbiAgZGVmYXVsdDogMXJlbSxcbiAgbGFyZ2U6IDNyZW0sXG4pICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBmb250IGNvbG9yIGZvciBjYWxsb3V0cy5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvcjogJGJvZHktZm9udC1jb2xvciAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgZm9udCBjb2xvciBmb3IgY2FsbG91dHMsIGlmIHRoZSBjYWxsb3V0IGhhcyBhIGRhcmsgYmFja2dyb3VuZC5cbi8vLyBAdHlwZSBDb2xvclxuJGNhbGxvdXQtZm9udC1jb2xvci1hbHQ6ICRib2R5LWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IGJvcmRlciByYWRpdXMgZm9yIGNhbGxvdXRzLlxuLy8vIEB0eXBlIENvbG9yXG4kY2FsbG91dC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuXG4vLy8gQW1vdW50IHRvIHRpbnQgbGlua3MgdXNlZCB3aXRoaW4gY29sb3JlZCBwYW5lbHMuIFNldCB0byBgZmFsc2VgIHRvIGRpc2FibGUgdGhpcyBmZWF0dXJlLlxuLy8vIEB0eXBlIE51bWJlciB8IEJvb2xlYW5cbiRjYWxsb3V0LWxpbmstdGludDogMzAlICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBiYXNpYyBzdHlsZXMgZm9yIGEgY2FsbG91dCwgaW5jbHVkaW5nIHBhZGRpbmcgYW5kIG1hcmdpbi5cbkBtaXhpbiBjYWxsb3V0LWJhc2UoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWFyZ2luOiAkY2FsbG91dC1tYXJnaW47XG4gIHBhZGRpbmc6IG1hcC1nZXQoJGNhbGxvdXQtc2l6ZXMsIGRlZmF1bHQpO1xuXG4gIGJvcmRlcjogJGNhbGxvdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkY2FsbG91dC1yYWRpdXM7XG5cbiAgLy8gUmVzcGVjdCB0aGUgcGFkZGluZywgZm9vbC5cbiAgPiA6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cblxuICA+IDpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG5cbi8vLyBHZW5lcmF0ZSBxdWljayBzdHlsZXMgZm9yIGEgY2FsbG91dCB1c2luZyBhIHNpbmdsZSBjb2xvciBhcyBhIGJhc2VsaW5lLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciBbJGNhbGxvdXQtYmFja2dyb3VuZF0gLSBDb2xvciB0byB1c2UuXG5AbWl4aW4gY2FsbG91dC1zdHlsZSgkY29sb3I6ICRjYWxsb3V0LWJhY2tncm91bmQpIHtcbiAgJGJhY2tncm91bmQ6IHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJGNhbGxvdXQtYmFja2dyb3VuZC1mYWRlKTtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJGJhY2tncm91bmQsICgkY2FsbG91dC1mb250LWNvbG9yLCAkY2FsbG91dC1mb250LWNvbG9yLWFsdCkpO1xufVxuXG5AbWl4aW4gY2FsbG91dC1zaXplKCRwYWRkaW5nKSB7XG4gIHBhZGRpbmctdG9wOiAkcGFkZGluZztcbiAgcGFkZGluZy1yaWdodDogJHBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZztcbiAgcGFkZGluZy1sZWZ0OiAkcGFkZGluZztcbn1cblxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgY2FsbG91dC5cbi8vLyBAcGFyYW0ge0NvbG9yfSAkY29sb3IgWyRjYWxsb3V0LWJhY2tncm91bmRdIC0gQ29sb3IgdG8gdXNlLlxuQG1peGluIGNhbGxvdXQoJGNvbG9yOiAkY2FsbG91dC1iYWNrZ3JvdW5kKSB7XG4gIEBpbmNsdWRlIGNhbGxvdXQtYmFzZTtcbiAgQGluY2x1ZGUgY2FsbG91dC1zdHlsZSgkY29sb3IpO1xufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1jYWxsb3V0IHtcbiAgLmNhbGxvdXQge1xuICAgIEBpbmNsdWRlIGNhbGxvdXQ7XG5cbiAgICBAZWFjaCAkbmFtZSwgJGNvbG9yIGluICRmb3VuZGF0aW9uLXBhbGV0dGUge1xuICAgICAgJi4jeyRuYW1lfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc3R5bGUoJGNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAZWFjaCAkc2l6ZSwgJHBhZGRpbmcgaW4gbWFwLXJlbW92ZSgkY2FsbG91dC1zaXplcywgZGVmYXVsdCkge1xuICAgICAgJi4jeyRzaXplfSB7XG4gICAgICAgIEBpbmNsdWRlIGNhbGxvdXQtc2l6ZSgkcGFkZGluZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgYWNjb3JkaW9uXG4vLy8vXG5cbi8vLyBEZWZhdWx0IGJhY2tncm91bmQgY29sb3Igb2YgYW4gYWNjb3JkaW9uIGdyb3VwLlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWJhY2tncm91bmQ6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIElmIGB0cnVlYCwgYWRkcyBwbHVzIGFuZCBtaW51cyBpY29ucyB0byB0aGUgc2lkZSBvZiBlYWNoIGFjY29yZGlvbiB0aXRsZS5cbi8vLyBAdHlwZSBCb29sZWFuXG4kYWNjb3JkaW9uLXBsdXNtaW51czogdHJ1ZSAhZGVmYXVsdDtcblxuLy8vIENvbnRlbnQgZm9yIHRoZSBwbHVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1wbHVzLWNvbnRlbnQ6ICdcXDAwMkInICFkZWZhdWx0O1xuXG4vLy8gQ29udGVudCBmb3IgdGhlIG1pbnVzIGljb24gd2hlbiBgJGFjY29yZGlvbi1wbHVzbWludXNgIGlzIGB0cnVlYFxuLy8vIEB0eXBlIFN0cmluZ1xuJGFjY29yZGlvbi1taW51cy1jb250ZW50OiAnXFwyMDEzJyAhZGVmYXVsdDtcblxuLy8vIEZvbnQgc2l6ZSBvZiBhY2NvcmRpb24gdGl0bGVzLlxuLy8vIEB0eXBlIE51bWJlclxuJGFjY29yZGlvbi10aXRsZS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWl0ZW0tY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9uIGhvdmVyIGZvciBpdGVtcyBpbiBhIE1lbnUuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24taXRlbS1iYWNrZ3JvdW5kLWhvdmVyOiAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhbiBhY2NvcmRpb24gaXRlbS5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAxcmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kYWNjb3JkaW9uLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiRhY2NvcmRpb24tY29udGVudC1ib3JkZXI6IDFweCBzb2xpZCAkbGlnaHQtZ3JheSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgdGV4dCBjb2xvciBvZiB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBDb2xvclxuJGFjY29yZGlvbi1jb250ZW50LWNvbG9yOiAkYm9keS1mb250LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBwYWRkaW5nIGZvciB0YWIgY29udGVudC5cbi8vLyBAdHlwZSBOdW1iZXIgfCBMaXN0XG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogMXJlbSAhZGVmYXVsdDtcblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBhY2NvcmRpb24gY29udGFpbmVyLiBBcHBseSB0aGlzIHRvIHRoZSBzYW1lIGVsZW1lbnQgdGhhdCBnZXRzIGBkYXRhLWFjY29yZGlvbmAuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lciAoXG4gICRiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLWJhY2tncm91bmRcbikge1xuICBtYXJnaW4tI3skZ2xvYmFsLWxlZnR9OiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuXG4gICZbZGlzYWJsZWRdIHtcbiAgICAuYWNjb3JkaW9uLXRpdGxlIHtcbiAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIGFjY29yZGlvbiBpdGVtLiBBcHBseSB0aGlzIHRvIHRoZSBsaXN0IGl0ZW0gd2l0aGluIGFuIGFjY29yZGlvbiB1bC5cbkBtaXhpbiBhY2NvcmRpb24taXRlbSB7XG4gICY6Zmlyc3QtY2hpbGQgPiA6Zmlyc3QtY2hpbGQge1xuICAgIGJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICRnbG9iYWwtcmFkaXVzIDAgMDtcbiAgfVxuXG4gICY6bGFzdC1jaGlsZCA+IDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItcmFkaXVzOiAwIDAgJGdsb2JhbC1yYWRpdXMgJGdsb2JhbC1yYWRpdXM7XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgdGl0bGUgb2YgYW4gYWNjb3JkaW9uIGl0ZW0uIEFwcGx5IHRoaXMgdG8gdGhlIGxpbmsgd2l0aGluIGFuIGFjY29yZGlvbiBpdGVtLlxuQG1peGluIGFjY29yZGlvbi10aXRsZSAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi10aXRsZS1mb250LXNpemUsXG4gICRjb2xvcjogJGFjY29yZGlvbi1pdGVtLWNvbG9yLFxuICAkYm9yZGVyOiAkYWNjb3JkaW9uLWNvbnRlbnQtYm9yZGVyLFxuICAkYmFja2dyb3VuZC1ob3ZlcjogJGFjY29yZGlvbi1pdGVtLWJhY2tncm91bmQtaG92ZXJcbikge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1ib3R0b206IDA7XG5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogMTtcbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZDpub3QoLmlzLWFjdGl2ZSkgPiAmIHtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAkZ2xvYmFsLXJhZGl1cyAkZ2xvYmFsLXJhZGl1cztcbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWhvdmVyO1xuICB9XG5cbiAgQGlmICRhY2NvcmRpb24tcGx1c21pbnVzIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICAjeyRnbG9iYWwtcmlnaHR9OiAxcmVtO1xuICAgICAgbWFyZ2luLXRvcDogLTAuNXJlbTtcbiAgICAgIGNvbnRlbnQ6ICRhY2NvcmRpb24tcGx1cy1jb250ZW50O1xuICAgIH1cblxuICAgIC5pcy1hY3RpdmUgPiAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogJGFjY29yZGlvbi1taW51cy1jb250ZW50O1xuICAgIH1cbiAgfVxufVxuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGFjY29yZGlvbiBjb250ZW50LiBBcHBseSB0aGlzIHRvIHRoZSBjb250ZW50IHBhbmUgYmVsb3cgYW4gYWNjb3JkaW9uIGl0ZW0ncyB0aXRsZS5cbkBtaXhpbiBhY2NvcmRpb24tY29udGVudCAoXG4gICRwYWRkaW5nOiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyxcbiAgJGJvcmRlcjogJGFjY29yZGlvbi1jb250ZW50LWJvcmRlcixcbiAgJGJhY2tncm91bmQ6ICRhY2NvcmRpb24tY29udGVudC1iYWNrZ3JvdW5kLFxuICAkY29sb3I6ICRhY2NvcmRpb24tY29udGVudC1jb2xvclxuKSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gIGJvcmRlcjogJGJvcmRlcjtcbiAgYm9yZGVyLWJvdHRvbTogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgY29sb3I6ICRjb2xvcjtcblxuICA6bGFzdC1jaGlsZCA+ICY6bGFzdC1jaGlsZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogJGJvcmRlcjtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1hY2NvcmRpb24ge1xuICAuYWNjb3JkaW9uIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24tY29udGFpbmVyO1xuICB9XG5cbiAgLmFjY29yZGlvbi1pdGVtIHtcbiAgICBAaW5jbHVkZSBhY2NvcmRpb24taXRlbTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tdGl0bGUge1xuICAgIEBpbmNsdWRlIGFjY29yZGlvbi10aXRsZTtcbiAgfVxuXG4gIC5hY2NvcmRpb24tY29udGVudCB7XG4gICAgQGluY2x1ZGUgYWNjb3JkaW9uLWNvbnRlbnQ7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCByZXNwb25zaXZlLWVtYmVkXG4vLy8vXG5cbi8vLyBNYXJnaW4gYmVsb3cgYSByZXNwb25zaXZlIGVtYmVkIGNvbnRhaW5lci5cbi8vLyBAdHlwZSBOdW1iZXJcbiRyZXNwb25zaXZlLWVtYmVkLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcblxuLy8vIEFzcGVjdCByYXRpb3MgdXNlZCB0byBkZXRlcm1pbmUgcGFkZGluZy1ib3R0b20gb2YgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXJzLlxuLy8vIEB0eXBlIE1hcFxuJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zOiAoXG4gIGRlZmF1bHQ6IDQgYnkgMyxcbiAgd2lkZXNjcmVlbjogMTYgYnkgOSxcbikgIWRlZmF1bHQ7XG5cbi8vLyBDcmVhdGVzIGEgcmVzcG9uc2l2ZSBlbWJlZCBjb250YWluZXIuXG4vLy8gQHBhcmFtIHtTdHJpbmd8TGlzdH0gJHJhdGlvIFtkZWZhdWx0XSAtIFJhdGlvIG9mIHRoZSBjb250YWluZXIuIENhbiBiZSBhIGtleSBmcm9tIHRoZSBgJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zYCBtYXAgb3IgYSBsaXN0IGZvcm1hdHRlZCBhcyBgeCBieSB5YC5cbkBtaXhpbiByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCkge1xuICBAaWYgdHlwZS1vZigkcmF0aW8pID09ICdzdHJpbmcnIHtcbiAgICAkcmF0aW86IG1hcC1nZXQoJHJlc3BvbnNpdmUtZW1iZWQtcmF0aW9zLCAkcmF0aW8pO1xuICB9XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkcmVzcG9uc2l2ZS1lbWJlZC1tYXJnaW4tYm90dG9tO1xuICBwYWRkaW5nLWJvdHRvbTogcmF0aW8tdG8tcGVyY2VudGFnZSgkcmF0aW8pO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgI3skZ2xvYmFsLWxlZnR9OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5AbWl4aW4gZm91bmRhdGlvbi1yZXNwb25zaXZlLWVtYmVkIHtcbiAgLnJlc3BvbnNpdmUtZW1iZWQsXG4gIC5mbGV4LXZpZGVvIHtcbiAgICBAaW5jbHVkZSByZXNwb25zaXZlLWVtYmVkKCRyYXRpbzogZGVmYXVsdCk7XG5cbiAgICAkcmF0aW9zOiBtYXAtcmVtb3ZlKCRyZXNwb25zaXZlLWVtYmVkLXJhdGlvcyxkZWZhdWx0KTtcblxuICAgIEBlYWNoICRuYW1lLCAkcmF0aW8gaW4gJHJhdGlvcyB7XG4gICAgICAmLiN7JG5hbWV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJhdGlvLXRvLXBlcmNlbnRhZ2UoJHJhdGlvKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCB0YWJzXG4vLy8vXG5cbi8vLyBEZWZhdWx0IG1hcmdpbiBvZiB0aGUgdGFiIGJhci5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vLyBGb250IGNvbG9yIG9mIHRhYiBpdGVtLlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcblxuLy8vIEFjdGl2ZSBiYWNrZ3JvdW5kIGNvbG9yIG9mIGEgdGFiIGJhci5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1iYWNrZ3JvdW5kLWFjdGl2ZTogJGxpZ2h0LWdyYXkgIWRlZmF1bHQ7XG5cbi8vLyBBY3RpdmUgZm9udCBjb2xvciBvZiB0YWIgaXRlbS5cbi8vLyBAdHlwZSBDb2xvclxuJHRhYi1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLy8gRm9udCBzaXplIG9mIHRhYiBpdGVtcy5cbi8vLyBAdHlwZSBOdW1iZXJcbiR0YWItaXRlbS1mb250LXNpemU6IHJlbS1jYWxjKDEyKSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciBvbiBob3ZlciBmb3IgaXRlbXMgaW4gYSBNZW51LlxuJHRhYi1pdGVtLWJhY2tncm91bmQtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8vIERlZmF1bHQgcGFkZGluZyBvZiBhIHRhYiBpdGVtLlxuLy8vIEB0eXBlIE51bWJlclxuJHRhYi1pdGVtLXBhZGRpbmc6IDEuMjVyZW0gMS41cmVtICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtYmFja2dyb3VuZDogJHdoaXRlICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCBib3JkZXIgY29sb3Igb2YgdGFiIGNvbnRlbnQuXG4vLy8gQHR5cGUgQ29sb3JcbiR0YWItY29udGVudC1ib3JkZXI6ICRsaWdodC1ncmF5ICFkZWZhdWx0O1xuXG4vLy8gRGVmYXVsdCB0ZXh0IGNvbG9yIG9mIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIENvbG9yXG4kdGFiLWNvbnRlbnQtY29sb3I6ICRib2R5LWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vLyBEZWZhdWx0IHBhZGRpbmcgZm9yIHRhYiBjb250ZW50LlxuLy8vIEB0eXBlIE51bWJlciB8IExpc3RcbiR0YWItY29udGVudC1wYWRkaW5nOiAxcmVtICFkZWZhdWx0O1xuXG4vLy8gQWRkcyBzdHlsZXMgZm9yIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byBhIGA8dWw+YC5cbkBtaXhpbiB0YWJzLWNvbnRhaW5lciAoXG4gICRtYXJnaW46ICR0YWItbWFyZ2luLFxuICAkYmFja2dyb3VuZDogJHRhYi1iYWNrZ3JvdW5kLFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbjogJG1hcmdpbjtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYmFja2dyb3VuZDogJGJhY2tncm91bmQ7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRhaW5lciB0byBoYXZlIHZlcnRpY2FsIHRhYnMuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGFpbmVyKClgLlxuQG1peGluIHRhYnMtY29udGFpbmVyLXZlcnRpY2FsIHtcbiAgPiBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgd2lkdGg6IGF1dG87XG4gIH1cbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciB0aGUgbGlua3Mgd2l0aGluIGEgdGFiIGNvbnRhaW5lci4gQXBwbHkgdGhpcyB0byB0aGUgYDxsaT5gIGVsZW1lbnRzIGluc2lkZSBhIHRhYiBjb250YWluZXIuXG5AbWl4aW4gdGFicy10aXRsZSAoXG4gICRwYWRkaW5nOiAkdGFiLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJHRhYi1pdGVtLWZvbnQtc2l6ZSxcbiAgJGNvbG9yOiAkdGFiLWNvbG9yLFxuICAkY29sb3ItYWN0aXZlOiAkdGFiLWFjdGl2ZS1jb2xvcixcbiAgJGJhY2tncm91bmQtaG92ZXI6ICR0YWItaXRlbS1iYWNrZ3JvdW5kLWhvdmVyLFxuICAkYmFja2dyb3VuZC1hY3RpdmU6ICR0YWItYmFja2dyb3VuZC1hY3RpdmVcbikge1xuICBmbG9hdDogI3skZ2xvYmFsLWxlZnR9O1xuXG4gID4gYSB7XG4gICAgQGluY2x1ZGUgZGlzYWJsZS1tb3VzZS1vdXRsaW5lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZC1ob3ZlcjtcbiAgICAgIGNvbG9yOiBzY2FsZS1jb2xvcigkY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICAgIH1cblxuICAgICY6Zm9jdXMsXG4gICAgJlthcmlhLXNlbGVjdGVkPSd0cnVlJ10ge1xuICAgICAgYmFja2dyb3VuZDogJGJhY2tncm91bmQtYWN0aXZlO1xuICAgICAgY29sb3I6ICRjb2xvci1hY3RpdmU7XG4gICAgfVxuICB9XG59XG5cbi8vLyBBZGRzIHN0eWxlcyBmb3IgdGhlIHdyYXBwZXIgdGhhdCBzdXJyb3VuZHMgYSB0YWIgZ3JvdXAncyBjb250ZW50IHBhbmVzLlxuQG1peGluIHRhYnMtY29udGVudCAoXG4gICRiYWNrZ3JvdW5kOiAkdGFiLWNvbnRlbnQtYmFja2dyb3VuZCxcbiAgJGNvbG9yOiAkdGFiLWNvbnRlbnQtY29sb3IsXG4gICRib3JkZXItY29sb3I6ICR0YWItY29udGVudC1ib3JkZXJcbikge1xuICBib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuICBib3JkZXItdG9wOiAwO1xuICBiYWNrZ3JvdW5kOiAkYmFja2dyb3VuZDtcbiAgY29sb3I6ICRjb2xvcjtcbiAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbn1cblxuLy8vIEF1Z21lbnRzIGEgdGFiIGNvbnRlbnQgY29udGFpbmVyIHRvIGhhdmUgYSB2ZXJ0aWNhbCBzdHlsZSwgYnkgc2hpZnRpbmcgdGhlIGJvcmRlciBhcm91bmQuIFVzZSB0aGlzIGluIGNvbmp1bmN0aW9uIHdpdGggYHRhYnMtY29udGVudCgpYC5cbkBtaXhpbiB0YWJzLWNvbnRlbnQtdmVydGljYWwgKFxuICAkYm9yZGVyLWNvbG9yOiAkdGFiLWNvbnRlbnQtYm9yZGVyXG4pIHtcbiAgYm9yZGVyOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLSN7JGdsb2JhbC1sZWZ0fTogMDtcbn1cblxuLy8vIEFkZHMgc3R5bGVzIGZvciBhbiBpbmRpdmlkdWFsIHRhYiBjb250ZW50IHBhbmVsIHdpdGhpbiB0aGUgdGFiIGNvbnRlbnQgY29udGFpbmVyLlxuQG1peGluIHRhYnMtcGFuZWwgKFxuICAkcGFkZGluZzogJHRhYi1jb250ZW50LXBhZGRpbmdcbikge1xuICBkaXNwbGF5OiBub25lO1xuICBwYWRkaW5nOiAkcGFkZGluZztcblxuICAmLmlzLWFjdGl2ZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cblxuQG1peGluIGZvdW5kYXRpb24tdGFicyB7XG4gIC50YWJzIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lcjtcbiAgfVxuXG4gIC8vIFZlcnRpY2FsXG4gIC50YWJzLnZlcnRpY2FsIHtcbiAgICBAaW5jbHVkZSB0YWJzLWNvbnRhaW5lci12ZXJ0aWNhbDtcbiAgfVxuXG4gIC8vIFNpbXBsZVxuICAudGFicy5zaW1wbGUge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBQcmltYXJ5IGNvbG9yXG4gIC50YWJzLnByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuXG4gICAgPiBsaSA+IGEge1xuICAgICAgY29sb3I6IGNvbG9yLXBpY2stY29udHJhc3QoJHByaW1hcnktY29sb3IpO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6IHNtYXJ0LXNjYWxlKCRwcmltYXJ5LWNvbG9yKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFicy10aXRsZSB7XG4gICAgQGluY2x1ZGUgdGFicy10aXRsZTtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudDtcbiAgfVxuXG4gIC50YWJzLWNvbnRlbnQudmVydGljYWwge1xuICAgIEBpbmNsdWRlIHRhYnMtY29udGVudC12ZXJ0aWNhbDtcbiAgfVxuXG4gIC50YWJzLXBhbmVsIHtcbiAgICBAaW5jbHVkZSB0YWJzLXBhbmVsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ21hdGgnO1xuXG4kY29udHJhc3Qtd2FybmluZ3M6IHRydWUgIWRlZmF1bHQ7XG5cbi8vLy9cbi8vLyBAZ3JvdXAgZnVuY3Rpb25zXG4vLy8vXG5cbi8vLyBDaGVja3MgdGhlIGx1bWluYW5jZSBvZiBgJGNvbG9yYC5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIGNoZWNrIHRoZSBsdW1pbmFuY2Ugb2YuXG4vLy9cbi8vLyBAcmV0dXJucyB7TnVtYmVyfSBUaGUgbHVtaW5hbmNlIG9mIGAkY29sb3JgLlxuQGZ1bmN0aW9uIGNvbG9yLWx1bWluYW5jZSgkY29sb3IpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI3JlbGF0aXZlbHVtaW5hbmNlZGVmXG4gICRyZ2JhOiByZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpO1xuICAkcmdiYTI6ICgpO1xuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggMyB7XG4gICAgJHJnYjogbnRoKCRyZ2JhLCAkaSk7XG4gICAgJHJnYjogJHJnYiAvIDI1NTtcblxuICAgICRyZ2I6IGlmKCRyZ2IgPCAwLjAzOTI4LCAkcmdiIC8gMTIuOTIsIHBvdygoJHJnYiArIDAuMDU1KSAvIDEuMDU1LCAyLjQpKTtcblxuICAgICRyZ2JhMjogYXBwZW5kKCRyZ2JhMiwgJHJnYik7XG4gIH1cblxuICBAcmV0dXJuIDAuMjEyNiAqIG50aCgkcmdiYTIsIDEpICsgMC43MTUyICogbnRoKCRyZ2JhMiwgMikgKyAwLjA3MjIgKiBudGgoJHJnYmEyLCAzKTtcbn1cblxuLy8vIENoZWNrcyB0aGUgY29udHJhc3QgcmF0aW8gb2YgdHdvIGNvbG9ycy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjEgLSBGaXJzdCBjb2xvciB0byBjb21wYXJlLlxuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvcjIgLSBTZWNvbmQgY29sb3IgdG8gY29tcGFyZS5cbi8vL1xuLy8vIEByZXR1cm5zIHtOdW1iZXJ9IFRoZSBjb250cmFzdCByYXRpbyBvZiB0aGUgY29tcGFyZWQgY29sb3JzLlxuQGZ1bmN0aW9uIGNvbG9yLWNvbnRyYXN0KCRjb2xvcjEsICRjb2xvcjIpIHtcbiAgLy8gQWRhcHRlZCBmcm9tOiBodHRwczovL2dpdGh1Yi5jb20vTGVhVmVyb3UvY29udHJhc3QtcmF0aW8vYmxvYi9naC1wYWdlcy9jb2xvci5qc1xuICAvLyBGb3JtdWxhOiBodHRwOi8vd3d3LnczLm9yZy9UUi8yMDA4L1JFQy1XQ0FHMjAtMjAwODEyMTEvI2NvbnRyYXN0LXJhdGlvZGVmXG4gICRsdW1pbmFuY2UxOiBjb2xvci1sdW1pbmFuY2UoJGNvbG9yMSkgKyAwLjA1O1xuICAkbHVtaW5hbmNlMjogY29sb3ItbHVtaW5hbmNlKCRjb2xvcjIpICsgMC4wNTtcbiAgJHJhdGlvOiAkbHVtaW5hbmNlMSAvICRsdW1pbmFuY2UyO1xuXG4gIEBpZiAkbHVtaW5hbmNlMiA+ICRsdW1pbmFuY2UxIHtcbiAgICAkcmF0aW86IDEgLyAkcmF0aW87XG4gIH1cblxuICAkcmF0aW86IHJvdW5kKCRyYXRpbyAqIDEwKSAvIDEwO1xuXG4gIEByZXR1cm4gJHJhdGlvO1xufVxuXG4vLy8gQ2hlY2tzIHRoZSBsdW1pbmFuY2Ugb2YgYCRiYXNlYCwgYW5kIHJldHVybnMgdGhlIGNvbG9yIGZyb20gYCRjb2xvcnNgIChsaXN0IG9mIGNvbG9ycykgdGhhdCBoYXMgdGhlIG1vc3QgY29udHJhc3QuXG4vLy9cbi8vLyBAcGFyYW0ge0NvbG9yfSAkYmFzZSAtIENvbG9yIHRvIGNoZWNrIGx1bWluYW5jZS5cbi8vLyBAcGFyYW0ge0xpc3R9ICRjb2xvcnMgWygkd2hpdGUsICRibGFjayldIC0gQ29sb3JzIHRvIGNvbXBhcmUuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICR0b2xlcmFuY2UgWyRnbG9iYWwtY29sb3ItcGljay1jb250cmFzdC10b2xlcmFuY2VdIC0gQ29udHJhc3QgdG9sZXJhbmNlLlxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSB0aGUgY29sb3IgZnJvbSBgJGNvbG9yc2AgKGxpc3Qgb2YgY29sb3JzKSB0aGF0IGhhcyB0aGUgbW9zdCBjb250cmFzdC5cbkBmdW5jdGlvbiBjb2xvci1waWNrLWNvbnRyYXN0KCRiYXNlLCAkY29sb3JzOiAoJHdoaXRlLCAkYmxhY2spLCAkdG9sZXJhbmNlOiAkZ2xvYmFsLWNvbG9yLXBpY2stY29udHJhc3QtdG9sZXJhbmNlKSB7XG4gICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAxKSk7XG4gICRiZXN0OiBudGgoJGNvbG9ycywgMSk7XG5cbiAgQGZvciAkaSBmcm9tIDIgdGhyb3VnaCBsZW5ndGgoJGNvbG9ycykge1xuICAgICRjdXJyZW50LWNvbnRyYXN0OiBjb2xvci1jb250cmFzdCgkYmFzZSwgbnRoKCRjb2xvcnMsICRpKSk7XG4gICAgQGlmICgkY3VycmVudC1jb250cmFzdCAtICRjb250cmFzdCA+ICR0b2xlcmFuY2UpIHtcbiAgICAgICRjb250cmFzdDogY29sb3ItY29udHJhc3QoJGJhc2UsIG50aCgkY29sb3JzLCAkaSkpO1xuICAgICAgJGJlc3Q6IG50aCgkY29sb3JzLCAkaSk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkY29udHJhc3Qtd2FybmluZ3MgYW5kICRjb250cmFzdCA8IDMpIHtcbiAgICBAd2FybiBcIkNvbnRyYXN0IHJhdGlvIG9mICN7JGJlc3R9IG9uICN7JGJhc2V9IGlzIHByZXR0eSBiYWQsIGp1c3QgI3skY29udHJhc3R9XCI7XG4gIH1cblxuICBAcmV0dXJuICRiZXN0O1xufVxuXG4vLy8gU2NhbGVzIGEgY29sb3IgdG8gYmUgZGFya2VyIGlmIGl0J3MgbGlnaHQsIG9yIGxpZ2h0ZXIgaWYgaXQncyBkYXJrLiBVc2UgdGhpcyBmdW5jdGlvbiB0byB0aW50IGEgY29sb3IgYXBwcm9wcmlhdGUgdG8gaXRzIGxpZ2h0bmVzcy5cbi8vL1xuLy8vIEBwYXJhbSB7Q29sb3J9ICRjb2xvciAtIENvbG9yIHRvIHNjYWxlLlxuLy8vIEBwYXJhbSB7UGVyY2VudGFnZX0gJHNjYWxlIFs1JV0gLSBBbW91bnQgdG8gc2NhbGUgdXAgb3IgZG93bi5cbi8vLyBAcGFyYW0ge1BlcmNlbnRhZ2V9ICR0aHJlc2hvbGQgWzQwJV0gLSBUaHJlc2hvbGQgb2YgbGlnaHRuZXNzIHRvIGNoZWNrIGFnYWluc3QuXG4vLy9cbi8vLyBAcmV0dXJucyB7Q29sb3J9IEEgc2NhbGVkIGNvbG9yLlxuQGZ1bmN0aW9uIHNtYXJ0LXNjYWxlKCRjb2xvciwgJHNjYWxlOiA1JSwgJHRocmVzaG9sZDogNDAlKSB7XG4gIEBpZiBsaWdodG5lc3MoJGNvbG9yKSA+ICR0aHJlc2hvbGQge1xuICAgICRzY2FsZTogLSRzY2FsZTtcbiAgfVxuICBAcmV0dXJuIHNjYWxlLWNvbG9yKCRjb2xvciwgJGxpZ2h0bmVzczogJHNjYWxlKTtcbn1cblxuLy8vIEdldCBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHBhcmFtIHtrZXl9IGNvbG9yIGtleSBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuLy8vXG4vLy8gQHJldHVybnMge0NvbG9yfSBjb2xvciBmcm9tIGZvdW5kYXRpb24tcGFsZXR0ZVxuQGZ1bmN0aW9uIGdldC1jb2xvcigka2V5KSB7XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCAka2V5KSB7XG4gICAgQHJldHVybiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsICRrZXkpO1xuICB9XG4gIEBlbHNlIHtcbiAgICBAZXJyb3IgJ2dpdmVuICRrZXkgaXMgbm90IGF2YWlsYWJsZSBpbiAkZm91bmRhdGlvbi1wYWxldHRlJztcbiAgfVxufVxuXG4vLy8gVHJhbnNmZXJzIHRoZSBjb2xvcnMgaW4gdGhlIGAkZm91bmRhdGlvbi1wYWxldHRlYCBtYXAgaW50byB2YXJpYWJsZXMsIHN1Y2ggYXMgYCRwcmltYXJ5LWNvbG9yYCBhbmQgYCRzZWNvbmRhcnktY29sb3JgLiBDYWxsIHRoaXMgbWl4aW4gYmVsb3cgdGhlIEdsb2JhbCBzZWN0aW9uIG9mIHlvdXIgc2V0dGluZ3MgZmlsZSB0byBwcm9wZXJseSBtaWdyYXRlIHlvdXIgY29kZWJhc2UuXG5AbWl4aW4gYWRkLWZvdW5kYXRpb24tY29sb3JzKCkge1xuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgcHJpbWFyeSkge1xuICAgICRwcmltYXJ5LWNvbG9yOiBtYXAtZ2V0KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHByaW1hcnkpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRwcmltYXJ5LWNvbG9yOiAjMTc3OWJhICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHNlY29uZGFyeSkge1xuICAgICRzZWNvbmRhcnktY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgc2Vjb25kYXJ5KSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc2Vjb25kYXJ5LWNvbG9yOiAjNzY3Njc2ICFnbG9iYWw7XG4gIH1cbiAgQGlmIG1hcC1oYXMta2V5KCRmb3VuZGF0aW9uLXBhbGV0dGUsIHN1Y2Nlc3MpIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogbWFwLWdldCgkZm91bmRhdGlvbi1wYWxldHRlLCBzdWNjZXNzKSAhZ2xvYmFsO1xuICB9IEBlbHNlIHtcbiAgICAkc3VjY2Vzcy1jb2xvcjogIzNhZGI3NiAhZ2xvYmFsO1xuICB9XG4gIEBpZiBtYXAtaGFzLWtleSgkZm91bmRhdGlvbi1wYWxldHRlLCB3YXJuaW5nKSB7XG4gICAgJHdhcm5pbmctY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgd2FybmluZykgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHdhcm5pbmctY29sb3I6ICNmZmFlMDAgIWdsb2JhbDtcbiAgfVxuICBAaWYgbWFwLWhhcy1rZXkoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpIHtcbiAgICAkYWxlcnQtY29sb3I6IG1hcC1nZXQoJGZvdW5kYXRpb24tcGFsZXR0ZSwgYWxlcnQpICFnbG9iYWw7XG4gIH0gQGVsc2Uge1xuICAgICRhbGVydC1jb2xvcjogI2NjNGIzNyAhZ2xvYmFsO1xuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGZvciBTaXRlc1xuLy8gaHR0cHM6Ly9nZXQuZm91bmRhdGlvblxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vLy9cbi8vLyBAZ3JvdXAgZmxvYXRcbi8vLy9cblxuQG1peGluIGZvdW5kYXRpb24tZmxvYXQtY2xhc3NlcyB7XG4gIC5mbG9hdC1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmZsb2F0LXJpZ2h0IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5mbG9hdC1jZW50ZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gIC5jbGVhcmZpeCB7XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vL1xuLy8vIEBncm91cCBGbGV4Ym94IFV0aWxpdGllc1xuLy8vL1xuLy9cbi8vLyBEZWZhdWx0IHZhbHVlIGZvciB0aGUgY291bnQgb2Ygc291cmNlIG9yZGVyaW5nYFxuLy8vIEB0eXBlIE51bWJlclxuJGZsZXgtc291cmNlLW9yZGVyaW5nLWNvdW50OiA2ICFkZWZhdWx0O1xuXG4vLy8gUXVpY2tseSBkaXNhYmxlL2VuYWJsZSBSZXNwb25zaXZlIGJyZWFrcG9pbnRzIGZvciBWYW5pbGxhIEZsZXggSGVscGVycy5cbi8vLyBAdHlwZSBCb29sZWFuXG4kZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzOiB0cnVlICFkZWZhdWx0O1xuXG5AbWl4aW4gZmxleC1oZWxwZXJzIHtcbiAgLmZsZXgtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBmbGV4O1xuICB9XG5cbiAgLmZsZXgtY2hpbGQtYXV0byB7XG4gICAgZmxleDogMSAxIGF1dG87XG4gIH1cblxuICAuZmxleC1jaGlsZC1ncm93IHtcbiAgICBmbGV4OiAxIDAgYXV0bztcbiAgfVxuXG4gIC5mbGV4LWNoaWxkLXNocmluayB7XG4gICAgZmxleDogMCAxIGF1dG87XG4gIH1cblxuICBAZWFjaCAkZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtZGlyZWN0aW9uIHtcbiAgICAuZmxleC1kaXItI3skZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgfVxuICB9XG5cbiAgQGlmICgkZmxleGJveC1yZXNwb25zaXZlLWJyZWFrcG9pbnRzKSB7XG4gICAgLy8gTG9vcCB0aHJvdWdoIFJlc3BvbnNpdmUgQnJlYWtwb2ludHNcbiAgICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoJHNpemUpIHtcbiAgICAgICAgQGlmICRzaXplICE9ICQtemYtemVyby1icmVha3BvaW50IHtcbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jb250YWluZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgZmxleDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuI3skc2l6ZX0tZmxleC1jaGlsZC1hdXRvIHtcbiAgICAgICAgICAgIGZsZXg6IDEgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC4jeyRzaXplfS1mbGV4LWNoaWxkLWdyb3cge1xuICAgICAgICAgICAgZmxleDogMSAwIGF1dG87XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLiN7JHNpemV9LWZsZXgtY2hpbGQtc2hyaW5rIHtcbiAgICAgICAgICAgIGZsZXg6IDAgMSBhdXRvO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBlYWNoICRkaXIsICRwcm9wIGluICQtemYtZmxleC1kaXJlY3Rpb24ge1xuICAgICAgICAgICAgLiN7JHNpemV9LWZsZXgtZGlyLSN7JGRpcn0ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWRpcmVjdGlvbigkcHJvcCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLWZsZXgtY2xhc3NlcyB7XG4gIC8vIEhvcml6b250YWwgYWxpZ25tZW50IHVzaW5nIGp1c3RpZnktY29udGVudFxuICBAZWFjaCAkaGRpciwgJHByb3AgaW4gJC16Zi1mbGV4LWp1c3RpZnkge1xuICAgIC5hbGlnbi0jeyRoZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR4OiAkaGRpcik7XG4gICAgfVxuICB9XG4gIFxuICAvLyBIb3Jpem9udGFsIGFsaWdubWVudCBTcGVjaWZpY2FsbHkgZm9yIFZlcnRpY2FsIE1lbnVcbiAgQGVhY2ggJGhkaXIsICRwcm9wIGluIG1hcC1yZW1vdmUoJC16Zi1mbGV4LWp1c3RpZnksICdqdXN0aWZ5JywgJ3NwYWNlZCcpIHtcbiAgICAuYWxpZ24tI3skaGRpcn0ge1xuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICYubWVudSA+IGxpID4gYSB7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogJGhkaXIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gVmVydGljYWwgYWxpZ25tZW50IHVzaW5nIGFsaWduLWl0ZW1zIGFuZCBhbGlnbi1zZWxmXG4gIEBlYWNoICR2ZGlyLCAkcHJvcCBpbiAkLXpmLWZsZXgtYWxpZ24ge1xuICAgIC5hbGlnbi0jeyR2ZGlyfSB7XG4gICAgICBAaW5jbHVkZSBmbGV4LWFsaWduKCR5OiAkdmRpcik7XG4gICAgfVxuXG4gICAgLmFsaWduLXNlbGYtI3skdmRpcn0ge1xuICAgICAgQGluY2x1ZGUgZmxleC1hbGlnbi1zZWxmKCR5OiAkdmRpcik7XG4gICAgfVxuICB9XG5cbiAgLy8gQ2VudHJhbCBhbGlnbm1lbnQgb2YgY29udGVudFxuICAuYWxpZ24tY2VudGVyLW1pZGRsZSB7XG4gICAgQGluY2x1ZGUgZmxleC1hbGlnbigkeDogY2VudGVyLCAkeTogbWlkZGxlKTtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIH1cblxuICAvLyBTb3VyY2Ugb3JkZXJpbmdcbiAgQGluY2x1ZGUgLXpmLWVhY2gtYnJlYWtwb2ludCB7XG4gICAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkZmxleC1zb3VyY2Utb3JkZXJpbmctY291bnQge1xuICAgICAgLiN7JC16Zi1zaXplfS1vcmRlci0jeyRpfSB7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtb3JkZXIoJGkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZhbmlsbGEgRmxleGJveCBIZWxwZXJzXG4gIEBpbmNsdWRlIGZsZXgtaGVscGVycztcbn1cbiIsIkBmdW5jdGlvbiAtemYtZmxleC1qdXN0aWZ5KCR0ZXh0LWRpcmVjdGlvbil7XG4gICQtemYtZmxleC1qdXN0aWZ5OiAoXG4gICAgJ2xlZnQnOiBpZigkdGV4dC1kaXJlY3Rpb24gPT0gcnRsLCBmbGV4LWVuZCwgZmxleC1zdGFydCksXG4gICAgJ3JpZ2h0JzogaWYoJHRleHQtZGlyZWN0aW9uID09IHJ0bCwgZmxleC1zdGFydCwgZmxleC1lbmQpLFxuICAgICdjZW50ZXInOiBjZW50ZXIsXG4gICAgJ2p1c3RpZnknOiBzcGFjZS1iZXR3ZWVuLFxuICAgICdzcGFjZWQnOiBzcGFjZS1hcm91bmQsXG4gICk7XG5cbiAgQHJldHVybiAkLXpmLWZsZXgtanVzdGlmeTtcbn1cblxuXG4kLXpmLWZsZXgtYWxpZ246IChcbiAgJ3RvcCc6IGZsZXgtc3RhcnQsXG4gICdib3R0b20nOiBmbGV4LWVuZCxcbiAgJ21pZGRsZSc6IGNlbnRlcixcbiAgJ3N0cmV0Y2gnOiBzdHJldGNoLFxuKTtcblxuJC16Zi1mbGV4LWRpcmVjdGlvbjogKFxuICAncm93Jzogcm93LFxuICAncm93LXJldmVyc2UnOiByb3ctcmV2ZXJzZSxcbiAgJ2NvbHVtbic6IGNvbHVtbixcbiAgJ2NvbHVtbi1yZXZlcnNlJzogY29sdW1uLXJldmVyc2UsXG4pO1xuXG4vLy8gRW5hYmxlcyBmbGV4Ym94IGJ5IGFkZGluZyBgZGlzcGxheTogZmxleGAgdG8gdGhlIGVsZW1lbnQuXG5AbWl4aW4gZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi8vLyBIb3Jpem9udGFsbHkgb3IgdmVydGljYWxseSBhbGlnbnMgdGhlIGl0ZW1zIHdpdGhpbiBhIGZsZXggY29udGFpbmVyLlxuLy8vXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeCBbbnVsbF0gLSBIb3Jpem9udGFsIGFsaWdubWVudCB0byB1c2UuIENhbiBiZSBgbGVmdGAsIGByaWdodGAsIGBjZW50ZXJgLCBganVzdGlmeWAsIG9yIGBzcGFjZWRgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgaG9yaXpvbnRhbCBhbGlnbm1lbnQuXG4vLy8gQHBhcmFtIHtLZXl3b3JkfSAkeSBbbnVsbF0gLSBWZXJ0aWNhbCBhbGlnbm1lbnQgdG8gdXNlLiBDYW4gYmUgYHRvcGAsIGBib3R0b21gLCBgbWlkZGxlYCwgb3IgYHN0cmV0Y2hgLiBPciwgc2V0IGl0IHRvIGBudWxsYCAodGhlIGRlZmF1bHQpIHRvIG5vdCBzZXQgdmVydGljYWwgYWxpZ25tZW50LlxuQG1peGluIGZsZXgtYWxpZ24oJHg6IG51bGwsICR5OiBudWxsKSB7XG4gIEBpZiAkeCB7XG4gICAgQGlmIG1hcC1oYXMta2V5KCQtemYtZmxleC1qdXN0aWZ5LCAkeCkge1xuICAgICAgJHg6IG1hcC1nZXQoJC16Zi1mbGV4LWp1c3RpZnksICR4KTtcbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgQHdhcm4gJ2ZsZXgtZ3JpZC1yb3ctYWxpZ24oKTogI3skeH0gaXMgbm90IGEgdmFsaWQgdmFsdWUgZm9yIGhvcml6b250YWwgYWxpZ25tZW50LiBVc2UgbGVmdCwgcmlnaHQsIGNlbnRlciwganVzdGlmeSwgb3Igc3BhY2VkLic7XG4gICAgfVxuICB9XG5cbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtcm93LWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAganVzdGlmeS1jb250ZW50OiAkeDtcbiAgYWxpZ24taXRlbXM6ICR5O1xufVxuXG4vLy8gVmVydGljYWxseSBhbGlnbiBhIHNpbmdsZSBjb2x1bW4gd2l0aGluIGEgZmxleCByb3cuIEFwcGx5IHRoaXMgbWl4aW4gdG8gYSBmbGV4IGNvbHVtbi5cbi8vL1xuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHkgW251bGxdIC0gVmVydGljYWwgYWxpZ25tZW50IHRvIHVzZS4gQ2FuIGJlIGB0b3BgLCBgYm90dG9tYCwgYG1pZGRsZWAsIG9yIGBzdHJldGNoYC4gT3IsIHNldCBpdCB0byBgbnVsbGAgKHRoZSBkZWZhdWx0KSB0byBub3Qgc2V0IHZlcnRpY2FsIGFsaWdubWVudC5cbkBtaXhpbiBmbGV4LWFsaWduLXNlbGYoJHk6IG51bGwpIHtcbiAgQGlmICR5IHtcbiAgICBAaWYgbWFwLWhhcy1rZXkoJC16Zi1mbGV4LWFsaWduLCAkeSkge1xuICAgICAgJHk6IG1hcC1nZXQoJC16Zi1mbGV4LWFsaWduLCAkeSk7XG4gICAgfVxuICAgIEBlbHNlIHtcbiAgICAgIEB3YXJuICdmbGV4LWdyaWQtY29sdW1uLWFsaWduKCk6ICN7JHl9IGlzIG5vdCBhIHZhbGlkIHZhbHVlIGZvciBhbGlnbm1lbnQuIFVzZSB0b3AsIGJvdHRvbSwgbWlkZGxlLCBvciBzdHJldGNoLic7XG4gICAgfVxuICB9XG5cbiAgYWxpZ24tc2VsZjogJHk7XG59XG5cbi8vLyBDaGFuZ2VzIHRoZSBzb3VyY2Ugb3JkZXIgb2YgYSBmbGV4IGNoaWxkLiBDaGlsZHJlbiB3aXRoIGxvd2VyIG51bWJlcnMgYXBwZWFyIGZpcnN0IGluIHRoZSBsYXlvdXQuXG4vLy8gQHBhcmFtIHtOdW1iZXJ9ICRvcmRlciBbMF0gLSBPcmRlciBudW1iZXIgdG8gYXBwbHkuXG5AbWl4aW4gZmxleC1vcmRlcigkb3JkZXI6IDApIHtcbiAgb3JkZXI6ICRvcmRlcjtcbn1cblxuLy8vIENoYW5nZSBmbGV4LWRpcmVjdGlvblxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJGRpcmVjdGlvbiBbcm93XSAtIEZsZXggZGlyZWN0aW9uIHRvIHVzZS4gQ2FuIGJlXG4vLy8gICAtIHJvdyAoZGVmYXVsdCk6IHNhbWUgYXMgdGV4dCBkaXJlY3Rpb25cbi8vLyAgIC0gcm93LXJldmVyc2U6IG9wcG9zaXRlIHRvIHRleHQgZGlyZWN0aW9uXG4vLy8gICAtIGNvbHVtbjogc2FtZSBhcyByb3cgYnV0IHRvcCB0byBib3R0b21cbi8vLyAgIC0gY29sdW1uLXJldmVyc2U6IHNhbWUgYXMgcm93LXJldmVyc2UgdG9wIHRvIGJvdHRvbVxuQG1peGluIGZsZXgtZGlyZWN0aW9uKCRkaXJlY3Rpb246IHJvdykge1xuICBmbGV4LWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbiIsIi8vIEZvdW5kYXRpb24gZm9yIFNpdGVzXG4vLyBodHRwczovL2dldC5mb3VuZGF0aW9uXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3IoJHNpemUpIHtcbiAgJHNpemU6IG1hcC1nZXQoJGJyZWFrcG9pbnRzLCAkc2l6ZSk7XG4gIC8vIE1heCB2YWx1ZSBpcyAwLjJweCB1bmRlciB0aGUgbmV4dCBicmVha3BvaW50ICgwLjAyIC8gMTYgPSAwLjAwMTI1KS5cbiAgLy8gVXNlIGEgcHJlY2lzaW9uIHVuZGVyIDFweCB0byBzdXBwb3J0IGJyb3dzZXIgem9vbSwgYnV0IG5vdCB0byBsb3cgdG8gYXZvaWQgcm91bmRpbmcuXG4gIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vZm91bmRhdGlvbi9mb3VuZGF0aW9uLXNpdGVzL2lzc3Vlcy8xMTMxM1xuICAkc2l6ZTogLXpmLWJwLXRvLWVtKCRzaXplKSAtIC4wMDEyNTtcblxuICBAaW5jbHVkZSBicmVha3BvaW50KCRzaXplIGRvd24pIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLy8vIEhpZGUgYW4gZWxlbWVudCBieSBkZWZhdWx0LCBvbmx5IGRpc3BsYXlpbmcgaXQgd2l0aGluIGEgY2VydGFpbiBicmVha3BvaW50LlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gc2hvdy1mb3Itb25seSgkc2l6ZSkge1xuICAkbG93ZXItYm91bmQtc2l6ZTogbWFwLWdldCgkYnJlYWtwb2ludHMsICRzaXplKTtcbiAgJHVwcGVyLWJvdW5kLXNpemU6IC16Zi1tYXAtbmV4dCgkYnJlYWtwb2ludHMsICRzaXplKTtcblxuICAvLyBtb3JlIG9mdGVuIHRoYW4gbm90IHRoaXMgd2lsbCBiZSBjb3JyZWN0LCBqdXN0IG9uZSB0aW1lIHJvdW5kIHRoZSBsb29wIGl0IHdvbid0IHNvIHNldCBpbiBzY29wZSBoZXJlXG4gICRsb3dlci1ib3VuZDogLXpmLWJwLXRvLWVtKCRsb3dlci1ib3VuZC1zaXplKSAtIC4wMDEyNTtcbiAgLy8gdGVzdCBhY3R1YWwgbG93ZXItYm91bmQtc2l6ZSwgaWYgMCBzZXQgaXQgdG8gMGVtXG4gIEBpZiBzdHJpcC11bml0KCRsb3dlci1ib3VuZC1zaXplKSA9PSAwIHtcbiAgICAkbG93ZXItYm91bmQ6IC16Zi1icC10by1lbSgkbG93ZXItYm91bmQtc2l6ZSk7XG4gIH1cblxuICBAaWYgJHVwcGVyLWJvdW5kLXNpemUgPT0gbnVsbCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJGxvd2VyLWJvdW5kKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIEBlbHNlIHtcbiAgICAkdXBwZXItYm91bmQ6IC16Zi1icC10by1lbSgkdXBwZXItYm91bmQtc2l6ZSk7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbG93ZXItYm91bmQpLCBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICR1cHBlci1ib3VuZCkge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vLyBTaG93IGFuIGVsZW1lbnQgYnkgZGVmYXVsdCwgYW5kIGhpZGUgaXQgYWJvdmUgYSBjZXJ0YWluIHNjcmVlbiBzaXplLlxuLy8vIEBwYXJhbSB7S2V5d29yZH0gJHNpemUgLSBCcmVha3BvaW50IHRvIHVzZS4gKipNdXN0IGJlIGEgYnJlYWtwb2ludCBkZWZpbmVkIGluIGAkYnJlYWtwb2ludHNgLioqXG5AbWl4aW4gaGlkZS1mb3IoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSkge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuXG4vLy8gU2hvdyBhbiBlbGVtZW50IGJ5IGRlZmF1bHQsIGFuZCBoaWRlIGl0IGFib3ZlIGEgY2VydGFpbiBzY3JlZW4gc2l6ZS5cbi8vLyBAcGFyYW0ge0tleXdvcmR9ICRzaXplIC0gQnJlYWtwb2ludCB0byB1c2UuICoqTXVzdCBiZSBhIGJyZWFrcG9pbnQgZGVmaW5lZCBpbiBgJGJyZWFrcG9pbnRzYC4qKlxuQG1peGluIGhpZGUtZm9yLW9ubHkoJHNpemUpIHtcbiAgQGluY2x1ZGUgYnJlYWtwb2ludCgkc2l6ZSBvbmx5KSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3VuZGF0aW9uLXZpc2liaWxpdHktY2xhc3NlcyB7XG4gIC8vIEJhc2ljIGhpZGluZyBjbGFzc2VzXG4gIC5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICAuaW52aXNpYmxlIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIH1cblxuICAvLyBSZXNwb25zaXZlIHZpc2liaWxpdHkgY2xhc3Nlc1xuICBAZWFjaCAkc2l6ZSBpbiAkYnJlYWtwb2ludC1jbGFzc2VzIHtcbiAgICBAaWYgJHNpemUgIT0gJC16Zi16ZXJvLWJyZWFrcG9pbnQge1xuICAgICAgLmhpZGUtZm9yLSN7JHNpemV9IHtcbiAgICAgICAgQGluY2x1ZGUgaGlkZS1mb3IoJHNpemUpO1xuICAgICAgfVxuXG4gICAgICAuc2hvdy1mb3ItI3skc2l6ZX0ge1xuICAgICAgICBAaW5jbHVkZSBzaG93LWZvcigkc2l6ZSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhpZGUtZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgaGlkZS1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuXG4gICAgLnNob3ctZm9yLSN7JHNpemV9LW9ubHkge1xuICAgICAgQGluY2x1ZGUgc2hvdy1mb3Itb25seSgkc2l6ZSk7XG4gICAgfVxuICB9XG5cbiAgLy8gU2NyZWVuIHJlYWRlciB2aXNpYmlsaXR5IGNsYXNzZXNcbiAgLy8gTmVlZCBhIFwiaGlkZS1mb3Itc3JcIiBjbGFzcz8gQWRkIGFyaWEtaGlkZGVuPSd0cnVlJyB0byB0aGUgZWxlbWVudFxuICAuc2hvdy1mb3Itc3IsXG4gIC5zaG93LW9uLWZvY3VzIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuXG4gIC8vIE9ubHkgZGlzcGxheSB0aGUgZWxlbWVudCB3aGVuIGl0J3MgZm9jdXNlZFxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgJjphY3RpdmUsXG4gICAgJjpmb2N1cyB7XG4gICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZS1vZmY7XG4gICAgfVxuICB9XG5cbiAgLy8gTGFuZHNjYXBlIGFuZCBwb3J0cmFpdCB2aXNpYmlsaXR5XG4gIC5zaG93LWZvci1sYW5kc2NhcGUsXG4gIC5oaWRlLWZvci1wb3J0cmFpdCB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQocG9ydHJhaXQpIHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAuc2hvdy1mb3ItcG9ydHJhaXQge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFuZHNjYXBlKSB7XG4gICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChwb3J0cmFpdCkge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbiIsImlmcmFtZSB7XG5cdGJvcmRlcjogMDtcbn1cblxuLnJlc2l6ZS1hbmltYXRpb24tc3RvcHBlciAqOm5vdCguY29va2llLWJhbm5lcikge1xuXHRhbmltYXRpb246IG5vbmUgIWltcG9ydGFudDtcblx0dHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xufVxuXG46OnNlbGVjdGlvbiB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdGNvbG9yOiAkYmxhY2s7XG59XG5cbmJvZHkge1xuXHRhbmltYXRpb24tbmFtZTogZmFkZS1pbjtcblx0YW5pbWF0aW9uLWR1cmF0aW9uOiAxLjRzO1xuXHRhbmltYXRpb24tZGVsYXk6IC4xNXM7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRlYXNlLW91dC1leHBvO1xuXHRhbmltYXRpb24tZmlsbC1tb2RlOiBiYWNrd2FyZHM7XG59XG5cbi8vIFVzZSB0byByZW1vdmUgbnVtYmVycyBmcm9tIG9yZGVyZWQgbGlzdCAmIGJ1bGxldHMgZnJvbSB1bm9yZGVyZWQgbGlzdCB3aXRoIHBhcmVudCBjbGFzcyBvZiBjaGlsZC1uby1idWxsZXRcbi5jaGlsZC1uby1idWxsZXQgdWwsIC5jaGlsZC1uby1idWxsZXQgb2wge1xuICAgICAgbWFyZ2luLSN7JGdsb2JhbC1sZWZ0fTogMDtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cblxuICAuY2hpbGQtbGlzdC1zaW1wbGUge1xuXHQgIGxpIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjkzNzVyZW07XG5cdCAgfVxuXHQgIDpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHR9XG4gIH1cblxuICBodG1sIHtcblx0c2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gIH1cblxuICAuYXJyb3ctbGlzdCB7XG5cdEBpbmNsdWRlIGFycm93LWxpc3Q7XG4gIH1cblxuLy8gRm9jdXNcbmE6Zm9jdXMsXG5idXR0b246Zm9jdXMsXG4uYnRuOmZvY3VzLFxuaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAycHggZG90dGVkO1xufVxuXG5hOmZvY3VzIHtcbiAgb3V0bGluZS1vZmZzZXQ6IDJweDtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbmJ1dHRvbjpmb2N1cyxcbi5idG46Zm9jdXMsIFxuaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lLW9mZnNldDogNXB4O1xufSIsIi8vIFNpdGUgV2lkdGhzXG4kc2l0ZS1tYXgtd2lkdGg6ICRnbG9iYWwtd2lkdGg7XG4kc2l0ZS13aWR0aDogODQlO1xuJGNvbnRlbnQtbWF4LXdpZHRoOiAxNjIwcHg7XG5cbiRtYXgtYnJlYWtwb2ludDogKCRnbG9iYWwtd2lkdGgvOTApICoxMDA7XG4kdGV4dC1tYXgtd2lkdGgtc21hbGw6IDQwMHB4O1xuJHRleHQtbWF4LXdpZHRoLWxhcmdlOiA1MDBweDtcblxuLy8gTG9nb1xuJGxvZ28taC1zbWFsbDogNDVweDtcbiRsb2dvLWgtbGFyZ2U6IDY0cHg7XG5cbi8vIEJhbm5lclxuJGJhbm5lci1wLXNtYWxsOiAyMHB4O1xuJGJhbm5lci1wLWxhcmdlOiA0NnB4O1xuXG4vLyBTcGFjaW5nXG4kbS0xOiA4MHB4O1xuJG0tMjogMTAwcHg7XG4kbS0zOiAxMzNweDtcblxuLy8gTWVudVxuJG1lbnUtaXRlbS1ndXR0ZXI6IDE1cHg7XG5cbi8vIEJvcmRlciBHcmFwaGljXG4kYm9yZGVyLWdyYXBoaWMtaDogMjBweDtcblxuLy8gU3BlY2lhbCBjb2xvdXIgdmFyaWFibGVzXG4kYWEtcHVycGxlLWxpZ2h0ZXI6IGxpZ2h0ZW4oZ2V0LWNvbG9yKHByaW1hcnkpLCAxMCUpO1xuXG4vLyB6LWluZGV4XG4kei1pbmRleC1tYWluOiAxO1xuJHotaW5kZXgtc2l0ZS1mb290ZXI6IDI7XG4kei1pbmRleC1iYW5uZXI6IDM7XG4kei1pbmRleC1za2lwbGluazogNDtcbiR6LWluZGV4LWNvb2tpZS1iYW5uZXI6IDM7XG4kei1pbmRleC1iYW5uZXItbWVudTogMTtcbiR6LWluZGV4LWJhbm5lci1tZW51LXRvZ2dsZTogMjtcbiR6LWluZGV4LXNpdGUtc2VhcmNoOiAxO1xuJHotaW5kZXgtc2l0ZS1zZWFyY2gtdG9nZ2xlOiAyO1xuJHotaW5kZXgtbWFzdGhlYWQtaW1hZ2U6IDE7XG4kei1pbmRleC1tYXN0aGVhZC1jb250ZW50OiAyO1xuJHotaW5kZXgtYnJlYWRjcnVtYjogMztcblxuLy8gU2hhZG93c1xuJHNoYWRvdy1ibG9jazogLTMwcHggMzRweCAwcHggcmdiYSgwLCAwLCAwLCAwLjI1KTtcblxuLy8gRWFzaW5nXG4kZWFzZS1pbi1xdWFkOiBjdWJpYy1iZXppZXIoLjU1LCAuMDg1LCAuNjgsIC41Myk7XG4kZWFzZS1pbi1jdWJpYzogY3ViaWMtYmV6aWVyKC41NTAsIC4wNTUsIC42NzUsIC4xOSk7XG4kZWFzZS1pbi1xdWFydDogY3ViaWMtYmV6aWVyKC44OTUsIC4wMywgLjY4NSwgLjIyKTtcbiRlYXNlLWluLXF1aW50OiBjdWJpYy1iZXppZXIoLjc1NSwgLjA1LCAuODU1LCAuMDYpO1xuJGVhc2UtaW4tZXhwbzogY3ViaWMtYmV6aWVyKC45NSwgLjA1LCAuNzk1LCAuMDM1KTtcbiRlYXNlLWluLWNpcmM6IGN1YmljLWJlemllciguNiwgLjA0LCAuOTgsIC4zMzUpO1xuXG4kZWFzZS1vdXQtcXVhZDogY3ViaWMtYmV6aWVyKC4yNSwgLjQ2LCAuNDUsIC45NCk7XG4kZWFzZS1vdXQtY3ViaWM6IGN1YmljLWJlemllciguMjE1LCAuNjEsIC4zNTUsIDEpO1xuJGVhc2Utb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoLjE2NSwgLjg0LCAuNDQsIDEpO1xuJGVhc2Utb3V0LXF1aW50OiBjdWJpYy1iZXppZXIoLjIzLCAxLCAuMzIsIDEpO1xuJGVhc2Utb3V0LWV4cG86IGN1YmljLWJlemllciguMTksIDEsIC4yMiwgMSk7XG4kZWFzZS1vdXQtY2lyYzogY3ViaWMtYmV6aWVyKC4wNzUsIC44MiwgLjE2NSwgMSk7XG5cbiRlYXNlLWluLW91dC1xdWFkOiBjdWJpYy1iZXppZXIoLjQ1NSwgLjAzLCAuNTE1LCAuOTU1KTtcbiRlYXNlLWluLW91dC1jdWJpYzogY3ViaWMtYmV6aWVyKC42NDUsIC4wNDUsIC4zNTUsIDEpO1xuJGVhc2UtaW4tb3V0LXF1YXJ0OiBjdWJpYy1iZXppZXIoLjc3LCAwLCAuMTc1LCAxKTtcbiRlYXNlLWluLW91dC1xdWludDogY3ViaWMtYmV6aWVyKC44NiwgMCwgLjA3LCAxKTtcbiRlYXNlLWluLW91dC1leHBvOiBjdWJpYy1iZXppZXIoMSwgMCwgMCwgMSk7XG4kZWFzZS1pbi1vdXQtY2lyYzogY3ViaWMtYmV6aWVyKC43ODUsIC4xMzUsIC4xNSwgLjg2KTtcblxuLy8gVHJhbnNpdGlvbnNcbiR0cmFuc2l0aW9uLWNvbG9yOiBjb2xvciAuMjVzICRlYXNlLWluLW91dC1jdWJpYztcbiR0cmFuc2l0aW9uLWJsb2NrOiBjb2xvciAuMjVzICRlYXNlLWluLW91dC1jdWJpYywgYmFja2dyb3VuZC1jb2xvciAuMjVzICRlYXNlLWluLW91dC1jdWJpYztcbiR0cmFuc2l0aW9uLWZpbGw6IGZpbGwgLjI1cyAkZWFzZS1pbi1vdXQtY3ViaWM7XG4kdHJhbnNpdGlvbi1hcnJvdzogb3BhY2l0eSAuMjVzICRlYXNlLWluLW91dC1xdWludCwgdHJhbnNmb3JtIC4yNXMgJGVhc2UtaW4tb3V0LXF1aW50O1xuXG4iLCJAbWl4aW4gZXNjYXBlLWlubmVyIHtcbiAgICBtYXJnaW4tbGVmdDogb3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKTtcbiAgICBtYXJnaW4tcmlnaHQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG4gICAgd2lkdGg6IDEwMCUgKyAob3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKSAqIC0yKTtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG5AbWl4aW4gZXNjYXBlLWlubmVyLXctcGFkZGluZyB7XG4gICAgQGluY2x1ZGUgZXNjYXBlLWlubmVyO1xuICAgIHBhZGRpbmctbGVmdDogb3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKSAqIC0xO1xuICAgIHBhZGRpbmctcmlnaHQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCkgKiAtMTtcbn1cblxuQG1peGluIGFycm93LWxpc3Qge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICBsaSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuOTM4cmVtO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogY2FsYygxMDAlICsgMC43NXJlbSk7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9jaGV2cm9uLXJpZ2h0LnN2ZycpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuNXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWl4aW4gc2xpZGVyLWFycm93cyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbjogYXV0bztcbiAgICB3aWR0aDogcmVtLWNhbGMoNjMpO1xuICAgIGhlaWdodDogcmVtLWNhbGMoNjMpO1xuXG4gICAgLnNsaWNrLXByZXYsXG4gICAgLnNsaWNrLW5leHQge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMC43NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICAgICAgY29sb3I6ICRuYXZ5O1xuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMsXG4gICAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG91dGxpbmU6IDJweCBkb3R0ZWQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDAuNzVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDFyZW07XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDlweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKC0xKTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA5cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTI2KTtcbiAgICAgICAgaGVpZ2h0OiByZW0tY2FsYygxMjYpO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGJsdWU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgfVxufSIsIi8vIFRleHRcbi50ZXh0LWhpZ2hsaWdodCB7XG5cdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uYnJlYWstbWVkaXVtIHtcblx0ZGlzcGxheTogaW5saW5lO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cbn1cblxuLmJyZWFrLWxhcmdlIHtcblx0ZGlzcGxheTogaW5saW5lO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxufVxuXG4vLyBTcGFjaW5nXG4ucGFuZWwtbS0xIHtcblx0bWFyZ2luOiByZW0tY2FsYygkbS0xIDApO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygkbS0yIDApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygkbS0zIDApO1xuXHR9XG59XG5cbi5wYW5lbC1wLTEge1xuXHRwYWRkaW5nOiByZW0tY2FsYygkbS0xIDApO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoJG0tMiAwKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKCRtLTMgMCk7XG5cdH1cbn1cblxuLnBhbmVsLW0tMiB7XG5cdG1hcmdpbjogcmVtLWNhbGMoNjAgMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDExNiAwKTtcblx0fVxufVxuXG4ucGFuZWwtcC0yIHtcblx0cGFkZGluZzogcmVtLWNhbGMoNjAgMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMTYgMCk7XG5cdH1cbn1cblxuXG5cbi5wYW5lbC1tLXNtYWxsIHtcblx0bWFyZ2luOiByZW0tY2FsYyg2MCAwKTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoODUgMCk7XG5cdH1cbn1cblxuLnBhbmVsLXAtc21hbGwge1xuXHRwYWRkaW5nOiByZW0tY2FsYyg2MCAwKTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDg1IDApO1xuXHR9XG59XG5cbi8vIExpc3RzXG4ubGlzdC1zaW1wbGUge1xuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblx0XG5cdGxpIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNSk7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufVxuXG4vLyBJbm5lclxuLmlubmVyIHtcblx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdG1hcmdpbi1yaWdodDogYXV0bztcblx0d2lkdGg6ICRzaXRlLXdpZHRoO1xuXHRtYXgtd2lkdGg6ICRzaXRlLW1heC13aWR0aDtcbn1cblxuLy8gU2Nyb2xsIEFuaW1hdGlvbnNcbltkYXRhLXNjcm9sbF0ge1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDFzLCB0cmFuc2Zvcm0gMXM7XG59XG5cbltkYXRhLXNjcm9sbD1cImluXCJdIHtcblx0b3BhY2l0eTogMTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xufVxuXG5bZGF0YS1zY3JvbGw9XCJvdXRcIl0ge1xuXHRvcGFjaXR5OiAwO1xuXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoNzBweCk7XG59XG5cbi8vIEFuaW1hdGlvbnNcbi5mYWRlLWluIHtcblx0YW5pbWF0aW9uLW5hbWU6IGZhZGUtaW47XG5cdGFuaW1hdGlvbi1kdXJhdGlvbjogMS40cztcblx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGVhc2Utb3V0LWV4cG87XG59XG5cbkBrZXlmcmFtZXMgZmFkZS1pbiB7XG5cdGZyb20ge1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHR0byB7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG4uZmFkZS11cCB7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlLXVwO1xuXHRhbmltYXRpb24tZHVyYXRpb246IDEuNHM7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRlYXNlLW91dC1leHBvO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGUtdXAge1xuXHRmcm9tIHtcblx0XHRvcGFjaXR5OiAwO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MHB4KTtcblx0fVxuXG5cdHRvIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcblx0fVxufVxuXG4vL3RhYmxlc1xuXG50YWJsZSwgdGgsIHRkIHtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcbiAgICBwYWRkaW5nOiAxcmVtO1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIH1cblxuXG4vL2JnXG4uYmctbmF2eSB7XG5cdGJhY2tncm91bmQ6ICRuYXZ5O1xufVxuLmJnLXBpbmsge1xuXHRiYWNrZ3JvdW5kOiAkcGluaztcbn1cbi5iZy1wdXJwbGUge1xuXHRiYWNrZ3JvdW5kOiAkcHVycGxlO1xufVxuLmJnLXJlZCB7XG5cdGJhY2tncm91bmQ6ICRyZWQ7XG59XG4uYmctYmx1ZSB7XG5cdGJhY2tncm91bmQ6ICRibHVlO1xufVxuLmJnLXllbGxvdyB7XG5cdGJhY2tncm91bmQ6ICR5ZWxsb3c7XG59XG4uYmctb3JhbmdlIHtcblx0YmFja2dyb3VuZDogJG9yYW5nZTtcbn1cbi5iZy1ncmF5IHtcblx0YmFja2dyb3VuZDogI0Y1RjVGNTtcbn1cblxuKltjbGFzcyo9XCJiZy1cIl0ge1xuXHQmLmludmVydCB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxufVxuXG4uc3Itb25seSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTYyLjVyZW07XG5cdHRvcDogYXV0bztcblx0d2lkdGg6IDFweDtcblx0aGVpZ2h0OiAxcHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG59IiwiZm9ybSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuaW5wdXQuaW5wdXQtbGFyZ2Uge1xuXHRsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDUwKTtcblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDUwKTtcblx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDIwKTtcblx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg4MCk7XG5cdH1cblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdGhlaWdodDogcmVtLWNhbGMoODApO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuXHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMzApO1xuXHR9XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygxMDApO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzQpO1xuXHR9XG5cdFxuXHQmOjpwbGFjZWhvbGRlciB7XG5cdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdH1cbn1cblxuaW5wdXQge1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDU4KTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG59XG5cbmlucHV0Lm5vLWJvcmRlciB7XG5cdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5maWVsZHNldCB7XG5cdGJvcmRlcjogMDtcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xufVxuXG5bdHlwZT1cImNoZWNrYm94XCJdICsgbGFiZWwge1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy8vLyBDdXN0b20gcmFkaW8vY2hlY2tib3hlc1xuXG4kY2hlY2tib3gteTogNHB4O1xuXG4vLyBCYXNlIGZvciBsYWJlbCBzdHlsaW5nXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCksXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IC05OTk5cHg7XG59XG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbCxcblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKDMwKTtcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4vLyBDaGVja2JveCBhc3BlY3Rcblt0eXBlPVwiY2hlY2tib3hcIl06bm90KDpjaGVja2VkKSArIGxhYmVsOmJlZm9yZSxcblt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsOmJlZm9yZSB7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAkY2hlY2tib3gteTtcblx0bGVmdDogMDtcblx0d2lkdGg6IHJlbS1jYWxjKDE2KTtcblx0aGVpZ2h0OiByZW0tY2FsYygxNik7XG5cdGJvcmRlcjogMXB4IHNvbGlkICM0QTRBNEE7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbn1cblxuLy8gQ2hlY2tlZCBtYXJrIGFzcGVjdFxuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIsXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gIFx0Y29udGVudDogXCJcIjtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6ICRjaGVja2JveC15O1xuXHRsZWZ0OiAwO1xuXHR3aWR0aDogcmVtLWNhbGMoMTYpO1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDE2KTtcblx0Ym9yZGVyOiAxcHggc29saWQgZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xufVxuXG5cbi8vIENoZWNrZWQgbWFyayBhc3BlY3QgY2hhbmdlc1xuW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuXHRvcGFjaXR5OiAwO1xufVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG5cdG9wYWNpdHk6IDE7XG59XG5cbi8vIERpc2FibGVkIGNoZWNrYm94XG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuXHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKCM0QTRBNEEsLjUpO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwuNSk7XG59XG5cblt0eXBlPVwiY2hlY2tib3hcIl06ZGlzYWJsZWQ6Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgXHRiYWNrZ3JvdW5kLWNvbG9yOiAjY2NjO1xufVxuXG5bdHlwZT1cImNoZWNrYm94XCJdOmRpc2FibGVkICsgbGFiZWwge1xuICBcdGNvbG9yOiAjYWFhO1xufVxuXG4vLyBBY2Nlc3NpYmlsaXR5XG5bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQ6Zm9jdXMgKyBsYWJlbDpiZWZvcmUsXG5bdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6Y2hlY2tlZCk6Zm9jdXMgKyBsYWJlbDpiZWZvcmUge1xuICBcdGJvcmRlcjogMnB4IHNvbGlkICRibGFjaztcbn0iLCJoMiwgLmgyIHtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMik7XG5cdH1cbn1cblxuaDMsIC5oMyB7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuXHR9XG59XG5cbmg0LCAuaDQge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcblx0fVxufVxuXG5oNSwgLmg1IHtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNSk7XG5cdH1cbn1cblxuaDYsIC5oNiB7XG5cdGZvbnQtc2l6ZTogMC43NXJlbTtcbn1cblxuLmgxLFxuLmgyLFxuLmgzLFxuLmg0LFxuLmg1LFxuLmg2IHtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG5cdGxpbmUtaGVpZ2h0OiAxMDAlO1xuXHRmb250LXdlaWdodDogNzAwO1xufVxuXG5tYWluIHtcblx0cCwgdWwge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdH1cblx0fVxufVxuXG5wLCAucCB7XG5cdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHR9XG5cdFxuXHRhIHtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxufVxuXG4udGV4dC1ib2R5IHtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdH1cbn1cblxucC50ZXh0LWxhcmdlIHtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcblx0fVxufVxuXG5wICsgaDIsXG5wICsgaDMsXG5wICsgaDQsXG5wICsgaDUsXG5wICsgaDYsIHtcblx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuXHR9XG59XG5cblxuLmRpc3BsYXktMSxcbi5kaXNwbGF5LTIsXG4uZGlzcGxheS0zLFxuLmRpc3BsYXktNCxcbi5kaXNwbGF5LTUsXG4uZGlzcGxheS02IHtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRmb250LXdlaWdodDogNDAwO1xufVxuXG5cbi5kaXNwbGF5LTEge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDYwKTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNjgpO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMjApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTMwKTtcblx0fVxufVxuXG4uZGlzcGxheS0yIHtcblx0Zm9udC1zaXplOiByZW0tY2FsYyg1MCk7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg2MCk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDkwKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEwMCk7XG5cdH1cbn1cblxuLmRpc3BsYXktMyB7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuXHRsaW5lLWhlaWdodDogMTEzLjElO1xuXHRsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNTApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDYwKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoODApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoOTApO1xuXHR9XG59XG5cbi5kaXNwbGF5LTQge1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDM0KTtcblx0bGluZS1oZWlnaHQ6IDg3LjYlO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg1NCk7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg3NCk7XG5cdH1cbn1cblxuLmRpc3BsYXktNSB7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzQpO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg1OCk7XG5cdH1cbn1cblxuLmRpc3BsYXktNiB7XG5cdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjgpO1xuXHR9XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg1NCk7XG5cdH1cbn1cblxuLmludHJvIHtcblx0Zm9udC1zaXplOiByZW0tY2FsYygyNik7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRsaW5lLWhlaWdodDogMTE4LjclO1xuXHRmb250LXdlaWdodDogNjAwO1xuXHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcblx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDgzNCk7XG5cdFx0bWFyZ2luOiBhdXRvO1xuXHR9XG59XG5cbi50aXRsZS1hbmltYXRlIHtcblx0LndvcmQge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxufVxuXG4uZGF0ZSB7XG5cdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ibG9ja3F1b3RlIHtcblx0bWFyZ2luOiAwO1xuXHRwYWRkaW5nOiAwO1xuXHRib3JkZXItbGVmdDogMDtcblx0XG5cdHAge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cblx0Y2l0ZSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGZvbnQtc3R5bGU6IG5vcm1hbDtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IG5vbmU7XG5cdFx0fVxuXHR9XG59XG5cbi5tZXRhLXRleHQge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI4O1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjUpO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuXHR9XG59IiwiLy8gSlMgc3RhdGVzOlxuLy8gYWRkIC5pcy1hY3RpdmUgdG8gLmJhbm5lcl9fbWVudSB3aGVuIGhhbWJ1cmdlciBpcyBjbGlja2VkIC0gb3BlbnMgbWVudSBhdCBtb2JpbGVcbi8vIGFkZCAuaXMtYWN0aXZlIHRvIC5iYW5uZXJfX3NlYXJjaCB3aGVuIHNlYXJjaCBpY29uIGlzIGNsaWNrZWQgLSBvcGVucyBzZWFyY2ggYWxsIHNpemVzXG4vLyBhZGQgLm1lbnUtb3BlbiB0byAuYmFubmVyIHdoZW4gaGFtYnVyZ2VyIGlzIGNsaWNrZWRcbi8vIGFkZCAuc2VhcmNoLW9wZW4gdG8gLmJhbm5lciB3aGVuIHNlYXJjaCB0b2dnbGUgaXMgY2xpY2tlZFxuXG4uYmFubmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAkei1pbmRleC1iYW5uZXI7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHQmLmJnLW5hdnkge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRuYXZ5O1xuXHRcdH1cblx0fVxuXHQmLmJnLXBpbmsge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRwaW5rO1xuXHRcdH1cblx0fVxuXHQmLmJnLXB1cnBsZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHB1cnBsZTtcblx0XHR9XG5cdH1cblx0Ji5iZy1yZWQge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cdFx0fVxuXHR9XG5cdCYuYmctYmx1ZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsdWU7XG5cdFx0fVxuXHR9XG5cdCYuYmcteWVsbG93IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHRcdH1cblx0fVxuXG5cdCZbY2xhc3MqPSdiZy0nXSB7XG5cblxuXHRcdC5zZWFyY2gtdG9nZ2xlIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLXdoaXRlLnN2Z1wiKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQubWVudS10b2dnbGUge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHQmOjpiZWZvcmUsXG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0Jjo6YmVmb3JlLFxuXHRcdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnNlYXJjaC1vcGVuIHtcblx0XHRcdC5tZW51LXRvZ2dsZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHQmOjpiZWZvcmUsXG5cdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdCY6OmJlZm9yZSxcblx0XHRcdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNlYXJjaC10b2dnbGUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYubWVudS1vcGVuIHtcblx0XHRcdC5tZW51LXRvZ2dsZSB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHQmOjpiZWZvcmUsXG5cdFx0XHRcdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdCY6OmJlZm9yZSxcblx0XHRcdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LnNlYXJjaC10b2dnbGUge1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHR9XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoJGJhbm5lci1wLXNtYWxsIDApO1xuXHRcdG1pbi1oZWlnaHQ6IHJlbS1jYWxjKDY2KTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoJGJhbm5lci1wLWxhcmdlIDApO1xuXHRcdHBhZGRpbmctYm90dG9tOiAwO1xuXHR9XG5cblx0Ly8gV2hlbiBiYW5uZXIgaXMgd2hpdGUgbWFrZSBhYnNvbHV0ZSBzbyBtYXN0aGVhZCBjYW4gZ28gZnVsbCBibGVlZFxuXHQmLmlzLXdoaXRlIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwLjQpIDE0LjA2JSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmX19pbm5lciB7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHR9XG5cdH1cblxuXHQmX19sb2dvIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogMjtcblx0XHRjb2xvcjogJG5hdnk7XG5cdFx0dG9wOiAtMS44NzVyZW07XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSBkb3duKSB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiBjYWxjKC01LjVyZW0gLSAzcHgpO1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR0b3A6IC0yLjg3NXJlbTtcblx0XHR9XG5cdFx0XG5cdFx0Jjpmb2N1cyB7XG5cdFx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHR9XG5cdFx0XG5cdFx0c3BhbiB7XG5cdFx0XHQuaXMtd2hpdGUgJiB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmlzLXdoaXRlICYge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cblxuXHQmX19saW5rcyB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRtYXJnaW46IDAgYXV0byByZW0tY2FsYyg0MCk7XG5cdFx0XHR3aWR0aDogJHNpdGUtd2lkdGg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNSkgb3V0ZXItZ3V0dGVyaW5nKCkgcmVtLWNhbGMoNykgcmVtLWNhbGMoMjkpO1xuXHRcdFx0YmFja2dyb3VuZDogIzEwMTAxMDtcblx0XHRcdFxuXHRcdFx0LmlzLXdoaXRlICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0bWFyZ2luOiByZW0tY2FsYygwKTtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDIwIDAgMCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDEuMztcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29sb3I7XG5cdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXG5cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMC44NzVyZW07XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cblx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHRcdFx0XHR0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5pcy13aGl0ZSAmIHtcblx0XHRcdFx0XHRjb2xvcjogJG5hdnk7XG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGRhcmstYmx1ZTtcblx0XHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19tZW51IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMTUgMCAkYmFubmVyLXAtc21hbGwpO1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdG92ZXJmbG93OiBzY3JvbGw7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHR6LWluZGV4OiAkei1pbmRleC1iYW5uZXItbWVudTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwJSk7XG5cdFx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMS4zcyAkZWFzZS1pbi1vdXQtZXhwbztcblxuXHRcdFx0Ji5pcy1hY3RpdmUge1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBvbmx5KSB7XG5cdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0Ym94LXNoYWRvdzogJHNoYWRvdy1ibG9jaztcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMjAlKTtcblx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAxcyAkZWFzZS1pbi1vdXQtY3ViaWM7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHR9XG5cdH1cblxuXHQmX19zZWFyY2gge1xuXHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0ei1pbmRleDogJHotaW5kZXgtc2l0ZS1zZWFyY2g7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuXHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDEuM3MgJGVhc2UtaW4tb3V0LWV4cG87XG5cblx0XHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdCAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMCUpO1xuXHRcdCAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgJGVhc2Utb3V0LWN1YmljLCB0cmFuc2Zvcm0gMHMgLjI1cztcblxuXHRcdCAgICAmLmlzLWFjdGl2ZSB7XG5cdFx0ICAgIFx0b3BhY2l0eTogMTtcblx0XHQgICAgXHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0ICAgIFx0dHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzICRlYXNlLW91dC1jdWJpYywgdHJhbnNmb3JtIDBzO1xuXHRcdCAgICB9XG5cdFx0fVxuXHR9XG59IiwiLmNvbnRlbnQtdy1zaWRlYmFyIHtcblx0bWFyZ2luOiByZW0tY2FsYyg3MCAwKTtcbn0iLCIuc2l0ZS1mb290ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cblx0Jl9fbmF2IHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg2MCAwKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtYmx1ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxMTcgMCk7XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aDIge1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjEpO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMjgpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0fVxuXG5cdHAge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdH1cblx0fVxuXG5cdGEge1xuXHRcdGNvbG9yOiAjMkUyRTJFO1xuXHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yO1xuXHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fYWNjcmVkaXRhdGlvbnMge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNjAgMCA0MCk7XG5cdCAgICB9XG5cdH1cblxuXHQmX19saW5rcyB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMCAwIDUwKTtcblxuXHRcdHVsIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdFx0bGkge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDMwIDEwIDApO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIubm90aWNlU3R5bGUge1xuICAgIG1hcmdpbi1ib3R0b206IGF1dG8gIWltcG9ydGFudDtcbn0iLCIuYWNjb3JkaW9uIHtcblx0Ji10aXRsZSB7XG5cdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdGJvcmRlci10b3A6IDA7XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXItY29sb3I7XG5cdFx0XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0XHR0b3A6IGNhbGMoNTAlIC0gMi41cHgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuXHRcdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygtMjApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE4KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI1KTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI1IDQwKTtcblx0XHR9XG5cdH1cblxuXHQmLWNvbnRlbnQge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDMwKTtcblx0XHRib3JkZXItbGVmdDogMDtcblx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0XHR3b3JkLWJyZWFrOiBicmVhay13b3JkO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYyg0MCk7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHVsIHtcblx0XHRcdGxpIHtcblx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmFjY29yZGlvbi1ibG9jayB7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTk5KTtcblx0fVxufSIsIi5hY2NyZWRpdGF0aW9ucyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICBcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBcdG1hcmdpbjogcmVtLWNhbGMoMCAtMTApO1xuICAgIH1cblxuXHQ+ICoge1xuXHQgICAgd2lkdGg6IDUwJTtcblx0ICAgIHBhZGRpbmc6IDEwcHg7XG5cblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoNDYwKSB7XG5cdCAgICBcdHdpZHRoOiAyMCU7XG5cdCAgICB9XG5cblx0ICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0ICAgIFx0d2lkdGg6IDEwJTtcblx0ICAgIH1cblx0fVxufSIsIiRhbm5vdW5jZW1lbnQtdGV4dC1wOiAzNXB4O1xuJGFubm91bmNlbWVudC1jb250ZW50LWd1dHRlci1zbWFsbDogNDBweDtcbiRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXItbGFyZ2U6IDcwcHg7XG4kYW5ub3VuY2VtZW50LWNvbnRlbnQtZ3V0dGVyLXhsYXJnZTogMTAwcHg7XG5cbi5hbm5vdW5jZW1lbnRzIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXG5cdFx0Ly8gQ3JlYXRlIGZhdXggYmFja2dyb3VuZFxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogb3V0ZXItZ3V0dGVyaW5nKCk7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDkwKTtcblx0fVxuXG5cdCZfX2lubmVyIHtcblx0XHRtYXgtd2lkdGg6ICRjb250ZW50LW1heC13aWR0aDtcblx0fVxuXG5cdCZfX2xpc3Qge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXHR9XG5cblx0Jl9faW1hZ2Uge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMTAvMTIpO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG5cblx0Jl9faW1hZ2UgKyAmX190ZXh0IHtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygkYW5ub3VuY2VtZW50LXRleHQtcCk7XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0bWF4LXdpZHRoOiByZW0tY2FsYyg0OTApO1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRjb2xvcjogJGJsYWNrO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDM4KTtcblx0XHR9XG5cdH1cblxuXHQmX190ZXh0IHtcblx0XHQ+ICoge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYyg1MDApO1xuXHRcdH1cblx0fVxuXG5cdCZfX2NhcmQge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ZmxleC13cmFwOiB3cmFwO1xuXHRcdGFsaWduLWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0MCk7XG5cblx0XHQ+ICoge1xuXHRcdFx0ZmxleDogMSAxMDAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDQvMTIpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXG5cdFx0XHQmLS1mbGlwcGVkIHtcblx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHR9XG5cblx0XHRcdCYtLWJsb2NrIHtcblx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMy8xMik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fY2FyZDpudGgtb2YtdHlwZSgxKSAmIHtcblx0XHQmX190ZXh0IHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Ly8gQ3JlYXRlIGEgZmF1eCAgd2hpdGUgYmFja2dyb3VuZCB0byBjcmVhdGUgYSBzdHJpcGUgYWZmZWN0XG5cdFx0XHRcdC8vIFRoaXMgY3JlYXRlcyB0aGUgaWxsdXN0aW9uIHRoYXQgZ3JleSBiYWNrZ3JvdW5kIHN0b3BzIGF0IHRoZSBib3R0b20gb2YgdGhlIGZpcnN0IGltYWdlXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRsZWZ0OiAtMTAwJTtcblx0XHRcdFx0XHRyaWdodDogLTEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKC0kYW5ub3VuY2VtZW50LXRleHQtcCk7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoJGFubm91bmNlbWVudC1jb250ZW50LWd1dHRlci1zbWFsbCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXItbGFyZ2UpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXIteGxhcmdlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19pbWFnZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpICogMztcblx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoJGFubm91bmNlbWVudC1jb250ZW50LWd1dHRlci1zbWFsbCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXItbGFyZ2UpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXIteGxhcmdlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19jYXJkLS1mbGlwcGVkICYge1xuXHRcdCZfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRvcmRlcjogMTtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoJGFubm91bmNlbWVudC1jb250ZW50LWd1dHRlci1zbWFsbCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXItbGFyZ2UpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRhbm5vdW5jZW1lbnQtY29udGVudC1ndXR0ZXIteGxhcmdlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19pbWFnZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0b3JkZXI6IDI7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206ICRib3JkZXItZ3JhcGhpYy1oO1xuXG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHR3aWR0aDogNzAlO1xuXHRcdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoJGJvcmRlci1ncmFwaGljLWgpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fY2FyZC0tYmxvY2sgJiB7XG5cdFx0Jl9fdGV4dCB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzMCk7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTYwKTtcblx0XHRcdFx0YWxpZ24tc2VsZjogZmxleC1zdGFydDtcblxuXHRcdFx0XHQvLyBBZGQgZmF1eCBiYWNrZ3JvdW5kIHRvIGZha2Ugc3RyZXRjaCB0aGlzIGJsb2NrXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRyaWdodDogcmVtLWNhbGMoLTI3MCk7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKC05MCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg2MCA1MCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoODAgODApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RpdGxlIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLWxpc3Qge1xuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHR9XG5cblx0LnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0fVxufSIsIi8vLyBDYWxjdWxhdGVzIHRoZSBzdGFuZGFyZCBvdXRlciBndXR0ZXJpbmcgZm9yIHRoZSB3ZWJzaXRlXG4vLy8gRWZmZWN0aXZlbHksIHRoaXMgaXMgdGhlIGRpc3RhbmNlIC5pbm5lciBpcyBhd2F5IGZyb20gdGhlIHNpZGVzIG9mIHRoZSBicm93c2VyIHdpbmRvdyBiZWZvcmUgaXQgcmVhY2hlcyBtYXgtd2lkdGhcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBTQVNTIFVzYWdlXG4vLy8gLmNvbnRlbnQtd3JhcHBlciB7XG4vLy8gICAgIG1hcmdpbi1sZWZ0OiBvdXRlci1ndXR0ZXJpbmcoKTtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBvdXRlci1ndXR0ZXJpbmcoKTtcbi8vLyB9XG5AZnVuY3Rpb24gb3V0ZXItZ3V0dGVyaW5nKCkge1xuICAgIEByZXR1cm4gKDEwMCUgLSAkc2l0ZS13aWR0aCkgLyAyO1xufVxuXG5cbi8vLyBUaGUgcGVyY2VudGFnZSByZXF1aXJlZCB0byByZW1vdmUgdGhlIGd1dHRlcmluZyBwcm92aWRlZCBieSAuaW5uZXJcbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBTQVNTIFVzYWdlXG4vLy8gLmZ1bGwtd2lkdGgge1xuLy8vICAgICBtYXJnaW4tbGVmdDogb3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKTtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuLy8vIH1cbkBmdW5jdGlvbiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpIHtcbiAgICBAcmV0dXJuIC0oKG91dGVyLWd1dHRlcmluZygpIC8gKCRzaXRlLXdpZHRoIC8gMTAwJSkpKTtcbn0iLCIkYXotZ3V0dGVyLTE6IDE2cHg7XG4kYXotZ3V0dGVyLTI6IDMwcHg7XG5cbi5heiB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGZsZXgtd3JhcDogd3JhcDtcblx0bWFyZ2luOiByZW0tY2FsYygtKCRhei1ndXR0ZXItMS8yKSk7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgIFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgIFx0IEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHQgICAgXHRkaXNwbGF5OiBmbGV4O1xuXHQgICAgXHRtYXJnaW4tdG9wOiByZW0tY2FsYygxMCk7XG5cdFx0fVxuICAgIFx0XG4gICAgfVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygtKCRhei1ndXR0ZXItMi8yKSk7XG5cdH1cblxuXHRsaSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygkYXotZ3V0dGVyLTEvMik7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luOiByZW0tY2FsYygkYXotZ3V0dGVyLTIvMik7XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0ICAgIGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0XHQgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0ICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDY1KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoNjUpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYyg5NSk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoOTUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5ibG9jayB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiByZW0tY2FsYyg0MCAzMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogNjBweDtcblx0XHRcdHJpZ2h0OiA2MHB4O1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg0MCAzMCk7XG5cdFx0YWxpZ24tc2VsZjogc3RyZXRjaDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdCY6bnRoLWxhc3QtY2hpbGQoLW4rMykge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg3MCA1MCk7XG5cdH1cblxuXHRoMyB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzNik7XG5cdFx0fVxuXHR9XG5cblx0cCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR9XG5cdH1cbn0iLCIuYmxvY2stbGlzdCB7XG5cdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKC0yMCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTQwKTtcblx0fVxuXG5cdCZfX2l0ZW0ge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXHRcdH1cblx0fVxuXG5cdGEge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRoMyB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aDMge1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb2xvcjtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0fVxuXHR9XG5cblx0aW1nIHtcblx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDEwNCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cdH1cbn0iLCIuYnJlYWRjcnVtYiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogJHotaW5kZXgtYnJlYWRjcnVtYjtcblxuXHQmLmlzLXdoaXRlIHtcblx0XHRvbCB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblxuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRvbCB7XG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRtYXJnaW46IDA7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0LnRoZW1lLXBpbmsgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0fVxuXHR9XG5cblx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogMnB4IGRvdHRlZDtcblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0YSB7XG5cdFx0XHRcdCY6OmFmdGVyIHtcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb2xvcjtcblx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRvdXRsaW5lOiAycHggZG90dGVkO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogXCI+XCI7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0bWFyZ2luOiByZW0tY2FsYygwIDYgMCA4KTtcblx0XHRcdH1cblxuXHRcdFx0Ji5uby1hZnRlciB7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDIwKTtcblx0XHRcdFx0aGVpZ2h0OiAxcHg7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcblx0XHRcdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIC4yNXMgJGVhc2UtaW4tb3V0LWN1YmljO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5idXR0b24tbGluay1ncm91cCB7XG5cdD4gKiB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYyg2IDMwIDYgMCk7XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXHRcdH1cblx0fVxufSIsIi5idXR0b24sXG4uYnV0dG9uLWxpbmsge1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cdGZvbnQtZmFtaWx5OiAnRE0gU2Fucyc7XG5cdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xufVxuXG4uYnV0dG9uLWxpbmsge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcblx0XHR0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyAkZWFzZS1pbi1vdXQtcXVpbnQ7XG5cdH1cblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHtcblx0XHRjb2xvcjogaW5oZXJpdDtcblx0XHQmOmFmdGVyIHtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHR9XG5cdH1cblxuXHQmLndoaXRlIHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHRcdH1cblx0fVxufVxuXG4uYnV0dG9uLnNtYWxsIHtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0fVxufVxuXG5idXR0b24uYnV0dG9uLWxpbmsge1xuXHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi5zZWFyY2gtYnV0dG9uIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHR0b3A6IDA7XG5cdHJpZ2h0OiAwO1xuXHR3aWR0aDogcmVtLWNhbGMoNDApO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRleHQtaW5kZW50OiAxMDAlO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zZWFyY2gtaWNvbi1wdXJwbGUuc3ZnJyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodCAxLjI1cmVtO1xuXHRiYWNrZ3JvdW5kLXNpemU6IDEuMTI1cmVtO1xufVxuXG4uc2VhcmNoLWJ1dHRvbi1sYXJnZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogcmVtLWNhbGMoMTApO1xuXHR3aWR0aDogcmVtLWNhbGMoNDApO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHRleHQtaW5kZW50OiAxMDAlO1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRwYWRkaW5nOiAwO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zZWFyY2gtaWNvbi1wdXJwbGUuc3ZnJyk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciByaWdodDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0YmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygyNylcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRyaWdodDogcmVtLWNhbGMoMjApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdHdpZHRoOiByZW0tY2FsYyg0NSk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiByZW0tY2FsYyg0Milcblx0fVxufVxuXG4ubWFzdGhlYWQtYnV0dG9uIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OiAwO1xuXHRjb2xvcjogJHdoaXRlO1xuXHRwYWRkaW5nOiByZW0tY2FsYygyNCk7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSg1MCUpO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDI0KTtcblx0bGluZS1oZWlnaHQ6IDAuOTQ7XG5cdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMCk7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDE4MCk7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYygxODApO1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygxNSk7XG5cdFx0XHRyaWdodDogcmVtLWNhbGMoMTUpO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDI0KTtcblx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjApO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5zdmcnKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDI0KTtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwcHgpO1xuXHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYXJyb3c7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0cmlnaHQ6IG91dGVyLWd1dHRlcmluZygpO1xuXHRcdGJvdHRvbTogcmVtLWNhbGMoMTAwKTtcblx0XHR3aWR0aDogcmVtLWNhbGMoMjEwKTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIxMCk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygzOCk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHR3aWR0aDogcmVtLWNhbGMoMjUwKTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDI1MCk7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0NCk7XG5cdH1cbn1cblxuLmJ1dHRvbi5ob2xsb3cud2hpdGUubmVnYXRpdmUge1xuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkd2hpdGU7XG5cdFx0Y29sb3I6ICRibGFjaztcblx0fVxufVxuXG4ucmVtb3ZlIHtcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJ4XCI7XG5cdFx0bWFyZ2luLWxlZnQ6IHJlbS1jYWxjKDgpO1xuXHR9XG59XG5cbi5jbG9zZS1idXR0b24ge1xuXHR3aWR0aDogNDBweDtcblx0aGVpZ2h0OiA0MHB4O1xuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRyaWdodDogMDtcblx0XHR3aWR0aDogcmVtLWNhbGMoMzApO1xuXHRcdGhlaWdodDogcmVtLWNhbGMoMik7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xuXHRcdHRvcDogcmVtLWNhbGMoMjApXG5cdH1cblxuXHQmOmFmdGVyIHtcblx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdH1cblxuXHQmLndoaXRlIHtcblx0XHQmOmJlZm9yZSxcblx0XHQmOmFmdGVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cbn0iLCIuY2FsbG91dCB7XG5cdG1hcmdpbi1ib3R0b206IDA7XG5cdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNTApO1xuXHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYyg1MCk7XG5cdHotaW5kZXg6IDE7XG5cblx0Ji5wcmltYXJ5IHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdC5jbG9zZS1idXR0b24ge1xuXHRcdFx0JjpiZWZvcmUsXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5idXR0b24tbGluayB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTEwKTtcblx0fVxuXG5cdGE6b25seS1jaGlsZCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblxuXHRwICsgYSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTIwKTtcblx0fVxufSIsIi5jb250ZW50LWNvbHMge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblxuXHQmOm50aC1jaGlsZChvZGQpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdH1cblxuXHQuZ3JpZC14ID4gLmNlbGwge1xuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG5cdC5ncmlkLXgge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXHR9XG5cblx0LmNlbGwge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDYwKTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdFx0Ji54bGFyZ2UtNiB7XG5cdFx0XHRcdHAge1xuXHRcdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTUyKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cblx0cCB7XG5cdFx0bGluZS1oZWlnaHQ6IDE1MC43JTtcblx0XHRjb2xvcjogIzJFMkUyRTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdH1cblx0fVxuXG5cdHA6bGFzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdC5oMiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0XHRsZXR0ZXItc3BhY2luZzogMDtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMik7XG5cdFx0fVxuXHR9XG5cblx0dWwubm8tYnVsbGV0IHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXG5cdFx0KyAqIHtcblx0XHRcdG1hcmdpbi10b3A6IDEuODc1cmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMy43NXJlbTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cdFx0XHRsaW5lLWhlaWdodDogMTUwJTtcblx0XHRcdGZvbnQtc2l6ZTogMC43NXJlbTtcblx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblxuXHQmX19tYWluIHtcblx0XHQ+ICoge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLmNvb2tpZS1iYW5uZXIge1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdGFsaWduLWNvbnRlbnQ6IGNlbnRlcjtcblx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdHdpZHRoOiAxMDAlO1xuXHRib3R0b206IDA7XG5cdGxlZnQ6IDA7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcblx0ei1pbmRleDogJHotaW5kZXgtY29va2llLWJhbm5lcjtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cdGFuaW1hdGlvbi1uYW1lOiBmYWRlLXVwO1xuXHRhbmltYXRpb24tZHVyYXRpb246IDEuNHM7XG5cdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICRlYXNlLW91dC1leHBvO1xuXHRhbmltYXRpb24tZGVsYXk6IDNzO1xuXHRhbmltYXRpb24tZmlsbC1tb2RlOiBiYWNrd2FyZHM7XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdH1cblxuXHQuYnV0dG9uIHtcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdGZsZXgtc2hyaW5rOiAwO1xuXHR9XG5cblx0cCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcblxuXHRcdGEge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdH1cblx0fVxufVxuIiwiLmNsdXN0ZXItaW1hZ2Uge1xuXHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRwYWRkaW5nOiA1JSAwIDIyJSAwO1xuXG5cdD4gKiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXG5cdFx0JjpudGgtb2YtdHlwZSgxKSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHR3aWR0aDogNzAlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMCU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRib3JkZXItYm90dG9tOiAkYm9yZGVyLWdyYXBoaWMtaCBzb2xpZCAkYmx1ZTtcblx0XHR9XG5cblx0XHQmOm50aC1vZi10eXBlKDIpIHtcblx0XHRcdHdpZHRoOiAyMCU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRyaWdodDogMDtcblx0XHR9XG5cblx0XHQmOm50aC1vZi10eXBlKDMpIHtcblx0XHRcdHdpZHRoOiAzMyU7XG5cdFx0XHR0b3A6IDE4JTtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0fVxuXG5cdFx0JjpudGgtb2YtdHlwZSg0KSB7XG5cdFx0XHR3aWR0aDogNDQlO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXHR9XG59IiwiLmNsdXN0ZXItaW1hZ2UtdGV4dCB7XG5cdCZfX2lubmVyIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdH1cblx0fVxuXG5cdCZfX2ltYWdlIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoOC8xMik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygtMTAwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg3LzEyKTtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDcvMTIpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDUvMTIpO1xuXHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygkdGV4dC1tYXgtd2lkdGgtc21hbGwpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoJHRleHQtbWF4LXdpZHRoLWxhcmdlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuY29udGVudC1jYXJkIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cblx0aW1nIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxuXHQmX190ZXh0IHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdD4gKiB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXHR9XG5cblx0aDMge1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMik7XG5cdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29sb3I7XG5cdH1cblxuXHRwIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHRoMyB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdH1cblx0fVxuXG5cdC8vIENyZWF0ZSBmYXV4IHdoaXRlIHN0cmlwIHRoYXQgc3RyZXRjaGVzIGFjcm9zcyBhbGwgdGV4dFxuXHQvLyBUaGlzIGFsbG93cyB1cyB0byBjcmVhdGUgdGhlIHN0cmlwIGVmZmVjdFxuXHQmOm50aC1vZi10eXBlKDEpICYge1xuXHRcdCZfX3RleHQge1xuXHRcdFx0Lm1vcmUgJiB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRsZWZ0OiAtMjAwJTtcblx0XHRcdFx0XHRyaWdodDogLTIwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtLXNtYWxsIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIwKTtcblx0XHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygyMjApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGgzIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMCk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxNCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtLXNtYWxsIHtcblx0XHRpbWcge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG5cdFx0XHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji0tc21hbGwgJiB7XG5cdFx0Jl9fdGV4dCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5jb3Vyc2UtYWNjcmVkaXRhdGlvbnMge1xuXHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cblx0aW1nIHtcblx0XHRtYXJnaW46IHJlbS1jYWxjKDAgNDAgMjAgMCk7XG5cdFx0bWF4LWhlaWdodDogODBweDtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0fVxuXHR9XG59IiwiLmNvdXJzZS1idXR0b25zIHtcblx0bWFyZ2luLWJvdHRvbTogLTFyZW07XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cdH1cblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IGdldC1jb2xvcihwcmltYXJ5KSAhaW1wb3J0YW50O1xuXHRcdFx0Y29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdH1cblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogMnB4IGRvdHRlZCAkd2hpdGU7IFxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTtcblx0fVxufVxuIiwiLmNvdXJzZS1kZXRhaWxzIHtcblx0aDIge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI1KTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjApO1xuXHRcdH1cblx0fVxuXG5cdC5oNSB7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDA7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0fVxuXHR9XG5cblx0dWwge1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTcpO1xuXHRcdH1cblxuXHRcdHN0cm9uZyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fcm93IHtcblx0XHRtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IC0yLjVyZW07XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXHRcblx0Jl9fdGV4dCB7XG5cdFx0cCB7XG5cdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNnB4O1xuXHRcdH1cblxuXHRcdG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IC02cHg7XG5cdFx0fVxuXHR9XG59IiwiLmNvdXJzZS1pbnRybyB7XG5cblx0LmRpc3BsYXktNCB7XG5cdFx0c3Ryb25nIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNzQpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzcpO1xuXHRcdH1cblx0fVxuXG5cdHAge1xuXHRcdGxpbmUtaGVpZ2h0OiAxNjAlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdCY6bGFzdC1vZi10eXBlIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogOTAlO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYyg0NjIpO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDU2Mik7XG5cdFx0fVxuXHR9XG5cblx0YnV0dG9uIHtcblx0XHQmLmJ1dHRvbi1saW5rIHtcblx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdH1cblx0XHQmOmZvY3VzIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdH1cblx0fVxufSIsIi5ldmVudC1jYXJkIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRwYWRkaW5nOiByZW0tY2FsYygzMCk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIC4yNXMgJGVhc2UtaW4tb3V0LWN1YmljO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogNDUlO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0fVxuXG5cdCY6bnRoLW9mLXR5cGUob2RkKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuXHRcdH1cblx0fVxuXG5cdCRldmVudC1jYXJkLXAtc21hbGw6IDMwcHg7XG5cdCRldmVudC1jYXJkLXAtbWVkaXVtOiA0MHB4O1xuXHQkZXZlbnQtY2FyZC1wLWxhcmdlOiA1MHB4O1xuXG5cdCZfX2xpbmsge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygkZXZlbnQtY2FyZC1wLXNtYWxsKTtcblxuXHRcdFx0PiAqIHtcblx0XHRcdFx0ZmxleDogMSAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoJGV2ZW50LWNhcmQtcC1tZWRpdW0pO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKCRldmVudC1jYXJkLXAtbGFyZ2UpO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJvdHRvbTogcmVtLWNhbGMoJGV2ZW50LWNhcmQtcC1zbWFsbCk7XG5cdFx0XHRyaWdodDogcmVtLWNhbGMoJGV2ZW50LWNhcmQtcC1zbWFsbCk7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMjQpO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygyMCk7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnN2ZycpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1MHB4KTtcblx0XHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWFycm93O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygkZXZlbnQtY2FyZC1wLW1lZGl1bSk7XG5cdFx0XHRcdHJpZ2h0OiByZW0tY2FsYygkZXZlbnQtY2FyZC1wLW1lZGl1bSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygkZXZlbnQtY2FyZC1wLWxhcmdlKTtcblx0XHRcdFx0cmlnaHQ6IHJlbS1jYWxjKCRldmVudC1jYXJkLXAtbGFyZ2UpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyOCk7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMCk7XG5cdFx0dHJhbnNpdGlvbjogY29sb3IgLjI1cyAkZWFzZS1pbi1vdXQtY3ViaWM7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDQwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDQ2KTtcblx0XHR9XG5cdH1cblxuXHR0aW1lIHtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdHRyYW5zaXRpb246IGNvbG9yIC4yNXMgJGVhc2UtaW4tb3V0LWN1YmljO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0YWxpZ24tc2VsZjogZmxleC1lbmQ7XG5cdFx0fVxuXHR9XG5cblx0Jl9fbW9udGgge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOSk7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdH1cblxuXHQmX19kYXkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTEyKTtcblx0XHRsaW5lLWhlaWdodDogMC44Nztcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgyKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI0MCk7XG5cdFx0fVxuXHR9XG59IiwiLmV2ZW50LWNhcmQtZ3JvdXAge1xuXHR3aWR0aDogMTAwJTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdH1cblxuXHQ+ICoge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKC00MCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTcwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpY2stdHJhY2sgPiAqIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNDApO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1saXN0IHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGhlaWdodDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0b3ZlcmZsb3c6IHZpc2libGU7XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLXRyYWNrIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXHRcdGhlaWdodDogMTAwJTtcblx0fVxuXG5cdC5zbGljay1zbGlkZSB7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG59IiwiLmZlYXR1cmUtYmxvY2tzIHtcblx0Jl9faXRlbSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cblx0XHQ+ICoge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdH1cblxuXHRcdCY6bnRoLW9mLXR5cGUoZXZlbikge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygxMDApO1xuXHRcdFx0fVxuXG5cdFx0XHQvLyBDcmVhdGUgZmF1eCBiYWNrZ3JvdW5kIGZvciBtb3JlIGNvbnRyb2wgb2YgcG9zaXRpb25pbmdcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiByZW0tY2FsYyg4MCk7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIEZpcnN0IGl0ZW0gc3BlY2lmaWNcblx0Jl9faXRlbTpudGgtb2YtdHlwZShvZGQpICYge1xuXHRcdCZfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiByZW0tY2FsYygxMDApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFNlY29uZCBpdGVtIHNwZWNpZmljXG5cdCZfX2l0ZW06bnRoLW9mLXR5cGUoZXZlbikgJiB7XG5cdFx0Jl9faW1hZ2Uge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0b3JkZXI6IDI7XG5cdFx0XHRcdG1hcmdpbjogcmVtLWNhbGMoMzAgMCAtMzApO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbjogcmVtLWNhbGMoNjAgMCAtNjApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0b3JkZXI6IDE7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAwO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1yaWdodDogcmVtLWNhbGMoMTAwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19pbWFnZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDQwJTtcblx0XHR9XG5cdH1cblxuXHQmX190ZXh0IHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygzMCAwKTtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygzNSk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDQwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwKTtcblx0XHR9XG5cdH1cblxuXHRoMiB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cdH1cblxuXHRwIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA4MCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDcwJTtcblx0XHR9XG5cdH1cblxuXHR1bCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxufSIsIi5mZWF0dXJlLWV2ZW50IHtcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0JjpudGgtY2hpbGQoNG4gLSAxKSAmLFxuXHQmOm50aC1jaGlsZCg0biAtIDMpICYge1xuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdH1cblxuXHRcdCZfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMzAgMCA0MCA2MCk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoOTkgMCA4OSA5NSk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDk5IDAgODkgMTYwKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19pbWFnZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXI7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiBjYWxjKDExMSUgLyAyKTtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogcGVyY2VudGFnZSg3LzEyKTtcblx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0JjpudGgtY2hpbGQoZXZlbikge1xuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zdWItbWFzay0xLnN2ZycpO1xuXHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdGJhY2tncm91bmQtc2l6ZTogMTAwdnc7XG5cdFx0XHR6LWluZGV4OiAtMTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG5cdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjQpO1xuXHRcdFx0XHR0cmFuc2Zvcm0tb3JpZ2luOiAxMCUgMTAlO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDkwdnc7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gJjpudGgtY2hpbGQoKSB7XG5cdC8vIFx0Jjo6YmVmb3JlIHtcblx0Ly8gXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdC8vIFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdC8vIFx0XHR3aWR0aDogMTAwJTtcblx0Ly8gXHRcdGhlaWdodDogMTAwJTtcblx0Ly8gXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3N1Yi1tYXNrLTIuc3ZnJyk7XG5cdC8vIFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHQvLyBcdFx0YmFja2dyb3VuZC1zaXplOiA2NHZ3O1xuXHQvLyBcdFx0ei1pbmRleDogLTE7XG5cblx0Ly8gXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHQvLyBcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHQvLyBcdFx0fVxuXG5cdC8vIFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdC8vIFx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMS40KTtcblx0Ly8gXHRcdFx0dHJhbnNmb3JtLW9yaWdpbjogMTAlIDEwJTtcblx0Ly8gXHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvc3ViLW1hc2stMS5zdmcnKTtcblx0Ly8gXHRcdFx0YmFja2dyb3VuZC1zaXplOiAxMDB2dztcblxuXHQvLyBcdFx0fVxuXHQvLyBcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHQvLyBcdFx0XHRiYWNrZ3JvdW5kLXNpemU6IDYydnc7XG5cdC8vIFx0XHR9XG5cdC8vIFx0fVxuXHQvLyB9XG5cblx0Jl9fY29udGVudCB7XG5cblx0XHQuZGF0ZSB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5kaXNwbGF5LTQge1xuXHRcdFx0c3Ryb25nIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzcpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE2MCU7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHR9XG5cblx0XHQudGV4dC1ib2R5IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDM3KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMC45MzhyZW07XG5cdFx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0dWwge1xuXHRcdFx0bGkge1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMC45MzhyZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDcpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5idXR0b24tbGluayB7XG5cdFx0XHRjb2xvcjogJGhvdHBpbms7XG5cdFx0XHQmOjphZnRlciB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRob3RwaW5rO1xuXHRcdFx0fVxuXHRcdFx0Jjpob3Zlcixcblx0XHRcdCY6Zm9jdXMsXG5cdFx0XHQmOmFjdGl2ZSB7XG5cdFx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyXG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdEBpbmNsdWRlIGVzY2FwZS1pbm5lci13LXBhZGRpbmc7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNi8xMik7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMzAgNjAgNDAgMCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg5OSA5NSA4OSAwKTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoOTkgMTYwIDg5IDApO1xuXHRcdH1cblx0fVxuXG5cdCZfX2ltYWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXI7XG5cdFx0fVxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXI7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblx0XHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRwYWRkaW5nLXRvcDogY2FsYygxMTElIC8gMik7XG5cdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDcvMTIpO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5mZWF0dXJlLXBhbmVsIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoOTApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxMTApO1xuXHR9XG5cblx0LmRpc3BsYXktMiB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzkwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDQyMCk7XG5cdFx0fVxuXHR9XG5cblx0JjpiZWZvcmUge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogcmVtLWNhbGMoNDApO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogb3V0ZXItZ3V0dGVyaW5nKCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9faW5uZXIge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXHR9XG5cblx0Jl9fY29udGVudCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbi1sZWZ0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiAocGVyY2VudGFnZSg5LzEyKSkgKyAob3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKSAqIC0xKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogKHBlcmNlbnRhZ2UoNi8xMikpICsgKG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCkgKiAtMSk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiAocGVyY2VudGFnZSg3LzEyKSkgKyAob3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKSAqIC0xKTtcblx0XHR9XG5cblx0XHQuYm9yZGVyLWdyYXBoaWMgJiB7XG5cdFx0XHQvLyBBZGQgYm9yZGVyIGdyYXBoaWNcblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogcmVtLWNhbGMoLSRib3JkZXItZ3JhcGhpYy1oKTtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxMDApO1xuXHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKCRib3JkZXItZ3JhcGhpYy1oKTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19zdGF0IHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDcwJTtcblx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDMyMCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDQwMCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzAgMCA2MCk7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiBwZXJjZW50YWdlKDUvMTIpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDUvMTIpO1xuXHRcdFx0YWxpZ24tc2VsZjogY2VudGVyO1xuXHRcdFx0cGFkZGluZy10b3A6IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDQvMTIpO1xuXG5cdFx0XHQmLS1leHBhbmQteGxhcmdlIHtcblx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRwIHtcblx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKCR0ZXh0LW1heC13aWR0aC1zbWFsbCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKCR0ZXh0LW1heC13aWR0aC1sYXJnZSk7XG5cdFx0fVxuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gRmxpcCB3aGVuIHRoZXJlcyBhIHNlY29uZCBvbmVcblx0JjpudGgtb2YtdHlwZShldmVuKSxcblx0Ji0tZmxpcHBlZCB7XG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdHJpZ2h0OiBvdXRlci1ndXR0ZXJpbmcoKTtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmOm50aC1vZi10eXBlKGV2ZW4pICYsXG5cdCYtLWZsaXBwZWQgJiB7XG5cdFx0Jl9fY29udGVudCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190ZXh0IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0b3JkZXI6IDE7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLWRvdHMge1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0Ym90dG9tOiByZW0tY2FsYygzMCk7XG5cdFx0d2lkdGg6IDcwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdGJvdHRvbTogcmVtLWNhbGMoODApO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IHJlbS1jYWxjKC04KTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYyg4MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygxMjApO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1zbGlkZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LnNsaWNrLWxpc3Qge1xuXHRcdG92ZXJmbG93OiB2aXNpYmxlO1xuXHR9XG5cblx0LnNsaWNrLWluaXRpYWxpemVkIC5zbGljay1zbGlkZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stc2xpZGUge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stZG90dGVkLnNsaWNrLXNsaWRlciB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXG5cdC5zbGljay1wcmV2LCAuc2xpY2stbmV4dCB7XG5cdFx0dG9wOiBhdXRvO1xuXHRcdGJvdHRvbTogcmVtLWNhbGMoMjUpO1xuXHRcdHotaW5kZXg6IDEwMDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRib3R0b206IHJlbS1jYWxjKDEwKTtcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stbmV4dCB7XG5cdFx0cmlnaHQ6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRsZWZ0OiByZW0tY2FsYygzNSk7XG5cdFx0XHRyaWdodDogYXV0bztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRyaWdodDogNTAlO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHJpZ2h0OiBwZXJjZW50YWdlKDcvMTIpO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzMCk7XG5cdFx0fVxuXHR9XG5cblx0LnNsaWNrLXByZXYge1xuXHRcdHJpZ2h0OiByZW0tY2FsYygzNSk7XG5cdFx0bGVmdDogYXV0bztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRyaWdodDogYXV0bztcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRyaWdodDogcGVyY2VudGFnZSg3LzEyKTtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNzApO1xuXHRcdH1cblx0fVxuXG5cdC8vIFdoZW4gd2Ugd2FudCB0aGUgZ3JleSBiYWNrZ3JvdW5kIG5vdCB0byBiZSBmbHVzaCBhdCB0aGUgYm90dG9tXG5cdCYtLWNsaXBwZWQge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGJvdHRvbTogcmVtLWNhbGMoNTUpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCYtLWNsaXBwZWQgJiB7XG5cdFx0Jl9fdGV4dCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG5cdFx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygzMCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDYwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy8gU3BlY2lhbCBleGNlcHRpb25zXG5cbi5sYXRlc3QtZXZlbnRzICsgLmZlYXR1cmUtcGFuZWwge1xuXHQmOmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRsZWZ0OiBvdXRlci1ndXR0ZXJpbmcoKTtcblx0XHR9XG5cdH1cblxuXHQuZmVhdHVyZS1wYW5lbF9fY29udGVudCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0b3JkZXI6IDE7XG5cdFx0XHRtYXJnaW4tbGVmdDogb3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKTtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cblx0XHQmOmFmdGVyIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGxlZnQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmZlYXR1cmUtcGFuZWxfX3RleHQge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdG9yZGVyOiAyO1xuXHRcdH1cblx0fVxufSIsIi5mb3JtLXBhbmVsIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cdHBhZGRpbmc6IDFyZW0gMDtcblx0YnV0dG9uIHtcblx0XHRiYWNrZ3JvdW5kOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0Y29sb3I6ICNmZmY7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBcdG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICBcdHBhZGRpbmc6IDAuODVlbSAxZW07XG4gICAgXHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBcdGJvcmRlci1yYWRpdXM6IDA7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzIGVhc2Utb3V0LGNvbG9yIC4yNXMgZWFzZS1vdXQ7XG5cdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgIFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0fVxuXHRcdH1cblx0XG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoOTApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxMTApO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDEyMCk7XG5cdH1cblx0Jl9faW5uZXIge1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LWZsb3c6IHJvdyB3cmFwO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cdCZfX2NvbnRlbnQge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwKTtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDYwIDAgNjApO1xuXHRcdH1cdFx0XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiAocGVyY2VudGFnZSgxMi8xMikpO1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNjApO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogKHBlcmNlbnRhZ2UoNi8xMikpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogKHBlcmNlbnRhZ2UoNy8xMikpO1xuXHRcdH1cblx0fVxuXHQmX190ZXh0IHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg2MCk7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwpIHtcblx0XHRcdFxuXHRcdFx0d2lkdGg6IChwZXJjZW50YWdlKDEyLzEyKSk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDQvMTIpO1xuXG5cdFx0XHQmLS1leHBhbmQteGxhcmdlIHtcblx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDIwKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuZmVhdHVyZS1wcm9maWxlIHtcblx0Jl9fY29udGVudCB7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdEBpbmNsdWRlIGVzY2FwZS1pbm5lci13LXBhZGRpbmc7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHQmX19pbWFnZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzAwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwYWRkaW5nLXRvcDogMzIlO1xuXHRcdFx0d2lkdGg6IDMyJTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDIwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogMzYlO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygyODgpO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygyODgpO1xuXHRcdH1cblxuXHRcdGltZyB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdG9iamVjdC1maXQ6IGNvbnRhaW47XG5cdFx0XHQtd2Via2l0LW1hc2s6IHVybCgnLi4vaW1nL21hc2stc2hhcGUtMi5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY292ZXI7XG5cdFx0XHQtd2Via2l0LW1hc2stc2l6ZTogMTAwJTtcblx0XHRcdC13ZWJraXQtbWFzay1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHR9XG5cdH1cblxuXHQmX19ib3gge1xuXHRcdFxuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiAxLjg3NXJlbTtcblx0XHRoZWlnaHQ6IG1heC1jb250ZW50O1xuXG5cdFx0PiAqLFxuXHRcdGEsIFxuXHRcdGJsb2NrcXVvdGUsXG5cdFx0cCxcblx0XHRjaXRlIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRtYXJnaW4tdG9wOiAyMCU7XG5cdFx0XHRwYWRkaW5nOiAyLjVyZW07XG5cdFx0fVxuXHRcdFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDY3IDY2IDY3IDY2KTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTIzKTtcblx0XHR9XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxMiU7XG5cdFx0fVxuXG5cdH1cblxuXHQmX19xdW90ZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0XHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHRwLCAucCB7XG5cdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogMDtcblx0XHRcdG1hcmdpbi1ib3R0b206IDFyZW07XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyOCk7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoMzkxKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRmb290ZXIge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRjaXRlIHtcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2NpdGF0aW9ucyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0XHRwLCAucCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE1MC43JTtcblx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblx0XHRcdHN0cm9uZyB7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiAxLjI1cmVtO1xuXHRcdFx0bGVmdDogOCU7XG5cdFx0fVxuXHR9XG5cblx0LmdlbmVyYWwtY29udGVudCAmIHtcblx0XHQmX19pbm5lciB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdG1heC13aWR0aDogbm9uZTtcblx0XHR9XG5cdH1cbn0iLCIuZmluZC1jb3Vyc2Uge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cblx0Jl9faW5uZXIge1xuXHRcdG1heC13aWR0aDogbm9uZTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE1MCAwKTtcblx0fVxuXG5cdC5ncmlkLXgge1xuXHRcdCY6Zmlyc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0ZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5jZWxsIHtcblx0XHQmOm50aC1jaGlsZCgzKSB7XG5cdFx0XHQuZmluZC1jb3Vyc2VfX2ltYWdlIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMS4yNXJlbTtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtMzMlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fc2VhcmNoIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxuXG5cdCZfX2Zvcm0ge1xuXHRcdGZvcm0ge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMjQpO1xuXG5cdFx0XHRpbnB1dCB7XG5cdFx0XHRcdGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHRcdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRcdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5zZWFyY2gtYnV0dG9uIHtcblx0XHRcdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMi41cmVtO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1MCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1saW5rIHtcblx0XHRcdGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuXHRcdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiAxLjU2M3JlbTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1MCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aDIge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHRzdHJvbmcge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRmb250LXdlaWdodDogNjAwXG5cdFx0fVxuXHR9XG5cblx0Jl9fbGV2ZWwge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG5cdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXItdy1wYWRkaW5nO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRwb3NpdGlvbjogc3RhdGljO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0fVxuXG5cdFx0Ly8gQ3JlYXRlIGZhdXggYmFja2dyb3VuZCB0byBtYW5pcHVsYXRlXG5cdFx0JjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdHRvcDogcmVtLWNhbGMoNjApO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG5cdFx0XHRcdEBpbmNsdWRlIGVzY2FwZS1pbm5lcjtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0dG9wOiBhdXRvO1xuXHRcdFx0XHR3aWR0aDogNTAlO1xuXHRcdFx0XHRsZWZ0OiA1MCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fbGV2ZWwtbGlzdCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDI0KTtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDI4KTtcblx0XHRsaW5lLWhlaWdodDogMS4yMjtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDUwJTtcblx0XHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMjQpO1xuXHRcdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjApO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LXJpZ2h0LXdoaXRlLnN2ZycpO1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgJGVhc2UtaW4tb3V0LXF1aW50O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdFx0XHRcdHRyYW5zaXRpb246IHRyYW5zZm9ybSAuMjVzICRlYXNlLWluLW91dC1xdWludDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0c3BhbiB7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDBweCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDQvMTIpO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDYwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0Mik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTAwIDAgMjAwKTtcblx0XHR9XG5cdH1cblxuXHQmX19pbWFnZSB7XG5cblx0XHRmaWd1cmUge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0cGFkZGluZy10b3A6IDEwMCU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2eTtcblx0XHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjA3LjgzZGVnLCByZ2JhKDAsIDAsIDAsIDAuNikgNS44OSUsIHJnYmEoMCwgMCwgMCwgMCkgNjUuNjIlKTtcblx0XHRcdFx0dHJhbnNmb3JtOiByb3RhdGUoLTE4MGRlZyk7XG5cdFx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRcdG9wYWNpdHk6IDYwJTtcblx0XHRcdH1cblx0XHRcdGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0XHRcdH1cblxuXHRcdFx0ZmlnY2FwdGlvbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAxLjI1cmVtO1xuXHRcdFx0XHRsZWZ0OiAxLjI1cmVtO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IDg3LjYlO1xuXHRcdFx0XHR6LWluZGV4OiAzO1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDIyOCk7XG5cdFx0XHRcdGZpbHRlcjogY29udHJhc3QoMSk7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdFx0Ym90dG9tOiAxLjg3NXJlbTtcblx0XHRcdFx0XHRsZWZ0OiAxLjg3NXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XG5cdH1cblxuXHQmX19zaGFwZSB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cGFkZGluZy10b3A6IDY0LjU3JTtcblx0XHRib3R0b206IC01cmVtO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogLTE7XG5cdFx0c3ZnIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHRyYW5zZm9ybTogc2NhbGUoMyk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGJvdHRvbTogLTkuMzc1cmVtO1xuXHRcdH1cblx0fVxuXG5cdCZfX2xpbmtzIHtcblx0XHRtYXJnaW4tdG9wOiAyLjVyZW07XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDEyMCk7XG5cdFx0fVxuXHR9XG59IiwiLmZpbHRlcnMge1xuXHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDY3KTtcblx0fVxuXG5cdCZfX2ZhY2V0cyB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXHR9XG5cblx0Jl9fbGVnZW5kIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAwLjc1cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0bGluZS1oZWlnaHQ6IDE1MC43JTtcblx0XHRmb250LXNpemU6IDFyZW07XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiAxLjEyNXJlbTtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLnNtYWxsIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtZmxleDtcblx0XHRsZXR0ZXItc3BhY2luZzogMDtcblx0XHRsaW5lLWhlaWdodDogMTUwJTtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDIgOCAyIDEyKTtcblx0XHQmOjphZnRlciB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiAtMnB4O1xuXHRcdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0fVxuXHR9XG5cblx0LmJ1dHRvbi1saW5rIHtcblx0XHRjb2xvcjogJGhvdHBpbms7XG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGhvdHBpbms7XG5cdFx0fVxuXHR9XG5cblx0LnRhYnMge1xuXHRcdG1hcmdpbi1ib3R0b206IC0xcmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0b3ZlcmZsb3c6IGF1dG87XG5cdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXHRcdH1cblxuXHRcdCYtdGl0bGUge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygyMCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzOCk7XG5cdFx0XHR9XG5cblx0XHRcdD4gYSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdFx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblx0XHRcdFx0Zm9udC1zaXplOiAxcmVtO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogMDtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMS4xMjVyZW07XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzLFxuXHRcdFx0XHQmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0Y29sb3I6ICRkYXJrLWJsdWU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQudGFicy1jb250ZW50IHtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxuXG5cdC50YWJzLXBhbmVsIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYyg0MCk7XG5cdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblxuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR0b3A6IDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGxlZnQ6IC05OTk5cHg7XG5cdFx0XHRyaWdodDogLTk5OTlweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDQwKTtcblx0XHR9XG5cblx0XHQuY2VsbCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRmb250LXNpemU6IDE0cHg7IFxuXHRcdFx0Y29sb3I6IzAwMDsgXG5cdFx0XHRmb250LXdlaWdodDo3MDA7IFxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2FjdGlvbnMge1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg2MCk7XG5cdFx0fVxuXG5cdFx0LmJ1dHRvbi1saW5rIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdGZsZXgtc2hyaW5rOiAwO1xuXHRcdFx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19idXR0b25zIHtcblx0XHQuYnV0dG9uIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuXHRcdH1cblx0fVxuXG5cdCZfX2F6IHtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuXHRcdH1cblxuXHRcdC5heiB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblxuXHRcdFx0bWFyZ2luLWJvdHRvbTogLTAuNjI1cmVtO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBncmlkO1xuXHRcdFx0XHRncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdChhdXRvLWZpbGwsIDY3cHgpO1xuXHRcdFx0XHRncmlkLWdhcDogMC43MTlyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0Z3JpZC1nYXA6IDEuNzYzcmVtO1xuXHRcdFx0fVxuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDY2KTtcblx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg2Nik7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMC42MjVyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDAuNjI1cmVtO1xuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDY2KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5wcm9nLXNlYXJjaC1yZXN1bHRzIHtcblx0YmFja2dyb3VuZDogI2ZmZjtcbn1cblxuLnNlYXJjaC1yZXN1bHQtY2FyZCB7XG5cdCYuc3BlY3Mge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNmMGY0ZjU7XG5cdFx0d2lkdGg6IDEwMCUgIWltcG9ydGFudDsgXG5cdFx0cGFkZGluZzogMDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCByZ2JhKDIwMywyMDYsMjA2LC42NSk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0XHR0cmFuc2l0aW9uOiAuM3M7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMDI1KTtcblx0XHRcdGJhY2tncm91bmQ6ICNjYjAwNjQ7XG5cdFx0XHRjb2xvcjogI2ZmZjtcblx0XHRcdCYgYSB7XG5cdFx0XHRcdGNvbG9yOiAjZmZmO1x0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLmZpbHRlci10b2dnbGUge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwYWRkaW5nOiByZW0tY2FsYygyMCAxNik7XG5cdHdpZHRoOiAxMDAlO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyLWNvbG9yO1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlci1jb2xvcjtcblx0Y29sb3I6IGluaGVyaXQ7XG5cblx0XG5cdCY6YmVmb3JlIHtcblx0XHRjb250ZW50OiBcIitcIjtcblx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0ICAgIHRvcDogNTAlO1xuXHQgICAgcmlnaHQ6IDFyZW07XG5cdCAgICBtYXJnaW4tdG9wOiAtMC41cmVtO1xuXHQgICAgY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXHRcdFx0dG9wOiBjYWxjKDUwJSAtIDNweCk7XG5cdFx0fVxuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdGNvbnRlbnQ6IFwiLVwiO1xuXHRcdH1cblx0fVxufSIsIi5nYWxsZXJ5IHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYygoJG0tMiArIDQwKSAwKTtcblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdG1hcmdpbjogcmVtLWNhbGMoKCRtLTMgKyA0MCkgMCk7XG5cdH1cblxuXHRpbWcge1xuXHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMjApO1xuXHRcdGhlaWdodDogNzB2dztcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRoZWlnaHQ6IDQzdnc7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0aGVpZ2h0OiAyOHZ3O1xuXHRcdH1cblx0fVxuXG5cdGZpZ3VyZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAxLjI1cmVtKTtcblx0XHRcdGhlaWdodDogNDAlO1xuXHRcdFx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwLjQpIDE0LjA2JSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC0xODBkZWcpO1xuXHRcdFx0ei1pbmRleDogMTtcblx0XHR9XG5cdFx0ZmlnY2FwdGlvbiB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAxcmVtO1xuXHRcdFx0Ym90dG9tOiAxcmVtO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiA4Ny42JTtcblx0XHRcdHotaW5kZXg6IDI7XG5cdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdGxlZnQ6IHJlbS1jYWxjKDIxKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuXHRcdHRvcDogcmVtLWNhbGMoLTIwKTtcblx0XHRyaWdodDogb3V0ZXItZ3V0dGVyaW5nKCk7XG5cdFx0bGVmdDogYXV0bztcblx0XHR6LWluZGV4OiAxMDA7XG5cdH1cblxuXHQuc2xpY2stcHJldiB7XG5cdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygzNSk7XG5cdH1cblxuXHQmX193cmFwcGVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdH1cblxuXHQmX19uYXYge1xuXHRcdEBpbmNsdWRlIHNsaWRlci1hcnJvd3M7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCAoc21hbGwgb25seSkge1xuXHRcdFx0cmlnaHQ6IDFyZW07XG5cdFx0fVxuXHR9XG59IiwiJGdlbmVyYWwtY29udGVudC1zcGFjaW5nLTE6IDQwcHg7XG4kZ2VuZXJhbC1jb250ZW50LXNwYWNpbmctMjogODBweDtcblxuLmdlbmVyYWwtY29udGVudCB7XG5cblx0PiAqOm5vdChpbWcpOm5vdChhc2lkZSkge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogODUlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA3NSU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDgwJTtcblx0XHR9XG5cdH1cblxuXHQ+IC5nYWxsZXJ5X193cmFwcGVyIHtcblx0XHR3aWR0aDogMTAwJTtcblxuXHRcdCsgKiB7XG5cdFx0XHRtYXJnaW4tdG9wOiAxLjg3NXJlbTtcblx0XHR9XG5cdFx0XG5cdFx0LmdhbGxlcnlfX25hdiB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdFx0bGVmdDogY2FsYyg2NXZ3ICsgMC42MjVyZW0gKyAxLjI1cmVtKTtcblx0XHRcdH1cblx0XHRcdEBtZWRpYSBhbGwgYW5kIChkZXZpY2Utd2lkdGg6IDE5MjBweCkgYW5kIChkZXZpY2UtaGVpZ2h0OiAxMDgwcHgpIGFuZCAob3JpZW50YXRpb246bGFuZHNjYXBlKSB7XG5cdFx0XHRcdGxlZnQ6IGNhbGMoNjV2dyArIDAuNjI1cmVtICsgMzJweCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0aDIsIC5oMiB7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogMS44NzVyZW07XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcblx0XHR9XG5cdH1cblxuXHQ+IGltZyxcblx0YXNpZGUge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKCRnZW5lcmFsLWNvbnRlbnQtc3BhY2luZy0xKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygkZ2VuZXJhbC1jb250ZW50LXNwYWNpbmctMik7XG5cdFx0fVxuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0PiAuZmVhdHVyZS1pbWctY29scyB7XG5cdFx0d2lkdGg6IDg0dnc7XG5cdFx0bWF4LXdpZHRoOiByZW0tY2FsYygxNjIwKTtcblx0fVxuXHQ+IC5mZWF0dXJlLXByb2ZpbGUge1xuXHRcdHdpZHRoOiA3NHZ3O1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoMTYyMCk7XG5cdH1cblxuXHRwICsgaW1nIHtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygkZ2VuZXJhbC1jb250ZW50LXNwYWNpbmctMSkgLSAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoJGdlbmVyYWwtY29udGVudC1zcGFjaW5nLTIpIC0gJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuXHRcdH1cblx0fVxuXG5cdHAgKyBhc2lkZSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoJGdlbmVyYWwtY29udGVudC1zcGFjaW5nLTEpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKCRnZW5lcmFsLWNvbnRlbnQtc3BhY2luZy0yKTtcblx0XHR9XG5cdH1cblxuXHRwLmludHJvIHtcblx0XHRsaW5lLWhlaWdodDogMTE1JS43O1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzIpO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDUyKTtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzYpO1xuXHRcdH1cblx0fVxuXG5cdHAge1xuXHRcdGEge1xuXHRcdFx0Y29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHR9XG5cdH1cblxuXHR1bCB7XG5cdFx0cGFkZGluZy1sZWZ0OiAycmVtO1xuXHR9XG5cblx0LnNsaWNrLWxpc3QuZHJhZ2dhYmxlIHtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0fVxuXG5cdC5zbGljay1saXN0LmRyYWdnaW5nLCAuc2xpY2stbGlzdC5kcmFnZ2FibGU6YWN0aXZlOmhvdmVyIHtcblx0XHRjdXJzb3I6IGdyYWJiaW5nO1xuXHR9XG5cblx0LmdhbGxlcnlfX25hdiB7XG5cdFx0cmlnaHQ6IGNhbGMoNjNweCAtIDI2cHgpO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRsZWZ0OiBjYWxjKDcwdncgKyAwLjYyNXJlbSk7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRsZWZ0OiBjYWxjKDY1dncgKyAwLjYyNXJlbSk7XG5cdFx0fVxuXHR9XG59IiwiLmhhc2h0YWcge1xuXHQmX190aXRsZSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDM0KTtcblx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDYwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEwMCk7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDVlbTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMTgpO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNDgpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTg4KTtcblx0XHR9XG5cblx0XHRlbSB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdH1cblx0fVxuXG5cdCZfX3NvY2lhbCB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdGZsZXg6IDEgMTAwJTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0bWFyZ2luOiAxMHB4O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbjogMTVweDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0ZmlsbDogJGJsYWNrO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0XHR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1maWxsO1xuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29sb3I7XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdFx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0XHRcdFx0c3ZnIHtcblx0XHRcdFx0XHRmaWxsOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuaW50cm8tdy1zdGF0IHtcblx0LmludHJvIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogOTUlO1xuXHRcdH1cblx0fVxuXG5cdC5zdGF0IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXHR9XG59IiwiLmxhdGVzdC1ldmVudHMge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0Ly8gQ3JlYXRlIGZhdXggYmFja2dyb3VuZFxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0Ym90dG9tOiByZW0tY2FsYyg0MCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQWRkIGJvcmRlciBncmFwaGljXG5cdCY6YWZ0ZXIge1xuXHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogcmVtLWNhbGMoLSRib3JkZXItZ3JhcGhpYy1oKTtcblx0XHRyaWdodDogMDtcblx0XHR3aWR0aDogcmVtLWNhbGMoMTAwKTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKCRib3JkZXItZ3JhcGhpYy1oKTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMi41LzEyKTtcblx0XHR9XG5cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG5cdH1cblxuXHQmX19pbm5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDYvMTIpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNzUgMCA5NSk7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg0LzEyKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMTIwIDAgMTYwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygxODAgMCAyMjApO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygkdGV4dC1tYXgtd2lkdGgtc21hbGwpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoJHRleHQtbWF4LXdpZHRoLWxhcmdlKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmX19ldmVudHMge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg2LzEyKTtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoMjApO1xuXHRcdCAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDgvMTIpO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdHBhZGRpbmctbGVmdDogcmVtLWNhbGMoNDApO1xuXHRcdCAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdH1cblx0fVxufSIsIi5sYXRlc3QtbmV3cyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRoMyB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDMyKTtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXG5cdCZfX2lubmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoNjApO1xuXHRcdH1cblxuXHRcdC8vIENyZWF0ZSBmYXV4IGJhY2tncm91bmRcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiByZW0tY2FsYyg4MCk7XG5cdFx0XHRyaWdodDogMDtcblx0XHRcdGJvdHRvbTogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdGxlZnQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0XHRcdHJpZ2h0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDEwMCUgLSBwZXJjZW50YWdlKDkvMTIpO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHR9XG5cdH1cblxuXHQmX19mZWF0dXJlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg2LzEyKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDUvMTIpO1xuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdFx0d2lkdGg6IDc1JTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHR3aWR0aDogOTAlO1xuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDgwJTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRhID4gZGl2IHtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDI1IDI1IDQ1KTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoLTYwKTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygyMCk7XG5cdFx0XHRcdHJpZ2h0OiByZW0tY2FsYygyMCk7XG5cdFx0XHRcdHdpZHRoOiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMjApO1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYXJyb3ctcmlnaHQtd2hpdGUuc3ZnJyk7XG5cdFx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7XG5cdFx0XHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWFycm93O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0cmlnaHQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDUwKTtcblx0XHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdFx0bWFyZ2luLXRvcDogMDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHRyaWdodDogYXV0bztcblx0XHRcdFx0d2lkdGg6IDYwJTtcblx0XHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNTAgMzUgNjAgMCk7XG5cblx0XHRcdFx0Ly8gQ3JlYXRlIGZhdXggYmFja2dyb3VuZCB0byBzdHJldGNoIGJsb2NrXG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogLTE3MHB4O1xuXHRcdFx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg4MCA1MCAxMDAgMCk7XG5cdFx0XHR9XG5cblx0XHRcdD4gKiB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdH1cblxuXHRcdFx0aDMge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdD4gZGl2IHtcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHRcdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fbW9yZSB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg2MCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg1LzEyKTtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDMwIDApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogcGVyY2VudGFnZSg2LzEyKTtcblx0XHRcdGFsaWduLXNlbGY6IGNlbnRlcjtcblx0XHR9XG5cblx0XHRoMyB7XG5cdFx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tY29sb3I7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIiRsb2dvLXNtOiAxMDAlO1xuJGxvZ28tbWQ6IDcwJTtcbiRsb2dvLWxnOiA0MSU7XG4kbG9nby14bDogMTkuNTYzcmVtO1xuJGxvZ28teHhsOiA0OSU7XG5cbi53Z3UtbG9nbyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmaWxsOiAkYm9keS1mb250LWNvbG9yO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXHQuaXMtd2hpdGUgJiB7XG5cdFx0ZmlsbDogJHdoaXRlXG5cdH1cbn1cblxuLmxvZ28td3JhcHBlciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy10b3A6IDc4JTtcblx0d2lkdGg6ICRsb2dvLXNtO1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0d2lkdGg6ICRsb2dvLW1kO1xuXHRcdHBhZGRpbmctdG9wOiAzOSU7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmctdG9wOiAkbG9nby1sZztcblx0XHR3aWR0aDogMzEzcHg7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nLXRvcDogJGxvZ28teHhsO1xuXHR9XG5cblx0c3ZnIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG59IiwibWFpbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHotaW5kZXg6ICR6LWluZGV4LW1haW47XG5cdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHQmOmZvY3VzIHtcblx0XHRvdXRsaW5lOiAwO1xuXHR9XG59IiwiJG1hc3RoZWFkLXAtc21hbGw6IDQwO1xuJG1hc3RoZWFkLXAtbGFyZ2U6IDgwO1xuJG1hc3RoZWFkLXAteGxhcmdlOiAxMDA7XG5cbiRtYXN0aGVhZC1wLWItZXh0cmE6IDQwcHg7XG5cbiRtYXN0aGVhZC1wcm9maWxlLWxhcmdlOiA2MyU7XG5cbi5tYXN0aGVhZCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZzogcmVtLWNhbGMoJG1hc3RoZWFkLXAtc21hbGwgMCAwKTtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cblx0Ji50aGVtZS1waW5rIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0XHRwIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuXHRcdCYudGhlbWUtcGluayB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR9XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygkbWFzdGhlYWQtcC1sYXJnZSk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKCRtYXN0aGVhZC1wLXhsYXJnZSk7XG5cdH1cblxuXHQmLmJvcmRlci1ncmFwaGljIHtcblx0XHQvLyBEcmF3IGJvcmRlciBncmFwaGljXG5cdFx0JjphZnRlciB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygtMjApO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDIyMCk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKCRib3JkZXItZ3JhcGhpYy1oKTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRib3R0b206IHJlbS1jYWxjKCRtYXN0aGVhZC1wLXNtYWxsKTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoLTIwKTtcblx0XHRcdFx0d2lkdGg6IDE1JTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygkbWFzdGhlYWQtcC1sYXJnZSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygkbWFzdGhlYWQtcC14bGFyZ2UpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2lubmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWF4LXdpZHRoOiBub25lO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cblx0XHRcdC8vIENyZWF0ZSBmYXV4IGJhY2tncm91bmQgY29sb3VyXG5cdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiByZW0tY2FsYygtJG1hc3RoZWFkLXAtc21hbGwpO1xuXHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0Ym90dG9tOiByZW0tY2FsYygkbWFzdGhlYWQtcC1zbWFsbCk7XG5cdFx0XHRcdGxlZnQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdHRvcDogcmVtLWNhbGMoLSRtYXN0aGVhZC1wLWxhcmdlKTtcblx0XHRcdFx0XHRib3R0b206IHJlbS1jYWxjKCRtYXN0aGVhZC1wLWxhcmdlKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0XHR0b3A6IHJlbS1jYWxjKC0kbWFzdGhlYWQtcC14bGFyZ2UpO1xuXHRcdFx0XHRcdGJvdHRvbTogcmVtLWNhbGMoJG1hc3RoZWFkLXAteGxhcmdlKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC50aGVtZS1waW5rICYge1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2NvbnRlbnQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygwIDAgNDApO1xuXHRcdHotaW5kZXg6ICR6LWluZGV4LW1hc3RoZWFkLWNvbnRlbnQ7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDYwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMCA0MCAoJG1hc3RoZWFkLXAtc21hbGwgKyAkbWFzdGhlYWQtcC1iLWV4dHJhKSAwKTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKCRtYXN0aGVhZC1wLWxhcmdlICsgJG1hc3RoZWFkLXAtYi1leHRyYSk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKCRtYXN0aGVhZC1wLXhsYXJnZSArICRtYXN0aGVhZC1wLWItZXh0cmEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX3RleHQge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygzMCk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdG1hcmdpbi10b3A6IDE1JTtcblx0XHR9XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0LnRoZW1lLXBpbmsgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXG5cdFx0XHRzcGFuIHtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQrICoge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMzApO1xuXHRcdH1cblx0fVxuXG5cdCZfX2ltYWdlIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ei1pbmRleDogJHotaW5kZXgtbWFzdGhlYWQtaW1hZ2U7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXI7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0aGVpZ2h0OiA0MHZoO1xuXHRcdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHRcdFx0aW1nIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdG9iamVjdC1maXQ6IGNvdmVyO1xuXHRcdFx0XHRmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR3aWR0aDogNTAlICsgKG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCkgKiAtMSk7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IG91dGVyLWd1dHRlcmluZy1pbnZlcnNlKCk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdH1cblxuXHRcdCYtLXN0cmV0Y2gge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMDtcblx0XHRcdFx0cmlnaHQ6IDA7XG5cdFx0XHRcdGhlaWdodDogMTAwJTtcblxuXHRcdFx0XHRpbWcge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6ICdvYmplY3QtZml0OiBjb3ZlcjsnO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fZm9ybS13aWRlIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogMjAwJTtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDgwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDcwKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDEzMCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMTAwKTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1MCk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gV2hlbiB0aGUgbWFzaGVhZCBuZWVkcyBkZXRhaWxlZCB0ZXh0IHVuZGVybmVhdGggdGhlIHRpdGxlXG5cdCZfX2RldGFpbC10ZXh0IHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg0MCAwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdEBpbmNsdWRlIGVzY2FwZS1pbm5lci13LXBhZGRpbmc7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDApO1xuXHRcdH1cblx0fVxuXG5cdCYtLWRldGFpbCAmIHtcblx0XHQmX19pbm5lciB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRjb250ZW50OiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fY29udGVudCB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMDtcblx0XHR9XG5cblx0XHQmX190ZXh0IHtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg0MCk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDgwKTtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdHRvcDogLTk5OTlweDtcblx0XHRcdFx0XHRsZWZ0OiAtOTk5OXB4O1xuXHRcdFx0XHRcdHJpZ2h0OiAtOTk5OXB4O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiAqIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNDApO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygxNzApO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX2ltYWdlIHtcblx0XHRcdHotaW5kZXg6IDM7XG5cdFx0fVxuXHR9XG5cblx0Ji0tZGV0YWlsLnRoZW1lLXBpbmsgJiB7XG5cdFx0Jl9fdGV4dCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji0tZXZlbnQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRcdGEge1xuXHRcdFx0dHJhbnNpdGlvbjogYWxsIGVhc2UgMC4zcztcblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDFyZW07XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5ib3JkZXItZ3JhcGhpYzphZnRlciB7XG5cdFx0XHRib3R0b206IDA7XG5cdFx0fVxuXHRcdGxpIHtcblx0XHRcdGNvbG9yOiAjZmZmO1xuXHRcdH1cblx0fVxuXG5cdCYtLWV2ZW50ICYge1xuXHRcdCZfX2lubmVyIHtcblx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0Y29udGVudDogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRcdGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX19jb250ZW50IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDcvMTIpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCZfX3RleHQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW4tdG9wOiA3JTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLyBTbWFsbCBibG9jayB0aGF0IHNpdHMgdG8gdGhlIHJpZ2h0IG9mIHdoaXRlIG1hc3RoZWFkc1xuXHQmX19wYW5lbCB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzApO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNS8xMik7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYyg1MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNjApO1xuXHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNC8xMik7XG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0Mik7XG5cdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDcyKTtcblx0XHRcdFx0bGluZS1oZWlnaHQ6IC43Njtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDkyKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdFx0XHRmb250LXdlaWdodDogNTAwO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMzIpO1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRsaSB7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IDMwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC13aGl0ZS5zdmcnKTtcblx0XHRcdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cdFx0XHRiYWNrZ3JvdW5kLXNpemU6IHJlbS1jYWxjKDIwKTtcblx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDAgN3B4O1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDE2cHg7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxuXG5cdC8vIE1vZGlmaWVkIG1hc3RoZWFkIGZvciBtYXN0aGVhZHMgdGhhdCBoYXZlIGEgZmVhdHVyZWQgbmV3cy9ibG9nIGFydGljbGVcblx0Ji0tcG9zdCAmIHtcblx0XHQmX190ZXh0IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdFx0d2lkdGg6IDgwJTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDg3JTtcblx0XHRcdH1cblxuXHRcdFx0cCB7XG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgb25seSkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNjYwKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIE1vZGlmaWVkIG1hc3RoZWFkIGZvciBwcm9maWxlIHBhZ2VzXG5cdCYtLXByb2ZpbGUgJiB7XG5cdFx0Jl9faW5uZXIge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHQvLyBNYWtlcyBjb250ZW50IGNvbHVtbnMgZXF1YWwgaGVpZ2h0XG5cdFx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cblx0XHRcdFx0Ly8gTWFrZSBzdXJlIHBpbmsgYmFja2dyb3VuZCBpcyBmbHVzaCB0byBib3R0b20gYW5kIHJpZ2h0IG9mIGNvbnRlbnRcblx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdHJpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdGJvdHRvbTogMDtcblx0XHRcdFx0XHR3aWR0aDogJG1hc3RoZWFkLXByb2ZpbGUtbGFyZ2UgLSBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Jl9fY29udGVudCB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiAkbWFzdGhlYWQtcHJvZmlsZS1sYXJnZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmX190aXRsZSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiA4NSU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gRGVmaW5pdGlvbiBsaXN0IGNvbnRlbnQgdGhhdCBzaXRzIHVuZGVyIG1hc3RoZWFkIHRpdGxlXG5cdCZfX21ldGEge1xuXHRcdEBpbmNsdWRlIGNsZWFyZml4O1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDgwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA2NSU7XG5cdFx0fVxuXG5cdFx0ZHQge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRjbGVhcjogbGVmdDtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNSk7XG5cdFx0XHRmb250LXdlaWdodDogbm9ybWFsO1xuXG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0Y29udGVudDogXCI6XCI7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0ZGQge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRjbGVhcjogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQwKTtcblx0XHRcdH1cblxuXHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQudGhlbWUtcGluayAmIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0fVxuXHR9XG5cblx0Ly8gQ29udGFjdCBkZXRhaWxzIHRoYXQgc2l0cyB0byB0aGUgcmlnaHQgb2YgdGhlIG1hc3RoZWFkXG5cdCZfX2NvbnRhY3Qge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuXHRcdC8vIE1ha2UgY29udGFjdCBkZXRhaWxzIHN0cmV0Y2ggd2hpdGUgb3ZlciBwaW5rIGJhY2tncm91bmRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRAaW5jbHVkZSBlc2NhcGUtaW5uZXItdy1wYWRkaW5nO1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHQgICAgZmxleC13cmFwOiB3cmFwO1xuXHRcdCAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdCAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdFx0fVxuXG5cdFx0Ly8gUG9zaXRpb24gY29udGFjdCBkZXRhaWxzIHRvIHRoZSByaWdodCBmb3IgbGFyZ2VyIHNjcmVlbnMgYW5kIG1ha2UgY29udGVudCB3aXRoaW4gYWxpZ24gdG8gYm90dG9tIHdpdGggZXF1YWwgcGFkZGluZyBib3R0b20gb2YgYWRqYWNlbnQgY29udGVudFxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0ICAgIGZsZXgtd3JhcDogd3JhcDtcblx0XHQgICAgYWxpZ24tY29udGVudDogZmxleC1lbmQ7XG5cdFx0XHRmbG9hdDogbGVmdDtcdFxuXHRcdFx0d2lkdGg6IDEwMCUgLSAkbWFzdGhlYWQtcHJvZmlsZS1sYXJnZTtcblx0XHRcdHBhZGRpbmctYm90dG9tOiByZW0tY2FsYygkbWFzdGhlYWQtcC1zbWFsbCArICRtYXN0aGVhZC1wLWItZXh0cmEpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoJG1hc3RoZWFkLXAtbGFyZ2UgKyAkbWFzdGhlYWQtcC1iLWV4dHJhKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoJG1hc3RoZWFkLXAteGxhcmdlICsgJG1hc3RoZWFkLXAtYi1leHRyYSk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHRcdG9yZGVyOiAyO1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDI0MCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0d2lkdGg6IDYwJTtcblx0XHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygzNDApO1xuXHRcdFx0XHRhbGlnbi1zZWxmOiBmbGV4LWVuZDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRkbCB7XG5cdFx0XHRtYXJnaW46IDA7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcblx0XHRcdFx0b3JkZXI6IDE7XG5cdFx0XHRcdG1hcmdpbjogcmVtLWNhbGMoMzAgMzAgMzAgMCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luOiByZW0tY2FsYygzMCAwIDAgMzApO1xuXHRcdFx0XHRmbGV4OiAxIDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0XHRtYXJnaW46IHJlbS1jYWxjKDYwIDAgMCA2MCk7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHRcdH1cblxuXHRcdFx0ZGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCk7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMzApO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fc2Nyb2xsIHtcblxuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR6LWluZGV4OiAzO1xuXG5cdFx0c3ZnIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblxuXHRcdCYubGVmdCB7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblxuXHRcdCYuYmctbmF2eSB7XG5cdFx0XHRzdmcge1xuXHRcdFx0XHRjb2xvcjogJG5hdnk7XG5cdFx0XHRcdHBhdGg6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0c3Ryb2tlOiAkd2hpdGU7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0XHR3aWR0aDogMTAlO1xuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDQ0KTtcblx0XHRcdHdpZHRoOiAzLjc1cmVtO1xuXHRcdFx0Ji5sZWZ0IHtcblx0XHRcdFx0bGVmdDogcmVtLWNhbGMoNDQpO1xuXHRcdFx0fVxuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0cmlnaHQ6IHJlbS1jYWxjKDg4KTtcblx0XHRcdCYubGVmdCB7XG5cdFx0XHRcdGxlZnQ6IHJlbS1jYWxjKDg4KTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmJnLWJsdWUge1xuXHRcdFx0Y29sb3I6ICRibHVlO1xuXHRcdFx0c3ZnIHtcblx0XHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdFx0cGF0aDpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0Y29sb3I6ICRibHVlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLm1hc3RoZWFkLWltYWdlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcGluaztcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblxuXHQmX19pbm5lciB7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdFx0bWluLWhlaWdodDogODJ2aDtcblx0XHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE0NSAwIDApO1xuXHRcdG1heC13aWR0aDogbm9uZTtcblxuXHRcdD4gKiB7XG5cdFx0XHRmbGV4OiAxIDEwMCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE2NCAwIDIwKTtcblx0XHRcdG1pbi1oZWlnaHQ6IDcwdmg7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0bWluLWhlaWdodDogMTAwdmg7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nOiByZW0tY2FsYygyMzYgMCA2MCk7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoMjU2IDAgNjApO1xuXHRcdH1cblx0fVxuXG5cdCYuYm9yZGVyLWdyYXBoaWMgJiB7XG5cdFx0Jl9faW5uZXIge1xuXHRcdFx0Ly8gRHJhdyBib3JkZXIgZ3JhcGhpY1xuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRsZWZ0OiBvdXRlci1ndXR0ZXJpbmcoKTtcblx0XHRcdFx0d2lkdGg6IHBlcmNlbnRhZ2UoMy8xMik7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoJGJvcmRlci1ncmFwaGljLWgpO1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9faW1hZ2Uge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cblx0XHRpbWcge1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XHRmb250LWZhbWlseTogJ29iamVjdC1maXQ6IGNvdmVyOyc7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdGFsaWduLXNlbGY6IGZsZXgtZW5kO1xuXHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDQwKTtcblx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdHotaW5kZXg6IDI7XG5cblx0XHR1bCB7XG5cdFx0XHR3aWR0aDogbWF4LWNvbnRlbnQ7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXG5cblx0XHRcdCYuYmctbmF2eSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiAkYmx1ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHRsaSB7XG5cdFx0XHRcdCY6bm90KDpsYXN0LWNoaWxkKSB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxLjI1cmVtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdFxuXHRcdFx0XHRhIHtcblx0XHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0XHRcdFx0XHRsaW5lLWhlaWdodDogcmVtLWNhbGMoMTkpO1xuXHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRcdFx0XHR0ZXh0LXVuZGVybGluZS1vZmZzZXQ6IDJweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogMS44NzVyZW07XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0d2lkdGg6IHBlcmNlbnRhZ2UoNy8xMik7XG5cblx0XHQrICoge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoMjApO1xuXHRcdH1cblxuXHRcdHN0cm9uZyB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdH1cblxuXHRcdCYuZGlzcGxheS0xIHtcblx0XHRcdGxpbmUtaGVpZ2h0OiA4Ny42JTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLmRpc3BsYXktNCB7XG5cdFx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdG1heC13aWR0aDogNDAlO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDIyNSk7XG5cdFx0XHR9XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDMyNSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fc2hhcGUge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGJvdHRvbTogMDtcblx0XHRsZWZ0OiAwO1xuXHRcdHotaW5kZXg6IDE7XG5cdFx0d2lkdGg6IDUwJTtcblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcblx0XHRcdHdpZHRoOiA3MiU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1pbi13aWR0aDogcmVtLWNhbGMoNjAzKTtcblx0XHRcdG1heC13aWR0aDogcmVtLWNhbGMoNTAwKTtcblx0XHR9XG5cdFx0QG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6NzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIGFuZCAobWF4LWhlaWdodDogOTEwcHgpIHtcblx0XHRcdHdpZHRoOiAzNSU7XHRcblx0XHR9XG5cblx0XHRzdmcge1xuXHRcdFx0ZGlzcGxheTogZmxleDtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdH1cblxuXHRcdCZbY2xhc3MqPVwiYmctXCJdIHtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0fVxuXG5cdFx0Ji5iZy1uYXZ5IHtcblx0XHRcdHN2ZyB7XG5cdFx0XHRcdGNvbG9yOiAkbmF2eTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5iZy1ibHVlIHtcblx0XHRcdHN2ZyB7XG5cdFx0XHRcdGNvbG9yOiAkYmx1ZTtcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5iZy1waW5rIHtcblx0XHRcdHN2ZyB7XG5cdFx0XHRcdGNvbG9yOiAkcGluaztcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIubWVudS1mZWF0dXJlIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdCYueGxhcmdlLW9mZnNldC0xIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXHR9XG5cblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0b3V0bGluZTogMnB4IGRvdHRlZCAkbmF2eTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0d2lkdGg6IHJlbS1jYWxjKDI0NSk7XG5cdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDI0NSk7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMjQ1KTtcblx0XHRcdGltZyB7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAwO1xuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiByZW0tY2FsYygzNDApO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygzNDApO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDM0MCk7XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IHJlbS1jYWxjKC0zMCk7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzApO1xuXHRcdHdpZHRoOiByZW0tY2FsYygzMTApO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRob3RwaW5rO1xuXG5cdFx0LmRpc3BsYXktNiB7XG5cdFx0XHRsaW5lLWhlaWdodDogODcuNiU7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IDAuOTM4cmVtO1xuXHRcdFx0c3Ryb25nIHtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdH1cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDIpO1xuXHRcdFx0fVxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDU0KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRwIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxMTclO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS42MjVyZW07XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDE0OCk7XG5cdFx0XHRzdHJvbmcge1xuXHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRsaW5lLWhlaWdodDogMTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXHRcdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDE5NCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0XHRmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXHRcdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cdFx0XHRsZWZ0OiAxMDAlO1xuXHRcdFx0dG9wOiA1MCU7XG5cdFx0XHRtYXgtd2lkdGg6IHJlbS1jYWxjKDI0NSk7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRwYWRkaW5nOiAxLjYyNXJlbSAyLjA2M3JlbSAycmVtIDEuNjI1cmVtO1xuXHRcdH1cblx0XHRcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogcmVtLWNhbGMoMzQwKTtcblx0XHRcdHBhZGRpbmc6IDIuMTI1cmVtIDMuMTI1cmVtIDIuMTI1cmVtIDMuMTI1cmVtO1xuXHRcdFx0bWF4LXdpZHRoOiBub25lO1xuXHRcdH1cblx0fVxuXG5cdHAge1xuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblx0fVxufSIsIi8vIEpTIHN0YXRlczpcbi8vIGFkZCAuaXMtYWN0aXZlIHRvIC5tZW51LXRvZ2dsZSB3aGVuIGhhbWJ1cmdlciBpcyBjbGlja2VkIC0gY3JlYXRlcyBjbG9zZSBzdGF0ZVxuLy8gd2hlbiAuYmFubmVyLmlzLXdoaXRlIC0gbWFrZXMgaGFtYnVyZ2VyIHdoaXRlXG4vLyB3aGVuIC5iYW5uZXIuaXMtd2hpdGUgYW5kIGhhbWJ1cmdlciBpcyBjbGlja2VkIGFkZCAuaXMtYWN0aXZlIHRvIC5tZW51LXRvZ2dsZSAtIG1ha2VzIGNsb3NlIHN0YXRlIGJsYWNrXG4vLyB3aGVuIC5iYW5uZXIuaXMtd2hpdGUuc2VhcmNoLW9wZW4gLSBtYWtlcyB0b2dnbGUgYmxhY2sgd2hlbiBzZWFyY2ggaXMgb3BlblxuXG4ubWVudS10b2dnbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogcmVtLWNhbGMoJGJhbm5lci1wLXNtYWxsICsgNik7XG5cdHJpZ2h0OiBvdXRlci1ndXR0ZXJpbmcoKTtcblx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYyg0OCk7XG5cdHdpZHRoOiByZW0tY2FsYyg0MCk7XG5cdGhlaWdodDogcmVtLWNhbGMoNDApO1xuXHR6LWluZGV4OiAkei1pbmRleC1iYW5uZXItbWVudS10b2dnbGU7XG5cdHRyYW5zaXRpb246IGFsbCAuMjVzIGVhc2Utb3V0O1xuXG5cdHNwYW46YmVmb3JlLFxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0d2lkdGg6IHJlbS1jYWxjKDMwKTtcblx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIpO1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdFx0dHJhbnNpdGlvbjogYWxsIC4yNXMgZWFzZS1vdXQ7XG5cblx0XHQuaXMtd2hpdGUgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXG5cdFx0LnNlYXJjaC1vcGVuICYge1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmOmJlZm9yZSB7XG5cdFx0dG9wOiAwO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0dG9wOiByZW0tY2FsYyg4KTtcblx0fVxuXG5cdHNwYW4ge1xuXHRcdHRleHQtaW5kZW50OiAxMDAlO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRwYWRkaW5nOiAwO1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2Utb3V0O1xuXHRcdGZpbHRlcjogY29udHJhc3QoMjMzLjMzJSk7XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR0b3A6IHJlbS1jYWxjKDQpO1xuXHRcdH1cblxuXHRcdC5pcy13aGl0ZSAmIHtcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0Ji5pcy1hY3RpdmUge1xuXHRcdCY6YmVmb3JlIHtcblx0XHRcdHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG5cdFx0XHR0b3A6IHJlbS1jYWxjKDgpXG5cdFx0fVxuXG5cdFx0JjphZnRlciB7XG5cdFx0XHR0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG5cdFx0fVxuXG5cdFx0c3BhbiB7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdH1cblxuXHRcdHNwYW46YmVmb3JlLFxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0LmlzLXdoaXRlICYge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tZW51LW9wZW4gJixcblx0LnNlYXJjaC1vcGVuICZ7XG5cdFx0cG9zaXRpb246IGZpeGVkO1xuXHR9XG59XG4iLCIkdGl0bGUtbS0xOiA0MHB4O1xuJHRpdGxlLW0tMjogNTBweDtcblxuLm1vcmUge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdGgyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNDApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTApO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Y29udGVudDogXCJcIjtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0Ym90dG9tOiByZW0tY2FsYygtJHRpdGxlLW0tMSk7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdFx0aGVpZ2h0OiByZW0tY2FsYygkYm9yZGVyLWdyYXBoaWMtaCk7XG5cdFx0XHR3aWR0aDogNDAlO1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygyMDApO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRcdGJvdHRvbTogcmVtLWNhbGMoLSR0aXRsZS1tLTIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2lubmVyIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDYwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoODApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwYWRkaW5nLXRvcDogcmVtLWNhbGMoMTAwKTtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0bGVmdDogb3V0ZXItZ3V0dGVyaW5nLWludmVyc2UoKTtcblx0XHRcdHJpZ2h0OiBvdXRlci1ndXR0ZXJpbmctaW52ZXJzZSgpO1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0cmlnaHQ6IG91dGVyLWd1dHRlcmluZygpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdCZfX2NhcmRzIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRAaW5jbHVkZSB4eS1ncmlkO1xuXHRcdFx0QGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoMywgJy5jb250ZW50LWNhcmQnLCAkZ3V0dGVyczogbWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbGFyZ2UpKTtcblx0XHRcdG1hcmdpbi1sZWZ0OiByZW0tY2FsYygtKG1hcC1nZXQoJGdyaWQtbWFyZ2luLWd1dHRlcnMsIGxhcmdlKSkvMik7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0obWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgbGFyZ2UpKS8yKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgeHktZ3JpZC1sYXlvdXQoMywgJy5jb250ZW50LWNhcmQnLCAkZ3V0dGVyczogbWFwLWdldCgkZ3JpZC1tYXJnaW4tZ3V0dGVycywgeGxhcmdlKSk7XG5cdFx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoLShtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCB4bGFyZ2UpKS8yKTtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLShtYXAtZ2V0KCRncmlkLW1hcmdpbi1ndXR0ZXJzLCB4bGFyZ2UpKS8yKTtcblx0XHR9XG5cblx0XHQuc2xpY2stdHJhY2sgPiAqIHtcblx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoNDApO1xuXHRcdH1cblx0fVxuXG5cdC5zbGljay1saXN0IHtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0fVxuXG5cdCYudGhlbWUtZGFyayB7XG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRkYXJrLWdyYXk7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmx1ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQmLnRoZW1lLWRhcmsgJiB7XG5cdFx0Jl9faW5uZXIge1xuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIiNub0l0ZW1zRm91bmRNZXNzYWdlIHtcblx0aDIge1xuXHRcdG1hcmdpbi1ib3R0b206IDZyZW07XG5cdH1cblx0YnV0dG9uIHtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1x0XHRcblx0XHR9XG5cdH1cbn0iLCIvLyBKUyBzdGF0ZXM6XG4vLyB3aGVuIC5iYW5uZXIuaXMtd2hpdGUgLSBtYWtlcyBzZWFyY2ggd2hpdGVcbi8vIHdoZW4gc2VhcmNoIHRvZ2dsZSBpcyBjbGlja2VkIGFuZCAuYmFubmVyLmlzLXdoaXRlIGFkZCAuaXMtYWN0aXZlIHRvIC5zZWFyY2gtdG9nZ2xlIC0gbWFrZXMgc2VhcmNoIHN0YXRlIHdoaXRlXG4vLyB3aGVuIC5tZW51LW9wZW4gYW5kIC5iYW5uZXIuaXMtd2hpdGUgLSBtYWtlcyBzZWFyY2ggc3RhdGUgYmxhY2tcblxuLnNlYXJjaC10b2dnbGUge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHRvcDogcmVtLWNhbGMoJGJhbm5lci1wLXNtYWxsKTtcblx0cmlnaHQ6IG91dGVyLWd1dHRlcmluZygpO1xuXHR3aWR0aDogcmVtLWNhbGMoNDApO1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDQwKTtcblx0ei1pbmRleDogJHotaW5kZXgtYmFubmVyLW1lbnUtdG9nZ2xlO1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zZWFyY2gtaWNvbi1ibGFjay5zdmcnKTtcblx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0YmFja2dyb3VuZC1zaXplOiByZW0tY2FsYygyNik7XG5cdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAxcHg7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC02MCk7XG5cdFx0dG9wOiByZW0tY2FsYygkYmFubmVyLXAtbGFyZ2UgKyAxNCk7XG5cdFx0YmFja2dyb3VuZC1zaXplOiAxcmVtO1xuXHRcdGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciAwO1xuXHR9XG5cblx0LmlzLXdoaXRlICYge1xuXHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NlYXJjaC1pY29uLXdoaXRlLnN2ZycpO1xuXG5cdFx0c3BhbiB7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdHNwYW4ge1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5tZW51LW9wZW4uaXMtd2hpdGUgJiB7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2ZycpO1xuXHRcdH1cblx0fVxuXG5cdCYuaXMtYWN0aXZlIHtcblx0XHQuaXMtd2hpdGUgJiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9zZWFyY2gtaWNvbi1ibGFjay5zdmcnKTtcblx0XHR9XG5cdH1cblxuXHQubWVudS1vcGVuICYsXG5cdC5zZWFyY2gtb3BlbiAmIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZDtcblx0XHR9XG5cdH1cbn1cbiIsIi5wYWdpbmF0aW9uIHtcblx0ZGlzcGxheTogZmxleDtcblx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0ZmxleC13cmFwOiB3cmFwO1xuXHRtYXJnaW46IDA7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRtYXJnaW4tYm90dG9tOiAtMS44MTNyZW07XG5cdH1cblxuXHRsaSB7XG5cdFx0JjpmaXJzdC1jaGlsZCxcblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBvbmx5KSB7XG5cdFx0XHRcdGZsZXg6IDEgMTAwJTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmZpcnN0LWNoaWxkIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogYXV0bztcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhvbGxvdy5idXR0b24uY2xlYXIge1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Ym9yZGVyLWNvbG9yOiAkaG90cGluaztcblx0XHRjb2xvcjogJGhvdHBpbms7XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoOSAyMCk7XG5cdFx0bWluLWhlaWdodDogMi40cmVtO1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkaG90cGluaztcblx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDIyKTtcblx0XHR9XG5cdH1cblxuXHQuYnV0dG9uLmNsZWFyIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMyk7XG5cdFx0Zm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG5cdFx0QGluY2x1ZGUgYnV0dG9uLWNsZWFyLXN0eWxlKCRibGFjayk7XG5cblx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRAaW5jbHVkZSBidXR0b24tY2xlYXItc3R5bGUoZ2V0LWNvbG9yKHByaW1hcnkpKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMik7XG5cdFx0fVxuXHR9XG5cblx0LmlzLWFjdGl2ZSB7XG5cdFx0YSB7XG5cdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdH1cblx0fVxufSIsIi5wYW5lbCB7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDgwIDApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygxMDAgMCk7XG5cdH1cbn1cblxuLm1hc3RoZWFkLS1kZXRhaWwgKyAucGFuZWwge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0bWFyZ2luLXRvcDogMDtcblx0fSBcbn0iLCIucGxheS12aWRlbyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGN1cnNvcjogcG9pbnRlcjtcblxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiA1MCU7XG5cdFx0bGVmdDogNTAlO1xuXHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpO1xuXHR9XG5cblx0JjpiZWZvcmUge1xuXHRcdHdpZHRoOiByZW0tY2FsYyg5Mik7XG5cdFx0aGVpZ2h0OiByZW0tY2FsYyg5Mik7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdGJvcmRlci1yYWRpdXM6IDk5OXB4O1xuXHRcdHotaW5kZXg6IDI7XG5cdFx0dHJhbnNpdGlvbjogYmFja2dyb3VuZC1jb2xvciAuMjVzICRlYXNlLW91dC1xdWFkO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0Ym9yZGVyLXRvcDogMjVweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRib3JkZXItYm90dG9tOiAyNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdGJvcmRlci1sZWZ0OiA0M3B4IHNvbGlkICR3aGl0ZTtcblx0XHR6LWluZGV4OiAzO1xuXHRcdG1hcmdpbi1sZWZ0OiA1cHg7XG5cdFx0dHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIC4yNXMgJGVhc2Utb3V0LXF1YWQ7XG5cdH1cblxuXHQmOmhvdmVyIHtcblx0XHQmOmJlZm9yZSB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Ym9yZGVyLWxlZnQtY29sb3I6ICRibGFjaztcblx0XHR9XG5cdH1cblxuXHRpbWcge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR6LWluZGV4OiAxO1xuXHR9XG59IiwiLy8gSlMgc3RhdGVzOlxuLy8gY2xpY2sgZmlyc3QgbGV2ZWwgbmF2IGl0ZW0gdG8gb3BlbiBzdWJuYXYgLSByZW1vdmVzIGRpc3BsYXkgbm9uZSBvbiAuc3ViLW5hdiBhdCBtb2JpbGUgYW5kIGFkZHMgLmlzLWFjdGl2ZSB0byAuc3ViLW5hdiBhdCBkZXNrdG9wXG4vLyBjbGljayBzZWNvbmQgbGV2ZWwgbmF2IGl0ZW0gb3BlbnMgdGhpcmQgbGV2ZWwgLSByZW1vdmVzIGRpc3BsYXkgbm9uZSBvbiAuc3ViLW5hdiA+IGRpdiA+IHVsID4gbGkgPiB1bCBhdCBtb2JpbGUgYWRkcyAuaXMtYWN0aXZlIHRvIC5zdWItbmF2ID4gZGl2ID4gdWwgPiBsaSA+IHVsIGF0IGRlc2t0b3Bcbi8vIGFkZCAuaXMtYWN0aXZlIHRvIG5hdiBpdGVtcyB3aGVuIGNsaWNrZWQgLSBtYWtlIHBsdXMgYSBtaW51IC0gbW9iaWxlIG9ubHlcblxuJGhpZ2hsaWdodC13OiAyMHB4O1xuJGJhbm5lci1oZWlnaHQteGw6IHJlbS1jYWxjKDE0Myk7XG5cbi5wcmltYXJ5LW1lbnUge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRtYXJnaW4tbGVmdDogYXV0bztcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0d2lkdGg6ICRzaXRlLXdpZHRoO1xuXHR9XG5cblx0Ly8gR2VuZXJhbCBzdHlsZXNcblx0dWwge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cblx0XHRsaSB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHR9XG5cblx0XHRcdC8vIE1ha2Ugc3VyZSB3ZSBkb24ndCB0YXJnZXQgdGhlIGZlYXR1cmUgYmxvY2sgd2l0aGluIHRoZSBtZW51XG5cdFx0XHQ+IGEsXG5cdFx0XHQ+IHNwYW4sXG5cdFx0XHQ+IGJ1dHRvbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyMCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0PiBzcGFuLFxuXHRcdFx0PiBidXR0b24ge1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0Ly8gUGx1cyBtaW51cyBpY29ucyBhdCBtb2JpbGVcblx0XHRcdFx0XHQmOmJlZm9yZSxcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbWVkaXVtLWdyYXk7XG5cdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzIGVhc2UtaW4tb3V0O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIEhvcml6b250YWxcblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRyaWdodDogMDtcblx0XHRcdFx0XHRcdHdpZHRoOiByZW0tY2FsYygxMik7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDIpO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIFZlcnRpY2FsXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRyaWdodDogcmVtLWNhbGMoNSk7XG5cdFx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoMik7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IHJlbS1jYWxjKDEyKTtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdFx0XHQvLyBNYWtlIGludG8gYSBtaW51cyB3aGVuIG5hdiBpdGVtIGlzIGFjdGl2ZVxuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gRmlyc3QgbGV2ZWwgb25seVxuXHQ+IHVsIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0QGluY2x1ZGUgY2xlYXJmaXg7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKC0kbWVudS1pdGVtLWd1dHRlcik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiByZW0tY2FsYygtJG1lbnUtaXRlbS1ndXR0ZXIqMik7XG5cdFx0fVxuXG5cdFx0Ly8gRmlyc3QgbGV2ZWwgaXRlbXMgb25seVxuXHRcdD4gbGkge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHR9XG5cblx0XHRcdD4gYSxcblx0XHRcdD4gc3Bhbixcblx0XHRcdD4gYnV0dG9uIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygzMik7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjMyO1xuXHRcdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0XHRcdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXHRcdFx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0XHRcdFx0bGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdFx0cGFkZGluZzogMC43NXJlbSAxcmVtIDEuNjg4cmVtIDFyZW07XG5cblx0XHRcdFx0XHQvLyBTdHlsZSBoaWdobGlnaHRcblx0XHRcdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRsZWZ0OiByZW0tY2FsYygkbWVudS1pdGVtLWd1dHRlcik7XG5cdFx0XHRcdFx0XHRib3R0b206IHJlbS1jYWxjKDEyKTtcblx0XHRcdFx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYyg1KTtcblx0XHRcdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihzZWNvbmRhcnkpO1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogd2lkdGggLjE1cyBlYXNlLWluLW91dDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuaXMtd2hpdGUgJiB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IHJlbS1jYWxjKCRtZW51LWl0ZW0tZ3V0dGVyKjIpO1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKCRtZW51LWl0ZW0tZ3V0dGVyKjIpO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTgpO1xuXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRsZWZ0OiByZW0tY2FsYygkbWVudS1pdGVtLWd1dHRlcioyKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdFx0XHRcdGNvbG9yOiBpbmhlcml0O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdFx0XHQvLyBTdHlsZSBoaWdobGlnaHQgb24gaG92ZXJcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogcmVtLWNhbGMoJGhpZ2hsaWdodC13KTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRcdFx0Y29sb3I6IGluaGVyaXQ7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdD4gc3Bhbixcblx0XHRcdD4gYnV0dG9uIHtcblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdFx0Ly8gSG9yaXpvbnRhbFxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdHRvcDogcmVtLWNhbGMoMjApO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8vIFZlcnRpY2FsXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHR0b3A6IHJlbS1jYWxjKDE1KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0Ly8gU3R5bGUgSGlnaGxpZ2h0XG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdD4gYSxcblx0XHRcdFx0PiBzcGFuLFxuXHRcdFx0XHQ+IGJ1dHRvbiB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0XHRcdC8vIFN0eWxlIGhpZ2hsaWdodCB3aGVuIGFjdGl2ZVxuXHRcdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiByZW0tY2FsYygkaGlnaGxpZ2h0LXcpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIEdlbmVyYWwgc3ViIG5hdiBzdHlsZXNcblx0LnN1Yi1uYXYge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoMzUgMCk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWJsdWU7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlIGRvd24pIHtcblx0XHRcdEBpbmNsdWRlIGVzY2FwZS1pbm5lci13LXBhZGRpbmc7XG5cdFx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygyMCk7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyNSk7XG5cblx0XHQgICAgJi5pcy1hY3RpdmUge1xuXHRcdCAgICBcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICB9XG5cdFx0fVxuXG5cdFx0LmNsb3NlLWJ1dHRvbiB7XG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogcmVtLWNhbGMoOCk7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoLTYwKTtcblx0XHRcdFx0cmlnaHQ6IG91dGVyLWd1dHRlcmluZygpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygxMzEpO1xuXHRcdFx0cGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDY4KTtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0dG9wOiAkYmFubmVyLWhlaWdodC14bCAtIDIuMTI1cmVtO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cdFx0XHRwYWRkaW5nLWxlZnQ6IG91dGVyLWd1dHRlcmluZygpO1xuXHRcdCAgICBwYWRkaW5nLXJpZ2h0OiBvdXRlci1ndXR0ZXJpbmcoKTtcblx0XHQgICAgb3BhY2l0eTogMDtcblx0XHQgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAlKTtcblx0XHQgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzICRlYXNlLW91dC1jdWJpYywgdHJhbnNmb3JtIDBzIC4yNXM7XG5cblx0XHQgICAgJi5pcy1hY3RpdmUge1xuXHRcdCAgICBcdG9wYWNpdHk6IDE7XG5cdFx0ICAgIFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuXHRcdCAgICBcdHRyYW5zaXRpb246IG9wYWNpdHkgLjI1cyAkZWFzZS1vdXQtY3ViaWMsIHRyYW5zZm9ybSAwcztcblx0XHQgICAgfVxuXHRcdH1cblxuXHRcdHVsIHtcblx0XHRcdGxpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjUpO1xuXG5cdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTUpO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDMwKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGEsXG5cdFx0XHRcdHNwYW4sXG5cdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIxKTtcblx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHRcdGNvbG9yOiAkbmF2eTtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1jb2xvcjtcblx0XHRcdFx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblxuXHRcdFx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiByZW0tY2FsYygyMCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3Zlcixcblx0XHRcdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkZGFyay1ibHVlO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0d2lkdGg6IGZpdC1jb250ZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdHNwYW4sXG5cdFx0XHRcdGJ1dHRvbiB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0XHRcdFx0XHRcdC8vIEhvcml6b250YWxcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0dG9wOiByZW0tY2FsYyg3KTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ly8gVmVydGljYWxcblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHR0b3A6IHJlbS1jYWxjKDIpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vIFNlY29uZCBsZXZlbCBvbmx5XG5cdC5zdWItbmF2ID4gZGl2ID4gdWwge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0fVxuXG5cdFx0Ly8gU2Vjb25kIGxldmVsIGl0ZW1zIG9ubHlcblx0XHQ+IGxpIHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdHdpZHRoOiA1MCU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ly8gVGhpcmQgbGV2ZWxcblx0LnN1Yi1uYXYgPiBkaXYgPiB1bCA+IGxpID4gdWwge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cblx0XHQvLyBUaGlyZCBsZXZlbCBpdGVtcyBvbmx5XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSBkb3duKSB7XG5cdFx0XHRtYXJnaW46IHJlbS1jYWxjKDMwIDAgMzAgNDApO1xuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwMCUpO1xuXHRcdFx0dHJhbnNpdGlvbjogb3BhY2l0eSAuMjVzICRlYXNlLW91dC1jdWJpYywgdHJhbnNmb3JtIDBzIC4yNXM7XG5cblx0XHRcdCYuaXMtYWN0aXZlIHtcblx0XHRcdFx0b3BhY2l0eTogMTtcblx0XHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiBvcGFjaXR5IC4yNXMgJGVhc2Utb3V0LWN1YmljLCB0cmFuc2Zvcm0gMHM7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0PiBsaSB7XG5cdFx0XHQ+IGEsXG5cdFx0XHQ+IHNwYW4sXG5cdFx0XHQ+IGJ1dHRvbiB7XG5cdFx0XHRcdGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuIiwiLnNlYXJjaC1yZXN1bHRzIHtcblx0bWFyZ2luOiByZW0tY2FsYyg2MCAwKTtcblxuXHQuZGlzcGxheS01IHtcblx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAzLjc1cmVtO1xuXHRcdH1cblx0fVxuXHRcdFxuXHQuc2VhcmNoLXJlc3VsdC1jYXJkLnNwZWNzIGEge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHQmOmZvY3VzIHtcblx0XHRcdFx0b3V0bGluZTogMnB4IGRvdHRlZDtcblx0XHRcdH1cblx0fVxuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0bWFyZ2luOiByZW0tY2FsYyg5MCAwIDExNCAwKTtcblx0fVxufSIsIi5zZWFyY2gtcmVzdWx0LWNhcmQge1xuXHRwYWRkaW5nOiByZW0tY2FsYyg0MCAwKTtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICRibGFjaztcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRibGFjaztcblx0bWFyZ2luLXRvcDogLTFweDtcblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDApO1xuXHR9XG5cblx0aDIge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE1KTtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdFxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yO1xuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcblx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzNik7XG5cdFx0XHR3aWR0aDogODUlO1xuXHRcdH1cblx0fVxuXG5cdHAge1xuXHRcdGxpbmUtaGVpZ2h0OiAxNTAuNyU7XG5cdFx0Zm9udC1zaXplOiAwLjg3NXJlbTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogOTAlO1xuXHRcdH1cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0d2lkdGg6IDc1JTtcblx0XHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0XHR9XG5cdH1cblxuXHQmX19saW5rIHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cdFx0fVxuXG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0Y29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG5cdFx0fVxuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRoMiB7XG5cdFx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Jl9fdGV4dCB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0ZmxleDogMTtcblx0XHR9XG5cdH1cblxuXHQmX19pbWFnZSB7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYygxNDApO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHdpZHRoOiBwZXJjZW50YWdlKDMvMTIpO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDEuMjVyZW07XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHR9XG5cdH1cbn0iLCIuc2Vjb25kYXJ5LWNvbnRlbnQge1xuXHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBkb3duKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoODApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0PiAqIHtcblx0XHRcdHdpZHRoOiA3NSU7XG5cdFx0XHRtYXJnaW4tbGVmdDogcmVtLWNhbGMoMjQpO1xuXHRcdH1cblx0fVxuXG5cdGFzaWRlIHtcblx0XHRoMiB7XG5cdFx0XHR0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxOCk7XG5cdFx0XHR9XG5cblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNSk7XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiByZW0tY2FsYygzMyk7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ3KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuc2Vjb25kYXJ5LW1lbnUge1xuXHRoMiB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMSk7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjg7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTQpO1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdH1cblx0fVxuXG5cdHVsIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygzMCA0MCk7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyYXk7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRAaW5jbHVkZSBjbGVhcmZpeDtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHR9XG5cblx0XHRhIHtcblx0XHRcdGNvbG9yOiAkYmxhY2s7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yO1xuXHRcdFx0dGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cblx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0bGkge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuXG5cdFx0XHRhLFxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXCI7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiBjYWxjKDEwMCUgKyAwLjc1cmVtKTtcblx0XHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1nL2NoZXZyb24tcmlnaHQuc3ZnKTtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IHJpZ2h0O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtc2l6ZTogMC41cmVtO1xuXHRcdFx0XHRcdGhlaWdodDogMC41cmVtO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAuNXJlbTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0XG5cdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLmlzLWFjdGl2ZSB7XG5cdFx0XHRcdGEge1xuXHRcdFx0XHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG51bFtjbGFzc149bXVsdGlsZXZlbC1saW5rdWxdIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDA7XG5cdG1hcmdpbjogMDtcblx0bWFyZ2luLXRvcDogMS4yNXJlbTtcblx0bGkge1xuXHRcdHBhZGRpbmctbGVmdDogMDtcblx0fVxufVxuXG5zcGFuW2NsYXNzXj1jdXJyZW50YnJhbmNoXSB7XG5cdGEge1xuXHRcdGNvbG9yOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHR9XG59XG4iLCIjcmVjaXRlLWhlYWRlciB7XG5cdC5yZWNpdGUtY29udHJvbHMge1xuXHRcdGJ1dHRvbiB7XG5cdFx0XHRmaWx0ZXI6IGdyYXlzY2FsZSgxKTtcblx0XHR9XG5cdH1cbn1cbiIsIi5yZWxhdGVkIHtcblx0aDIge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdG1hcmdpbi10b3A6IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cdH1cblxuXHQuZGlzcGxheS01IHtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdGxpbmUtaGVpZ2h0OiA5NS4yJTtcblx0XHRtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg0NSk7XG5cdFx0fVxuXHR9XG5cblx0aDMge1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuXHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjQpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDMyKTtcblx0XHR9XG5cdH1cblx0XG5cdGEge1xuXHRcdCY6aG92ZXIge1xuXHRcdFx0aDMge1xuXHRcdFx0XHRjb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0Ji5pbnZlcnQge1xuXHRcdGEsXG5cdFx0aDMge1xuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHR9XG5cdH1cbn0iLCIucmVsYXRlZC1hc2lkZS1jYXJkIHtcblx0cGFkZGluZzogcmVtLWNhbGMoMzQgMCk7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYmxhY2s7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkYmxhY2s7XG5cdG1hcmdpbi10b3A6IC0xcHg7XG5cblx0Jl9fbGluayB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0YWxpZ24taXRlbXM6IGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHQmX19saW5rICYge1xuXHRcdCZfX3RpdGxle1xuXHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHR9XG5cdH1cblxuXHQmX19pbWFnZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoMTQwKTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdG1hcmdpbjogMCAyMHB4IDAgMDtcblx0XHR9XG5cdH1cblxuXHQmX190aXRsZSB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcblx0XHRmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcblx0XHRmb250LXdlaWdodDogNjAwO1xuXHRcdG1heC13aWR0aDogcmVtLWNhbGMoMjg2KTtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHRcdGZsZXg6IDE7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMjEpO1xuXHRcdFx0bGluZS1oZWlnaHQ6IHJlbS1jYWxjKDIzKTtcblx0XHR9XG5cdH1cbn0iLCIvLyBDdXN0b20gcmV2ZWFsIHN0eWxlcyBzZXBhcmF0ZSBmcm9tIGZvdW5kYXRpb25cbi8vIFNlZSBzZXR0aW5ncyBmaWxlcyBmb3IgY29tcGxldGUgcmV2ZWFsIHJ1bGVzXG5cbi5yZXZlYWwge1xuXHRwYWRkaW5nOiAwO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblxuXHQvLyBPdmVyaWRlIEZvdW5kYXRpb25zIGZ1bGwgc2NyZWVuIHN0eWxlIGF0IG1vYmlsZVxuXHRAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIG9ubHkpIHtcblx0XHR3aWR0aDogJHNpdGUtd2lkdGg7XG5cdFx0bWF4LXdpZHRoOiAkc2l0ZS1tYXgtd2lkdGg7XG5cdFx0cmlnaHQ6IGF1dG87XG5cdCAgICBsZWZ0OiBhdXRvO1xuXHQgICAgbWFyZ2luOiAwIGF1dG87XG5cdCAgICBtaW4taGVpZ2h0OiAwO1xuXHQgICAgaGVpZ2h0OiBhdXRvO1xuXHQgICAgdG9wOiA1MCUgIWltcG9ydGFudDtcblx0ICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNzAlKTtcblx0fVxuXG5cdCZfX2NvbnRlbnQge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygyMCk7XG5cdFx0Ym94LXNpemluZzogYm9yZGVyLWJveDtcblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDQwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0cGFkZGluZzogcmVtLWNhbGMoNjApO1xuXHRcdH1cblx0fVxuXG5cdCYtLXZpZGVvICYge1xuXHRcdCZfX2NvbnRlbnQge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cdH1cblxuXHQucmVzcG9uc2l2ZS1lbWJlZCB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0fVxuXHRcblx0LmNsb3NlLWJ1dHRvbiB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdHRvcDogcmVtLWNhbGMoLTQwKTtcblx0XHRyaWdodDogMDtcblx0fVxufSIsIi5yZXZlYWwtY29udGVudCB7XG5cdGRpc3BsYXk6IG5vbmU7XG59IiwiLnJvdW5kLW9mZiB7XG5cdHBhZGRpbmc6IHJlbS1jYWxjKDQwIDApO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuXG5cdEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIG9ubHkpIHtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdHBhZGRpbmc6IHJlbS1jYWxjKDYwIDApO1xuXHR9XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG5cdFx0cGFkZGluZzogcmVtLWNhbGMoODAgMCk7XG5cdH1cblxuXHRoMiB7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0fVxuXG5cdC5idXR0b24ge1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0d2lkdGg6IDUwJTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHR9XG5cdH1cbn0iLCIuc2VjdGlvbi1mZWF0dXJlcyB7XG5cdCZfX2l0ZW0ge1xuXHRcdGJvcmRlci10b3A6IDEwcHggc29saWQgZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdHBhZGRpbmctdG9wOiByZW0tY2FsYygyMCk7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNDApO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoNjApO1xuXHRcdFx0cGFkZGluZy10b3A6IHJlbS1jYWxjKDMwKTtcblx0XHR9XG5cdH1cblxuXHQmX19saW5rIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0fVxuXG5cdCZfX3RpdGxlIHtcblx0XHRtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg4KTtcblx0XHRjb2xvcjogJGJsYWNrO1xuXHRcdHRyYW5zaXRpb246ICR0cmFuc2l0aW9uLWNvbG9yO1xuXHR9XG5cblx0Jl9fbGluazpob3ZlciB7XG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0XHR9XG5cdH1cblxuXHQmX19saW5rOmhvdmVyICYge1xuXHRcdCZfX3RpdGxlIHtcblx0XHRcdGNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0fVxuXHR9XG5cblx0cCB7XG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG59IiwiLnNraXAtbGluayB7XG5cdCZfX2NvbnRhaW5lciB7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0ICAgIG1hcmdpbjogMCBhdXRvO1xuXHQgICAgd2lkdGg6ICRzaXRlLXdpZHRoO1xuXHR9XG5cblx0YSB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdGxlZnQ6IHJlbS1jYWxjKC05OTk5KTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkeWVsbG93O1xuXHQgICAgY29sb3I6ICRibGFjaztcblxuXHRcdCY6Zm9jdXMge1xuXHRcdFx0bGVmdDogMDtcblx0XHQgICAgei1pbmRleDogJHotaW5kZXgtc2tpcGxpbms7XG5cdFx0fVxuXHR9XG59IiwiLnNpdGUtc2VhcmNoIHtcblx0bWFyZ2luOiByZW0tY2FsYygyMDApIGF1dG8gcmVtLWNhbGMoNTApO1xuXHR3aWR0aDogJHNpdGUtd2lkdGg7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRtYXJnaW4tdG9wOiByZW0tY2FsYygyMDApO1xuXHR9XG5cblx0bGFiZWwge1xuXHRcdGlucHV0IHtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMTAwKTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg2MCk7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNWVtO1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG5cdFx0XHRcdGhlaWdodDogcmVtLWNhbGMoMTMwKTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYyg5MCk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbmlucHV0LmJvcmRlci1ib3R0b20ge1xuXHRib3JkZXItdG9wOiAwO1xuXHRib3JkZXItcmlnaHQ6IDA7XG5cdGJvcmRlci1sZWZ0OiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDA7XG5cdHBhZGRpbmctcmlnaHQ6IDA7XG5cdGJvcmRlci13aWR0aDogcmVtLWNhbGMoNSk7XG5cdGJvcmRlci1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRmb250LXdlaWdodDogNTAwO1xuXHRmb250LXNpemU6IHJlbS1jYWxjKDIwKTtcblx0bGV0dGVyLXNwYWNpbmc6IC0wLjAzZW07XG5cdGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuXG5cdCY6OnBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJveC1zaGFkb3c6IDBweCAycHggMHB4IDBweCByZ2JhKCRkYXJrLWdyYXksMSk7XG5cdFx0Ym9yZGVyLXRvcDogMDtcblx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0Ym9yZGVyLWxlZnQ6IDA7XG5cdFx0Ym9yZGVyLXdpZHRoOiByZW0tY2FsYyg1KTtcblx0XHRib3JkZXItY29sb3I6ICRkYXJrLWdyYXk7XG5cdH1cbn0iLCIuc2xpY2stcHJldiwgLnNsaWNrLW5leHQge1xuXHR3aWR0aDogcmVtLWNhbGMoMjApO1xuXHRoZWlnaHQ6IHJlbS1jYWxjKDE2KTtcblxuXHQmOmJlZm9yZSB7XG5cdFx0Y29udGVudDogbm9uZTtcblx0fVxuXG5cdCY6Zm9jdXMge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR5ZWxsb3c7XG5cdH1cbn1cblxuLnNsaWNrLW5leHQge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC5zdmcnKTtcblxuXHQmOmhvdmVyLFxuXHQmOmZvY3VzIHtcblx0XHRiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy4uL2ltZy9hcnJvdy1yaWdodC5zdmcnKTtcblx0fVxufVxuXG4uc2xpY2stcHJldiB7XG5cdGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2Fycm93LWxlZnQuc3ZnJyk7XG5cblx0Jjpob3Zlcixcblx0Jjpmb2N1cyB7XG5cdFx0YmFja2dyb3VuZC1pbWFnZTogdXJsKCcuLi9pbWcvYXJyb3ctbGVmdC5zdmcnKTtcblx0fVxufVxuXG5cbipbY2xhc3MqPVwiaW52ZXJ0XCJdIHtcblx0LnNsaWNrLWRvdHMge1xuXHRcdGJ1dHRvbiB7XG5cdFx0XHRib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggJHdoaXRlIGluc2V0O1xuXHRcdH1cblx0fVxufVxuLnNsaWNrLWRvdHMge1xuXHRsaSB7XG5cdFx0d2lkdGg6IDEzcHg7XG5cdFx0aGVpZ2h0OiAxM3B4O1xuXHRcdG1hcmdpbjogMCA3cHg7XG5cblx0XHRidXR0b24ge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0XHRib3gtc2hhZG93OiAwcHggMHB4IDBweCAycHggJGJsYWNrIGluc2V0O1xuXHRcdFx0dHJhbnNpdGlvbjogYm94LXNoYWRvdyAuMjVzICRlYXNlLWluLW91dC1xdWludDtcblxuXHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRjb250ZW50OiBcIlwiO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHQmOmhvdmVyLFxuXHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdGJveC1zaGFkb3c6IDBweCAwcHggMHB4IDJweCBnZXQtY29sb3IocHJpbWFyeSkgaW5zZXQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5zbGljay1hY3RpdmUge1xuXHRcdFx0YnV0dG9uIHtcblx0XHRcdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHRcdFx0XHRjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0Jjpmb2N1cyB7XG5cdFx0XHRcdFx0Ym94LXNoYWRvdzogMHB4IDBweCAwcHggMnB4IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi5zb2NpYWwtbGlua3Mge1xuXHRkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0ZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg0MCk7XG5cdFxuXHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0bWFyZ2luLXRvcDogcmVtLWNhbGMoODUpO1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0ZmxleC1kaXJlY3Rpb246IHJvdztcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdH1cblxuXHRoMiB7XG5cdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0bWFyZ2luOiByZW0tY2FsYyg1IDQwIDEyKTtcblx0fVxuXG5cdHVsIHtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdFx0bWFyZ2luLWJvdHRvbTogMDtcblxuXHRcdGxpIHtcblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0d2lkdGg6IHJlbS1jYWxjKDI0KTtcblx0XHRcdFx0aGVpZ2h0OiByZW0tY2FsYygyNCk7XG5cdFx0XHRcdHN2ZyB7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0XHQmOm5vdCg6bGFzdC1jaGlsZCkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDM3KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRzdmcge1xuXHRcdGZpbGw6ICRibGFjaztcblx0XHR0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbi1maWxsO1xuXHR9XG5cblx0YSB7XG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRzdmcge1xuXHRcdFx0XHRmaWxsOiBnZXQtY29sb3Ioc2Vjb25kYXJ5KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRzcGFuIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0bWFyZ2luLXRvcDogMS4yNXJlbTtcblx0XHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDIuNXJlbTtcblx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0fVxuXHR9XG59IiwiLndndS1zdGF0IHtcblx0cGFkZGluZzogcmVtLWNhbGMoMjUgMjApO1xuXHRib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXHRjb2xvcjogJHdoaXRlO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cblx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYygzNSAzMCk7XG5cdH1cblxuXHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRwYWRkaW5nOiByZW0tY2FsYyg1NSA0NSA2MCk7XG5cdH1cblxuXHRwIHtcblx0XHRmb250LXNpemU6IHJlbS1jYWxjKDEyKTtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxNik7XG5cdFx0fVxuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuXHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyMCk7XG5cdFx0fVxuXHR9XG5cblx0c3BhbiB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoNjApO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDAuOTQ7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDNlbTtcblx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblx0XHR9XG5cblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoOTQpO1xuXHRcdH1cblxuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcblx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTQwKTtcblx0XHR9XG5cdH1cblxuXHQmLS1tZWRpdW0tZG93bi1mbGV4IHtcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuXHRcdFx0bWF4LXdpZHRoOiByZW0tY2FsYyg0MDApO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdFx0fVxuXG5cdFx0XHRAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSBvbmx5KSB7XG5cdFx0XHRcdGZvbnQtc2l6ZTogcmVtLWNhbGMoMTYpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHNwYW4ge1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gZG93bikge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDE1KTtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMDtcblx0XHRcdH1cblxuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0gb25seSkge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDMwKTtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygxMDApO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi50YWJzIHtcblx0Ym9yZGVyOiAwO1xuXG5cdCYtY29udGVudCB7XG5cdFx0Ym9yZGVyOiAwO1xuXG5cdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdHdpZHRoOiA5MCU7XG5cdFx0fVxuXHR9XG5cblx0Ji1jb250ZW50LnZlcnRpY2FsIHtcblx0XHRib3JkZXI6IDA7XG5cdH1cblxuXHQmLXBhbmVsIHtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdGgyIHtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcblx0XHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDM1KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0aDMge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogOXB4O1xuXHRcdFx0QGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcblx0XHRcdFx0Zm9udC1zaXplOiByZW0tY2FsYygyNCk7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0cCB7XG5cdFx0XHRsaW5lLWhlaWdodDogMTUwLjclO1xuXHRcdH1cblx0fVxuXG5cdCYtdGl0bGUge1xuXHRcdG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xuXHRcdH1cblxuXHRcdD4gYSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmb250LXNpemU6IHJlbS1jYWxjKDE2KTtcblx0XHRcdGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRsaWdodC1ncmF5O1xuXHRcdFx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmxvY2s7XG5cblx0XHRcdCY6aG92ZXIsXG5cdFx0XHQmW2FyaWEtc2VsZWN0ZWQ9J3RydWUnXSB7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTtcblx0XHRcdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRcdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0XHRcdH1cblxuXHRcdFx0JlthcmlhLXNlbGVjdGVkPSd0cnVlJ106Zm9jdXMge1xuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0b3V0bGluZTogMnB4IGRvdHRlZCAkcGluaztcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0Jl9fc3RhZmYtdGl0bGVzIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblx0fVxuXHQmX19zdGFmZi1jb250ZW50IHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JheTtcblx0XHRoMyB7XG5cdFx0XHRtYXJnaW4tdG9wOiAycmVtO1xuXHRcdH1cblx0XHR0YWJsZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRcdFx0cGFkZGluZzogNHJlbTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDVweDtcblx0XHRcdGJveC1zaGFkb3c6IDVweCA1cHggMTVweCAzcHggcmdiYSgwLDAsMCwwLjIpO1xuXHRcdH1cblx0XHR0aCB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBnZXQtY29sb3IocHJpbWFyeSk7XG5cdFx0XHRjb2xvcjogJHdoaXRlO1xuXHRcdH1cblx0fVxufVxuXG4ucGFuZWwtcC0xIHtcblx0Jl9fc3RhZmYge1xuXHRcdG1hcmdpbi1ib3R0b206IDNyZW07XG5cdH1cbn0iLCIudGFnIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRwYWRkaW5nOiByZW0tY2FsYygyIDUgMCk7XG5cdGNvbG9yOiAkbmF2eTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Zm9udC1zaXplOiByZW0tY2FsYygxMik7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcblx0bGluZS1oZWlnaHQ6IDEuMzM7XG5cdGJhY2tncm91bmQ6ICRwaW5rO1xuXHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXG5cdCYud2hpdGUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblx0XHRjb2xvcjogZ2V0LWNvbG9yKHByaW1hcnkpO1xuXHR9XG5cblx0Ji5iZy1wb3N0Z3JhZCB7XG5cdFx0YmFja2dyb3VuZDogJG9yYW5nZTtcblx0fVxuXG59XG5cbmEudGFnIHtcblx0dHJhbnNpdGlvbjogJHRyYW5zaXRpb24tYmxvY2s7XG5cblx0Jjpmb2N1cyB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0XG5cdCY6aG92ZXIsXG5cdCY6Zm9jdXMge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cdFx0Y29sb3I6ICR3aGl0ZTtcblx0XHRvdXRsaW5lOiAycHggZG90dGVkICRibGFjaztcblx0fVxufSIsIi50YWctZ3JvdXAge1xuXHQ+ICoge1xuXHRcdG1hcmdpbi1yaWdodDogcmVtLWNhbGMoMTUpO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHR9XG5cdH1cbn0iLCIjdW5pc3RhdHMtd2lkZ2V0LWZyYW1lIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMCBhdXRvO1xufSIsIi5jb250ZW50LWNhcmQtcGluayB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGJhY2tncm91bmQtY29sb3I6IGdldC1jb2xvcihwcmltYXJ5KTs7XG5cdGJvcmRlcjogNXB4IHNvbGlkIGdldC1jb2xvcihwcmltYXJ5KTs7XG5cdG1hcmdpbi1ib3R0b206IDFyZW07XG5cdGE6aG92ZXIge1xuXHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0Y29sb3I6IHJnYig0NiwgNDYsIDQ2KTtcblx0fVxuXHQuaDMge1xuXHRcdGNvbG9yOiAjZmZmO1xuXHRcdGZvbnQtc2l6ZTogMi4yNXJlbTtcblx0fVxuXHQmX190ZXh0IHtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRwYWRkaW5nOiA0LjM3NXJlbSAzLjEyNXJlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXHRcdD4gKiB7XG5cdFx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHRcdH1cblxuXHR9XG5cdGEgeyBcblx0XHQmOmhvdmVyIC5jb250ZW50LWNhcmQtcGlua19fdGV4dCB7XG5cdFx0XHR0cmFuc2l0aW9uOiAwLjNzO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHRjb2xvcjogcmdiKDQ2LCA0NiwgNDYpO1xuXHRcdFx0JiBoMyB7XG5cdFx0XHRcdHRyYW5zaXRpb246IDAuM3M7XG5cdFx0XHRcdGNvbG9yOiByZ2IoNDYsIDQ2LCA0Nik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5jb250ZW50LWNhcmQtcGluay1zZWNvbmQtbGV2ZWwge1xuXHRwYWRkaW5nOiAxcmVtO1xuXHQuaDMge1xuXHRcdGZvbnQtc2l6ZTogMS4zcmVtO1xuXHR9XG5cdHAge1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0fVxufSIsIi5zdGF0dXMtY29udGFpbmVyIHtcblx0YmFja2dyb3VuZDogI2YwZjRmNTtcblx0cGFkZGluZzogNHJlbSAwO1xufVxuXG4uc2VydmljZS1yZXBvcnQge1xuXHRwYWRkaW5nOiAycmVtO1xuXHRib3JkZXItcmFkaXVzOiAzcHg7XG5cdFAge1xuXHRcdG1hcmdpbjogMDtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHRpbWcge1xuXHRcdHBhZGRpbmctcmlnaHQ6IDFyZW07XG5cdH1cblx0Ji5pc09ubGluZSB7XG5cdFx0YmFja2dyb3VuZDogI0YxRkNFQjtcblx0fVxuXHQmLmlzT2ZmbGluZSB7XG5cdFx0YmFja2dyb3VuZDogI2ZjZmFlYjtcdFxuXHR9XG5cdCYuc2VydmljZURvd24ge1xuXHRiYWNrZ3JvdW5kOiAjZjBmNGY1O1xuXHR9XG59XG5cbi5zZXJ2aWNlLWluZm8ge1xuXHRtYXJnaW46IDFyZW0gMDtcblx0YSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0ZmlsdGVyOiBjb250cmFzdCgxKTtcblx0fVxufVxuXG5cbi5zdGF0dXMtdGFibGUtd3JhcHBlciB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICBwYWRkaW5nOiA0cmVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcblx0Ym94LXNoYWRvdzogNXB4IDVweCAxNXB4IDNweCByZ2JhKDAsMCwwLDAuMik7XG59XG5cblxuICAuc3RhdHVzLXRhYmxlIHtcblx0d2lkdGg6IDEwMCU7XG5cdGRpc3BsYXk6IHRhYmxlO1xuXHRib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuXHRhIHtcblx0XHRmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuXHR9XG4gIH1cblxuXG4gIFxuICBcbi5zdGF0dXMtdGFibGUtcm93IHtcblx0ZGlzcGxheTogdGFibGUtcm93O1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgI2YwZjRmNTtcblx0Ji5oZWFkZXIge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdGJhY2tncm91bmQ6ICNmMGY0ZjU7O1xuXHR9XG4gIH1cbiAgXG5cbiAgLnN0YXR1cy10YWJsZS1jZWxsIHtcblx0cGFkZGluZzogNnB4IDEycHg7XG5cdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdCZbZGF0YS10aXRsZX49XCJTeXN0ZW1cIl0ge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdCYgYTpob3ZlciB7XG5cdFx0XHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHR9XG5cdCAgfVxuXHQgICZbZGF0YS10aXRsZX49XCJEZXNjcmlwdGlvblwiXSB7XG5cdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHQgIH1cbiAgfVxuICBcbiAgXG5cbi5pc09mZmxpbmUge1xuXHRjb2xvcjogI0MyNTcwMDtcbn1cblxuLmlzT25saW5lIHtcblx0Y29sb3I6IGdyZWVuO1xufVxuXG4uc3RhdHVzQ3VzdG9tTWVzc2FnZSB7XG5cdGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogNHJlbTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG5cdGJveC1zaGFkb3c6IDVweCA1cHggMTVweCAzcHggcmdiYSgwLDAsMCwwLjIpO1xuXHRtYXJnaW46IDJyZW0gMDtcbn1cbiIsIlxuLnByb2dzcGVjcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2YwZjRmNTsgXG4gICAgcGFkZGluZzogMmVtIDAgMWVtIDA7XG4gICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cblxuICAgIGgyLCAuaDIge1xuXHRcdGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuXHRcdEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG5cdFx0XHRmb250LXNpemU6IDEuODc1cmVtO1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG5cdFx0fVxuXHR9XG59IiwiLnNpdGUtZm9vdGVyLWN0YSB7XG4gICAgLmRpc3BsYXktNiB7XG4gICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzApO1xuICAgICAgICBsaW5lLWhlaWdodDogOTUuMiU7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg0MCk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5idXR0b24ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7XG4gICAgICAgIGJhY2tncm91bmQ6ICRuYXZ5O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2eTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogaW5oZXJpdDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuaW52ZXJ0IHtcbiAgICAgICAgaDIsIGJ1dHRvbiwgcCwgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLm1hc3RoZWFkLXNwbGl0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICYuYmctcGluayxcbiAgICAmLmJnLXJlZCxcbiAgICAmLmJnLWJsdWUge1xuICAgICAgICAuYnJlYWRjcnVtYiB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJG5hdnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdnk7XG4gICAgICAgIH1cblxuICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZ5O1xuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5icmVhZGNydW1iIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDIwJTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgdG9wOiAxMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAkbS0xIDAgMi41cmVtIDA7XG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIG1pbi1oZWlnaHQ6IDYwdmg7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcblx0XHRcdHBhZGRpbmc6IHJlbS1jYWxjKDE2NCAwIDYwKTtcblx0XHRcdG1pbi1oZWlnaHQ6IDQwdmg7XG5cdFx0fVxuICAgICAgICBcblx0XHRAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG5cdFx0XHRtaW4taGVpZ2h0OiAxMDB2aDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG5cdFx0fVxuICAgIH1cblxuICAgICZfX3RleHQge1xuXG4gICAgICAgIC5kaXNwbGF5LTEge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0ODUpO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07IFxuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDQ2KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgLmRpc3BsYXktMyB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTEzLjElO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAzbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuXG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kaXNwbGF5LTQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDgzLjElO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA0ZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDU2MCk7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiByZW0tY2FsYyg3MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogODcuNiU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjgwKTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUyMCk7XG4gICAgICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMy4xMjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDM1Nik7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTU3JTtcbiAgICAgICAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7XG4gICAgICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDMwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTAwdmg7XG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbWFzazogdXJsKCcuLi9pbWcvbWFzdGhlYWQtbWFzay5zdmcnKSBjZW50ZXIgY2VudGVyIC8gY292ZXI7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIC13ZWJraXQtbWFzay1wb3NpdGlvbjogbGVmdCBjZW50ZXI7XG4gICAgICAgICAgICAgICAgLXdlYmtpdC1tYXNrLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogNTMlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlua3Mge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiB3cmFwO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEuODc1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4xMjVyZW07XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxOC41KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2xpc3Qge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICsgKiB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzLjEyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMTAlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygzNCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICAgICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubWFzdGhlYWRfX3Njcm9sbCB7XG4gICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmludmVydCB7XG4gICAgICAgIC5tYXN0aGVhZC1zcGxpdF9fdGV4dCB7XG4gICAgICAgICAgICAuZGlzcGxheS0xIHtcbiAgICAgICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmOm5vdCguaW52ZXJ0KSAmIHtcblxuICAgICAgICAmX19pbm5lcntcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IHJlbS1jYWxjKDIwNCAwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMTUlO1xuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAtd2Via2l0LW1hc2s6IG5vbmU7XG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgICAgICAgdG9wOiByZW0tY2FsYygxMDYpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoKDExNSUgLyAyKSk7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgICAgICAgICBcbiAgICAgJjpub3QoLmludmVydCkge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxufSIsIi5mZWF0dXJlLWltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLnBsYXktdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAycHggZG90dGVkICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lLW9mZnNldDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHJlZCwgNSUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGJvdHRvbTogMTElO1xuICAgICAgICAgICAgcmlnaHQ6IDclO1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgI2ZmZmZmZjtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxMDAlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IHJlbS1jYWxjKDE3OSk7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKDAsIDAsIDAsIDAuNCkgMTQuMDYlLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgfVxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYyLjUlO1xuICAgICAgICB9XG4gICAgXG4gICAgfVxuXG4gICAgJl9fdGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogY2FsYyg4MiUgKyAwLjkzOHJlbSk7XG5cbiAgICAgICAgLmRpc3BsYXktNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjI1cmVtO1xuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmZlYXR1cmUtaW1nX190aXRsZS0tZGlzcGxheSB7XG4gICAgICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogY29udGVudHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMy43NXJlbSk7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTQzJTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcblxuICAgICAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICArICoge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg2MjcpO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2hhcGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIFxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5iZy15ZWxsb3cge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHllbGxvdztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuYmctYmx1ZSB7XG4gICAgICAgICAgICBzdmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYmx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsgLmZlYXR1cmUtaW1nX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJG5hdnk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5iZy1wdXJwbGUge1xuICAgICAgICAgICAgc3ZnIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHB1cnBsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICsgLmZlYXR1cmUtaW1nX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5iZy1uYXZ5IHtcbiAgICAgICAgICAgIHN2ZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZ5O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgKyAuZmVhdHVyZS1pbWdfX2NvbnRlbnQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgcCwgYSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZ5O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2NvbnRlbnQge1xuICAgICAgICBwYWRkaW5nOiAwLjkzOHJlbTtcbiAgICAgICAgLy8gbWF4LXdpZHRoOiByZW0tY2FsYygzNTYpO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIuNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIC8vIG1heC13aWR0aDogcmVtLWNhbGMoNDc5KTtcbiAgICAgICAgICAgIG1heC13aWR0aDogY2FsYygxMDAlIC0gMC45MzhyZW0pO1xuICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygzNTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIFxufSIsIi5kaXNjb3Zlci1tb3JlLWNvbHMge1xuXG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkO1xuXG4gICAgXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDkwKTtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE4MCk7XG4gICAgfVxuICAgIFxuICAgICYuaW52ZXJ0IHtcbiAgICAgICAgLmNvbnRlbnQtY2FyZCB7XG4gICAgICAgICAgICBoMywgcCB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgXG4gICAgLmRpc3BsYXktMixcbiAgICAuZGlzcGxheS00IHtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjA1ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA5NC42JTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNjgpXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwJTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC40KSAxNC4wNiUsIHJnYmEoMCwgMCwgMCwgMCkgMTAwJSk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTgwZGVnKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDI7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3R0b206IDFyZW07XG4gICAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgei1pbmRleDogMjtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZ2V0LWNvbG9yKHNlY29uZGFyeSk7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMTAlKTtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gLjI1cyAkZWFzZS1pbi1vdXQtcXVpbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbGVmdDogcmVtLWNhbGMoMjEpO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogcmVtLWNhbGMoMjQpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmNvbnRlbnQtY2FyZCB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wM2VtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHAge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE0NC4yJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjg2KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn0iLCIkcGFkZGluZy1zbTogcmVtLWNhbGMoNDEuNSA0OS41IDMyIDIyKTtcbiRwYWRkaW5nLXhsOiByZW0tY2FsYyg4MyA5OSA2NCA0NCk7XG5cbi5xdWljay1saW5rcyB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luOiA3LjVyZW0gMDtcbiAgICB9XG5cbiAgICAuZ3JpZC14IHtcbiAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgICAgKyAuZ3JpZC14IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fYm94IHtcbiAgICAgICAgcGFkZGluZzogJHBhZGRpbmctc207XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMjAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygxNjApO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMyk7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDI5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZzogJHBhZGRpbmcteGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190YWcge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgICAgICBwYWRkaW5nOiByZW0tY2FsYyg0IDYgMyA3KTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43NXJlbTtcbiAgICAgICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg5KTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICB9XG5cbiAgICAmX19saW5rIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMS44NzVyZW07XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIHRleHQtdW5kZXJsaW5lLW9mZnNldDogMnB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctdG9wOiA2Ny41JTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbGlzdCB7XG4gICAgICAgIGgzIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmFycm93LWxpc3Qge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxLjI1cmVtO1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnLi4vaW1nL2NoZXZyb24tcmlnaHQtYmx1ZS5zdmcnKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDAuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLnN0dWRlbnQtY3RhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS4yNXJlbTtcblxuICAgICsgKiB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICBtYXJnaW4tdG9wOiA2LjI1cmVtO1xuICAgIH1cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICBtYXJnaW4tdG9wOiA3LjI1cmVtO1xuICAgIH1cblxuICAgIC5ncmlkLXgge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAmX190ZXh0IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChzbWFsbCBkb3duKSB7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTYlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRpc3BsYXktNCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoc21hbGwgZG93bikge1xuICAgICAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjIwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDMlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDMwNCk7XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMWVtO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBibG9ja3F1b3RlIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMjIpO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygyOCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogcmVtLWNhbGMoMzgpO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg0NilcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDUwKTtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0NTcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgZmlnY2FwdGlvbiB7XG5cbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMjclO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIFxuXG4gICAgICAgICAgICBjaXRlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDFlbTtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTI3JTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDMwMik7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IDMuNzVyZW0gYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg0MDIpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg1MDIpO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5zdGF0cy1zbGlkZXIge1xuXG4gICAgLmdyaWQteCB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyMCk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoNDg5KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHAsXG4gICAgc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI5NCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS44NzVyZW07XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTYwJTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNjAlO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDRlbTtcbiAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZXIge1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjc1cmVtO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDYuMjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAuNyU7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMS4yNXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNpcmNsZSB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDYwJTtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI1JTtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMS4yNXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygxMDAlIC8gMik7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3V0bGluZTogMnB4IGRvdHRlZCAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19zbGlkZS1jb250ZW50IHtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogMTAwJTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IGNhbGMoMTAwJSAvIDIpO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAuc2xpY2stbGlzdC5kcmFnZ2FibGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcsIC5zbGljay1saXN0LmRyYWdnYWJsZTphY3RpdmU6aG92ZXIge1xuICAgICAgICBjdXJzb3I6IGdyYWJiaW5nO1xuICAgIH1cbn0iLCIuY2lyY2xlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJTtcblxuICAgICZfX2lubmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7IHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICB9XG5cbiAgICAuZGlzcGxheS0xIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjEyNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE1MCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MC43JTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMTUwKTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYygyMTIpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5pbnRyby1ibG9jayB7XG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE1MCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiByZW0tY2FsYyg4OCk7XG4gICAgfVxuXG4gICAgLmg0IHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEzMCU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wMmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgfVxuXG4gICAgLmdhbGxlcnkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tdG9wOiAzLjc1cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDkyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgIH1cbiAgICBcbiAgICAuc3RhdHMtc2xpZGVyX19zbGlkZXIge1xuICAgICAgICAuc2xpY2stbGlzdC5kcmFnZ2FibGUge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBjbGlwLXBhdGg6IGluc2V0KCAtMTAwdncgLTEwMHZ3IC0xMDB2dyAwICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNsaWNrLWxpc3QuZHJhZ2dpbmcsIC5zbGljay1saXN0LmRyYWdnYWJsZTphY3RpdmU6aG92ZXIge1xuICAgICAgICAgICAgY3Vyc29yOiBncmFiYmluZztcbiAgICAgICAgfVxuICAgIH1cbn0iLCIuaW1nLXRleHQtY29sIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAtMS44NzVyZW07XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KCdtZWRpdW0nKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDIwMCk7XG4gICAgfVxuXG4gICAgLmdyaWQteCB7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICYuaW1nLXRleHQtY29sLS1yaWdodCB7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgJi5pbWctdGV4dC1jb2wtLWxlZnQge1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIC5pbWctdGV4dC1jb2xfX2NvbCB7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtMi41cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAyLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIC5pbWctdGV4dC1jb2xfX2NvbCB7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtNi4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdDogNi4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIC5pbWctdGV4dC1jb2xfX2NvbCB7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAtOS4zNzVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDkuMzc1cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgLmltZy10ZXh0LWNvbF9fdGV4dCAge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5pbWctdGV4dC1jb2wtLXJpZ2h0IHsgXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgLmltZy10ZXh0LWNvbF9fY29sIHtcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yLjVyZW07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIC5pbWctdGV4dC1jb2xfX2NvbCB7XG4gICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IC02LjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogNi4yNXJlbTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IC02LjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgLmltZy10ZXh0LWNvbF9fY29sIHtcbiAgICAgICAgICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogLTkuMzc1cmVtO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogOS4zNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAtOS4zNzVyZW07XG4gICAgICAgICAgICAgICAgICAgICAgICAuaW1nLXRleHQtY29sX190ZXh0ICB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxLjI1cmVtO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fY29sIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICAgICZfX2ltYWdlIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLXRvcDogOTEuMSU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgfVxuICAgIFxuICAgICZfX3RleHQge1xuXG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICBcbiAgICAgICAgLmRpc3BsYXktNSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC45MzhyZW07XG4gICAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAuNyU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IGNhbGMoMTAwJSAtIDMuNzVyZW0pO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDA7XG4gICAgICAgICAgICBmaWx0ZXI6IGNvbnRyYXN0KDEpO1xuICAgICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICsgKiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMS4yNXJlbTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjg3NXJlbTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkaGVhZGVyLWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGZpbHRlcjogY29udHJhc3QoMSk7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjEyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHVsIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYuaW52ZXJ0IHtcbiAgICAgICAgICAgIGgyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB3aWR0aDogbWluLWNvbnRlbnQ7XG4gICAgICAgICAgICBtaW4td2lkdGg6IHJlbS1jYWxjKDMzMCk7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBwYWRkaW5nOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMS4yNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX3NoYXBlIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiBmaXQtY29udGVudDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgyKTtcbiAgICAgICAgXG4gICAgICAgIHN2ZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHRvcDogMzIlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICB0b3A6IDM2JTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHRvcDogMzElO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHRvcDogMjglO1xuICAgICAgICB9XG4gICAgfVxufSIsIi5ldmVudC1zbGlkZXIge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogcmVtLWNhbGMoMTQzKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTQzKTtcbiAgICB9XG5cbiAgICAmX19pbm5lciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLm1lZGl1bS03IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2xpZGVyIHtcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IGNhbGMoKDMuNzVyZW0gKyAxLjI1cmVtKSAqIDIpO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgY2xpcC1wYXRoOiBpbnNldCggLTEwMHZ3IC0xMDB2dyAtMTAwdncgMCApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zbGljay1saXN0LmRyYWdnaW5nLCAuc2xpY2stbGlzdC5kcmFnZ2FibGU6YWN0aXZlOmhvdmVyIHtcbiAgICAgICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX19pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDcwLjc2JTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmX190ZXh0IHtcblxuICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuXG4gICAgICAgIC5kaXNwbGF5LTQge1xuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIuNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHAge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNDMlO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDI0Mik7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDAuODc1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgIFxuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEuODc1cmVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGEge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICBjb2xvcjogJGJvZHktZm9udC1jb2xvcjtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYm9keS1mb250LWNvbG9yO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMjYwKTtcbiAgICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAuNjI1cmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoMzYwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX2RhdGUge1xuXG4gICAgICAgIG1hcmdpbi10b3A6IDIuNXJlbTtcblxuICAgICAgICAuZGlzcGxheS01IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4Ny42JTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIuNXJlbTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzLjEyNXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJGJsdWU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGhlYWRlci1mb250LWZhbWlseTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgICAgICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTtcblxuICAgICAgICAgICAgJi5zbWFsbCB7XG4gICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAxZW07XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjg3NXJlbTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmstYmx1ZTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4xMjVyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmLmxhcmdlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDEzMCk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTUlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEwJTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYygxODApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDIzMCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDIyNik7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwLjYyNXJlbTtcbiAgICAgICAgfVxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fbmF2IHtcbiAgICAgICAgQGluY2x1ZGUgc2xpZGVyLWFycm93cztcblxuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgIGJvdHRvbTogY2FsYygxMDAlICsgMS4yNXJlbSk7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICB9XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgcmlnaHQ6IC0yNCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgICB3aWR0aDogcmVtLWNhbGMoMTI2KTtcbiAgICAgICAgICAgIGhlaWdodDogcmVtLWNhbGMoMTI2KTtcbiAgICAgICAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5zbGljay1uZXh0IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogOXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufSIsIi5jb3Vyc2UtaGlnaGxpZ2h0cyB7XG5cbiAgICAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgfVxuXG4gICAgLmNpcmNsZSB7XG4gICAgICAgIC5kaXNwbGF5LTIge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDg3LjYlO1xuICAgICAgICB9XG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEuMjVyZW07XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygxMDAlIC0gMS4yNXJlbSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEuMjVyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogY2FsYygoMTAwJSAvIDMpIC0gMS4yNXJlbSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKCgxMDAlIC8gMykgLSAyLjVyZW0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2hhcGUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogLTMuNzVyZW07XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS43NSk7XG4gICAgICAgIFxuICAgICAgICBzdmcge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgXG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTUlO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA0OCU7XG4gICAgICAgICAgICBib3R0b206IC0zLjc1cmVtO1xuICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogNTklO1xuICAgICAgICAgICAgbGVmdDogLTglO1xuICAgICAgICAgICAgYm90dG9tOiAtNy41cmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MiU7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmRpc2NvdmVyLW1vcmUtc2xpZGVyIHtcblxuICAgIC5zbGljay1saXN0LmRyYWdnYWJsZSB7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICAgICAgICAgIGNsaXAtcGF0aDogaW5zZXQoIC0xMDB2dyAtMTAwdncgLTEwMHZ3IDAgKTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbGlzdC5kcmFnZ2luZywgLnNsaWNrLWxpc3QuZHJhZ2dhYmxlOmFjdGl2ZTpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogZ3JhYmJpbmc7XG4gICAgfVxuXG4gICAgJl9fc2xpZGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGE6Zm9jdXMge1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIG91dGxpbmUtb2Zmc2V0OiAtNHB4O1xuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIEBpbmNsdWRlIHNsaWRlci1hcnJvd3M7XG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gNjNweCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogLTIuNSU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMy41JTtcbiAgICAgICAgfVxuICAgIH1cbn0iLCIubWFzdGhlYWQtaW1hZ2Uge1xuXG4gICAgKyAqIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgIH0gICBcblxuICAgICYubWFzdGhlYWQtaW1hZ2Utc2hvcnQgJiB7XG4gICAgICAgICZfX2lubmVyIHtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQydmg7XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDQwdmg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWluLWhlaWdodDogNjB2aDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoNjApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6NzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIGFuZCAobWF4LWhlaWdodDogOTEwcHgpIHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiA3MnZoO1x0XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDUydmg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDUydmg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDU0dmg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICBcbiAgICAgICAgJl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2OC4xJTtcbiAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtIGRvd24pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRuYXZ5O1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICAgICAgZmlsdGVyOiBjb250cmFzdCgxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5kaXNwbGF5LTIge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA5NC4xJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiByZW0tY2FsYyg5MCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJl9fc2hhcGUge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcblxuICAgICAgICAgICAgJi5zaGFwZS0xIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDk1LjMlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1MHZ3O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHh4eGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogcmVtLWNhbGMoODAwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhKG1pbi13aWR0aDogMTIwMHB4KSBhbmQgKG1pbi1oZWlnaHQ6NzAwcHgpIGFuZCAobWF4LXdpZHRoOiAxNDQwcHgpIGFuZCAobWF4LWhlaWdodDogOTEwcHgpIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoOiBhdXRvO1x0XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zaGFwZS0yIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHNtYWxsIGRvd24pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU1JTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogaW5pdGlhbDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQyJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eHhsYXJnZSkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDElO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEobWluLXdpZHRoOiAxMjAwcHgpIGFuZCAobWluLWhlaWdodDo3MDBweCkgYW5kIChtYXgtd2lkdGg6IDE0NDBweCkgYW5kIChtYXgtaGVpZ2h0OiA5MTBweCkge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDIlO1xuICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IGF1dG87XHRcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59IiwiLmZlYXR1cmUtaW1nLWNvbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuXG4gICAgJl9faW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLTIgJiB7XG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiA1MCU7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1JTtcbiAgICAgICAgICAgIH1cbiAgICBcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYtLTMgJiB7XG4gICAgICAgICZfX2ltYWdlIHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEwMCUgLyAzKTtcbiAgICAgICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAzKTtcblxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNSU7XG4gICAgICAgICAgICB9XG4gICAgXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLS0yIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMi41cmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyLjVyZW07XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDg0KTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEuODc1cmVtO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi0tMyB7XG4gICAgICAgIG1hcmdpbjogMi41cmVtIDA7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICBtYXJnaW46IHJlbS1jYWxjKDgwIDApO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IHJlbS1jYWxjKDE0Nyk7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg5NSk7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLm1hc3RoZWFkLXNlYXJjaCB7XG5cbiAgICAmOm5vdCguaW52ZXJ0KSAuaW5uZXIge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogcmVtLWNhbGMoMTgwKTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IGNhbGMoNjB2aCAtIDkycHgpO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IHJlbS1jYWxjKDIwNCk7XG4gICAgICAgICAgICBtaW4taGVpZ2h0OiBjYWxjKDEwMHZoIC0gMTIuNzVyZW0pO1xuICAgICAgICB9XG4gICB9XG5cbiAgICYucHVycGxlIHtcbiAgICAgICAgaDEge1xuICAgICAgICAgICAgc3Ryb25nIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHB1cnBsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwdXJwbGU7XG4gICAgICAgIH1cbiAgIH1cblxuICAgJi5yZWQge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHJlZDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYmx1ZSB7XG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRibHVlO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgICAgICBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGJsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLnBpbmsge1xuICAgICAgICBoMSB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkcGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAgICAgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRwaW5rO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAubWFzdGhlYWQtc3BsaXRfX3RleHQge1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoNTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuODc1cmVtO1xuICAgICAgICAgICAgKyAqIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxLjI1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBcbiAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL3NlYXJjaC1pY29uLWJsYWNrLnN2Z1wiKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDQxMSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChtZWRpdW0pIHtcbiAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgd2lkdGg6IDQwdnc7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHJlbS1jYWxjKDUxNyk7XG4gICAgICAgIH1cbiAgIH1cblxuXG4gICArIC5maWx0ZXJzIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAuZmlsdGVyc19fZmFjZXRzIHtcbiAgICAgICAgICAgIG1hcmdpbjogMS4yNXJlbSAwO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludChsYXJnZSkge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDIuNXJlbSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgICAgICBib3R0b206IGNhbGMoMTAwJSArIDIuODc1cmVtKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50YWJzIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRhYnMtcGFuZWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgfVxuXG4gICAmX19pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobGFyZ2UpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogOCU7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiByZW0tY2FsYyg4MjApO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSBhbGwgYW5kIChkZXZpY2Utd2lkdGg6IDE0NDBweCkgYW5kIChkZXZpY2UtaGVpZ2h0OiA5MDBweCkgYW5kIChvcmllbnRhdGlvbjpsYW5kc2NhcGUpIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgfVxuICAgfVxuXG59IiwiLnNvY2lhbC1zbGlkZXIge1xuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IHJlbS1jYWxjKDE3NyAwIDkwIDApO1xuICAgIH1cbiAgICAuc2xpY2stbGlzdC5kcmFnZ2FibGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgICAgICAgICBjbGlwLXBhdGg6IG5vbmU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAtMC4wNGVtO1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTEuMjVyZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiByZW0tY2FsYyg3MSk7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMS44NzVyZW07XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4eGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogLTIuNXJlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5jb250ZW50LWNhcmQge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy10b3A6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cblxuICAgICAgICBpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgICAgIHJpZ2h0OiAxLjI1cmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjg3NXJlbTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeHhsYXJnZSkge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgXG4gICAgICAgIGEge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZTogMnB4IGRvdHRlZCAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG91dGxpbmUtb2Zmc2V0OiAycHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgJl9fc2xpZGUge1xuICAgICAgICBAaW5jbHVkZSBicmVha3BvaW50KG1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgICAgICB9XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQoeGxhcmdlKSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IHJlbS1jYWxjKDIzKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICZfX25hdiB7XG4gICAgICAgIEBpbmNsdWRlIHNsaWRlci1hcnJvd3M7XG4gICAgICAgIGJvdHRvbTogY2FsYygxMDAlIC0gNjNweCk7XG4gICAgICAgIEBpbmNsdWRlIGJyZWFrcG9pbnQobWVkaXVtKSB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICBib3R0b206IDI1JTtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogLTIuNSU7XG4gICAgICAgIH1cbiAgICAgICAgQGluY2x1ZGUgYnJlYWtwb2ludCh4bGFyZ2UpIHtcbiAgICAgICAgICAgIHJpZ2h0OiAtMy41JTtcbiAgICAgICAgfVxuICAgIH1cbn0iXX0= */












































